public List<ClanEntity> search(String name, int minMembers, int maxMembers, int minTrophies, boolean onlyJoinable) {
try (Session session = session()) {
CriteriaBuilder builder = session.getCriteriaBuilder();
CriteriaQuery<ClanEntity> query = builder.createQuery(ClanEntity.class);
Root<ClanEntity> root = query.from(ClanEntity.class);
query.select(root);
if (name != null && !name.isEmpty()) {
query.where(builder.like(root.get("name"), "%" + name + "%"));
}
// TODO: Check min and max members
if (minTrophies != 0) {
query.where(builder.greaterThan(root.get("score"), minTrophies));
}
if (onlyJoinable) {
query.where(builder.equal(root.get("type"), builder.literal(ClanType.OPEN)));
// TODO: Check members
}
return session.createQuery(query).getResultList();
}
}
ClanService.java 文件源码
java
阅读 32
收藏 0
点赞 0
评论 0
项目:cr-private-server
作者:
评论列表
文章目录