问题描述
如何使用搜索词 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 (将#修改为@)