Commit 03c341ac by zhangkb

修改查询标签接口

parent 09ad151b
......@@ -222,10 +222,8 @@ public class TagService {
page.setData(new ArrayList<ExtTag>());
page.setTotal(0L);
if(!companyOrgIdList.isEmpty()) {
Criteria andCriterias = createPersonalDimensionTagCriteria(userName, path, companyOrgIdList);
if (StringUtils.isNotBlank(keyword) && !"*".equals(keyword)) {
andCriterias.andOperator(createKeywordRegexQuery(Arrays.asList("name", "nameEn", "desc"), keyword));
}
Criteria andCriterias = createPersonalDimensionTagCriteria(userName, path,
companyOrgIdList, keyword);
Query q = createPageQuery(page, andCriterias);
List<Tag> tags = mongoOperations.find(q, Tag.class);
long count = mongoOperations.count(q, Tag.class);
......@@ -256,10 +254,8 @@ public class TagService {
page.setTotal(0L);
List<String> companyOrgIdList = this.getCompanyOrgIdListByUserOrgIds(orgIds);
if(!companyOrgIdList.isEmpty()) {
Criteria andCriterias = createPersonalTagCriteria(userName, orgIds, companyOrgIdList, path);
if (StringUtils.isNotBlank(keyword) && !"*".equals(keyword)) {
andCriterias.andOperator(createKeywordRegexQuery(Arrays.asList("name", "nameEn", "desc"), keyword));
}
Criteria andCriterias = createPersonalTagCriteria(userName, orgIds,
companyOrgIdList, path, keyword);
Query q = createPageQuery(page, andCriterias);
List<Tag> tags = mongoOperations.find(q, Tag.class);
......@@ -468,7 +464,7 @@ public class TagService {
}
//拼接根据机构id查询个人维度标签
private Criteria createPersonalDimensionTagCriteria(String userName,
String path, List<String> companyOrgIdList)throws TagNotExistException {
String path, List<String> companyOrgIdList,String keyword)throws TagNotExistException {
Criteria criteriaOr = new Criteria();
List<Criteria> criteriaOrList = new ArrayList<>();
Criteria criteria = Criteria.where("tagType").is(Constants.TAG_PERSONAL_TYPE)
......@@ -478,7 +474,12 @@ public class TagService {
criteriaOrList.add(criteriaPro);
}
criteriaOr.orOperator(criteriaOrList.toArray(new Criteria[0]));
criteria.andOperator(criteriaOr);
if (StringUtils.isNotBlank(keyword) && !"*".equals(keyword)) {
criteria.andOperator(criteriaOr,
createKeywordRegexQuery(Arrays.asList("name", "nameEn", "desc"), keyword));
}else {
criteria.andOperator(criteriaOr);
}
if (StringUtils.isNotBlank(path)) {
criteria.and("path").regex("^"+path);
}
......@@ -509,7 +510,7 @@ public class TagService {
}
//拼接个人标签查询条件
private Criteria createPersonalTagCriteria(String userName, List<String> orgIds,
List<String> companyOrgIdList, String path) throws TagNotExistException{
List<String> companyOrgIdList, String path,String keyword) throws TagNotExistException{
Criteria criteria = Criteria.where("tagType").is(Constants.TAG_PERSONAL_TYPE);
Criteria criteriaOr = new Criteria();
List<Criteria> criteriaOrList = new ArrayList<>();
......@@ -529,7 +530,12 @@ public class TagService {
criteriaOrList.add(criteriaUser);
}
criteriaOr.orOperator(criteriaOrList.toArray(new Criteria[0]));
criteria.andOperator(criteriaOr);
if (StringUtils.isNotBlank(keyword) && !"*".equals(keyword)) {
criteria.andOperator(criteriaOr,
createKeywordRegexQuery(Arrays.asList("name", "nameEn", "desc"), keyword));
}else {
criteria.andOperator(criteriaOr);
}
return criteria;
}
//拼接查询当前系统标签子标签条件
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment