ObjectBox 查询 ToOne 和 ToMany With Or 包含搜索词

问题描述

如何使用搜索词 by or 和 contains 来查询 ToOne 和 ToMany

@Entity
public class Purchase {

@Id
public long id;
public float total;
public Date createdOn;

public  ToOne<supplier> supplier;
public ToMany<Item> items;

想知道如何查询包含“搜索词”的purchase.supplier.name 或supplier.company 或purchase.items.name 或items.barcode 尝试了以下但不起作用。

query.link(Purchase_.items).contains(Item_.name,mappedParam.get("search"))
                      .or().contains(Item_.barcode,mappedParam.get("search"));
query.link(Purchase_.supplier).contains(supplier_.name,mappedParam.get("search"))
                        .or().contains(supplier_.company,mappedParam.get("search"))
                        .or().contains(supplier_.city,mappedParam.get("search"))
                        .or().contains(supplier_.country,mappedParam.get("search"));

List<Purchase> objects = query.build().find(offsetLong,limitLong);

也试过这个

 query.link(Purchase_.items).contains(Item_.name,mappedParam.get("search"))
                        .or().contains(Item_.barcode,mappedParam.get("search"))
.or().link(Purchase_.supplier).contains(supplier_.name,mappedParam.get("search"));

以上返回空结果,有什么想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)