Pārlūkot izejas kodu

fixed 检索统计

zero 1 gadu atpakaļ
vecāks
revīzija
8854eb2887
27 mainītis faili ar 274 papildinājumiem un 36 dzēšanām
  1. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ChildQueryBuilder.java
  2. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/CustomChildQueryBuilder.java
  3. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/DateQueryBuilder.java
  4. 4 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/IQueryBuilder.java
  5. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/KeyWordQueryBuilder.java
  6. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/MatchPhaseQueryBuilder.java
  7. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/MatchQueryBuilder.java
  8. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/NestedPersonQueryBuilder.java
  9. 16 3
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/NestedQueryBuilder.java
  10. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/NumberQueryBuilder.java
  11. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ParentQueryBuilder.java
  12. 22 3
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/PersonNameQueryBuilder.java
  13. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/PrefixQueryBuilder.java
  14. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/PrioritiesNestedQueryBuilder.java
  15. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ProductQueryBuilder.java
  16. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ProjectQueryBuilder.java
  17. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ProjectTaskQueryBuilder.java
  18. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/TermOrWildcardQueryBuilder.java
  19. 11 0
      src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/WildcardQueryBuilder.java
  20. 38 15
      src/main/java/cn/cslg/pas/service/business/MergePersonService.java
  21. 5 3
      src/main/java/cn/cslg/pas/service/business/es/EsCountService.java
  22. 1 1
      src/main/java/cn/cslg/pas/service/business/es/EsCustomFieldService.java
  23. 1 1
      src/main/java/cn/cslg/pas/service/business/es/EsPatentService.java
  24. 1 1
      src/main/java/cn/cslg/pas/service/business/es/EsScratchWordsService.java
  25. 1 1
      src/main/java/cn/cslg/pas/service/business/es/EsService.java
  26. 1 1
      src/main/java/cn/cslg/pas/service/business/es/EsValueCurveService.java
  27. 8 7
      src/main/java/cn/cslg/pas/service/query/FormatQueryService.java

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ChildQueryBuilder.java

@@ -13,6 +13,7 @@ public class ChildQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -59,4 +60,14 @@ public class ChildQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/CustomChildQueryBuilder.java

@@ -14,6 +14,7 @@ public class CustomChildQueryBuilder implements IQueryBuilder {
     private String operator = "";
     public String path = "";
     public String fieldType = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -110,4 +111,14 @@ public class CustomChildQueryBuilder implements IQueryBuilder {
     public void setFieldType(String fieldType) {
         this.fieldType = fieldType;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/DateQueryBuilder.java

@@ -16,6 +16,7 @@ public class DateQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
     public static final int YEAR = 4;
     public static final int MONTHONE = 6;
     public static final int MONTH = 7;
@@ -181,4 +182,14 @@ public class DateQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 4 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/IQueryBuilder.java

@@ -9,6 +9,7 @@ public interface IQueryBuilder {
     public String value = "";
     public String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     Query creteQuery() throws ParseException;
 
@@ -28,4 +29,7 @@ public interface IQueryBuilder {
 
     public void setPath(String path);
 
+    public Integer getProjectId();
+
+    public void setProjectId(Integer projectId);
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/KeyWordQueryBuilder.java

@@ -11,6 +11,7 @@ public class KeyWordQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() {
@@ -49,4 +50,14 @@ public class KeyWordQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/MatchPhaseQueryBuilder.java

@@ -12,6 +12,7 @@ public class MatchPhaseQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -55,4 +56,14 @@ public class MatchPhaseQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/MatchQueryBuilder.java

@@ -12,6 +12,7 @@ public class MatchQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -57,4 +58,14 @@ public class MatchQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/NestedPersonQueryBuilder.java

@@ -12,6 +12,7 @@ public class NestedPersonQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
 
     @Override
@@ -60,4 +61,14 @@ public class NestedPersonQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 16 - 3
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/NestedQueryBuilder.java

@@ -10,6 +10,7 @@ public class NestedQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() {
@@ -17,11 +18,15 @@ public class NestedQueryBuilder implements IQueryBuilder {
         if (operator.equals("=")) {
             String str = "*";
             String s = str.concat(value).concat("*");
-            Query query =  QueryBuilders.wildcard(i -> i.field(field).value(s));
-            nestedQuery = QueryBuilders.nested(z -> z.path(path).query(query));
+            Query query = QueryBuilders.wildcard(i -> i.field(field).value(s));
+            Query q1 = QueryBuilders.term(i -> i.field(path + ".project_id").value(projectId));
+            Query bool = QueryBuilders.bool(i -> i.must(query, q1));
+            nestedQuery = QueryBuilders.nested(z -> z.path(path).query(bool));
         } else {
             Query query = QueryBuilders.term(i -> i.field(field).value(value));
-            nestedQuery = QueryBuilders.nested(z -> z.path(path).query(query));
+            Query q1 = QueryBuilders.term(i -> i.field(path + ".project_id").value(projectId));
+            Query bool = QueryBuilders.bool(i -> i.must(query, q1));
+            nestedQuery = QueryBuilders.nested(z -> z.path(path).query(bool));
         }
         Query childQuery = null;
         if (path.equals("merge_applicant")) {
@@ -71,4 +76,12 @@ public class NestedQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/NumberQueryBuilder.java

@@ -13,6 +13,7 @@ public class NumberQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
     public static final String GT = ">";
     public static final String GTE = ">=";
     public static final String LT = "<";
@@ -74,4 +75,14 @@ public class NumberQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ParentQueryBuilder.java

@@ -12,6 +12,7 @@ public class ParentQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -57,4 +58,14 @@ public class ParentQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 22 - 3
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/PersonNameQueryBuilder.java

@@ -21,6 +21,7 @@ public class PersonNameQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -64,23 +65,41 @@ public class PersonNameQueryBuilder implements IQueryBuilder {
         this.value = value;
     }
 
+    public PermissionService getPermissionService() {
+        return permissionService;
+    }
+
+    public void setPermissionService(PermissionService permissionService) {
+        this.permissionService = permissionService;
+    }
+
     @Override
     public String getOperator() {
-        return null;
+        return operator;
     }
 
     @Override
     public void setOperator(String operator) {
-
+        this.operator = operator;
     }
 
     @Override
     public String getPath() {
-        return null;
+        return path;
     }
 
     @Override
     public void setPath(String path) {
+        this.path = path;
+    }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
 
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
     }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/PrefixQueryBuilder.java

@@ -12,6 +12,7 @@ public class PrefixQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -49,4 +50,14 @@ public class PrefixQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/PrioritiesNestedQueryBuilder.java

@@ -16,6 +16,7 @@ public class PrioritiesNestedQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
     public static final int YEAR = 4;
     public static final int MONTHONE = 6;
     public static final int MONTH = 7;
@@ -182,4 +183,14 @@ public class PrioritiesNestedQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ProductQueryBuilder.java

@@ -12,6 +12,7 @@ public class ProductQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -57,4 +58,14 @@ public class ProductQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ProjectQueryBuilder.java

@@ -12,6 +12,7 @@ public class ProjectQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -57,4 +58,14 @@ public class ProjectQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/ProjectTaskQueryBuilder.java

@@ -12,6 +12,7 @@ public class ProjectTaskQueryBuilder implements IQueryBuilder {
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -58,4 +59,14 @@ public class ProjectTaskQueryBuilder implements IQueryBuilder {
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/TermOrWildcardQueryBuilder.java

@@ -12,6 +12,7 @@ public class TermOrWildcardQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -57,4 +58,14 @@ public class TermOrWildcardQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 11 - 0
src/main/java/cn/cslg/pas/factorys/EsBuilderFactory/WildcardQueryBuilder.java

@@ -15,6 +15,7 @@ public class WildcardQueryBuilder implements IQueryBuilder{
     private String value = "";
     private String operator = "";
     public String path = "";
+    public Integer projectId = null;
 
     @Override
     public Query creteQuery() throws ParseException {
@@ -61,4 +62,14 @@ public class WildcardQueryBuilder implements IQueryBuilder{
     public void setPath(String path) {
         this.path = path;
     }
+
+    @Override
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    @Override
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
 }

+ 38 - 15
src/main/java/cn/cslg/pas/service/business/MergePersonService.java

@@ -88,6 +88,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 专利列表上新增发明人/权利人/申请人合并
+     *
      * @param vo
      * @return
      * @throws Exception
@@ -313,6 +314,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 专利列表上再次新增发明人/权利人/申请人合并
+     *
      * @param vo
      * @return
      * @throws Exception
@@ -469,6 +471,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 专利列表上编辑发明人/权利人/申请人合并
+     *
      * @param vo
      * @return
      * @throws Exception
@@ -581,6 +584,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 发明人/权利人/申请人合并列表查询
+     *
      * @param vo
      * @return
      */
@@ -619,6 +623,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 合并人员详情
+     *
      * @param vo
      * @return
      */
@@ -635,19 +640,20 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 获取所有发明人/权利人/申请人
+     *
      * @param vo
      * @return
      * @throws Exception
      */
     public Records getMergePerson(GetAllPersonVO vo) throws Exception {
         Integer projectId = vo.getProjectId();
-        Integer taskId = vo.getTaskId();
         Long pageNum = vo.getPageNum();
         Long pageSize = vo.getPageSize();
         Integer type = vo.getType();
         String condition = vo.getSearchQuery();
 
         List<String> conditionList = new ArrayList<>();
+        long total = 0l;
         if (StringUtils.isNotEmpty(condition)) {
             String s = condition.substring(condition.indexOf("=") + 1);
             if (s.contains("or")) {
@@ -690,12 +696,13 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
                     queries.add(childQ);
                 }
                 Query bool = QueryBuilders.bool(i -> i.must(mustQ).should(queries));
-                builder.size(99999);
+//                builder.size(99);
                 builder.query(bool);
                 //分页
-//        if (pageNum > 0 && pageSize > 0) {
-//            builder.from((pageNum.intValue() - 1) * pageSize.intValue()).size(pageSize.intValue());
-//        }
+                if (pageNum > 0 && pageSize > 0) {
+                    builder.from((pageNum.intValue() - 1) * pageSize.intValue()).size(pageSize.intValue());
+                }
+                builder.trackTotalHits(i -> i.enabled(true));
                 SearchResponse<Patent> response = client.search(builder.build(), Patent.class);
                 List<Hit<Patent>> hits = response.hits().hits();
                 Map<String, Patent> map = new HashMap<>();
@@ -760,14 +767,17 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
                 queries.add(childQ);
             }
             Query bool = QueryBuilders.bool(i -> i.should(queries));
+//            builder.size(99);
             builder.query(bool);
             //分页
-//        if (pageNum > 0 && pageSize > 0) {
-//            builder.from((pageNum.intValue() - 1) * pageSize.intValue()).size(pageSize.intValue());
-//        }
+            if (pageNum > 0 && pageSize > 0) {
+                builder.from((pageNum.intValue() - 1) * pageSize.intValue()).size(pageSize.intValue());
+            }
 
+            builder.trackTotalHits(i -> i.enabled(true));
             SearchResponse<Patent> response = client.search(builder.build(), Patent.class);
             List<Hit<Patent>> hits = response.hits().hits();
+            total = response.hits().total().value();
             Map<String, Patent> map = new HashMap<>();
             for (Hit<Patent> hit : hits) {
                 String id = hit.id();
@@ -813,7 +823,6 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         }
 
 
-
         //es申请人/权利人
         List<String> mergeList = new ArrayList<>();
         if (!CollectionUtils.isEmpty(personDTOS)) {
@@ -847,6 +856,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         List<GetAllPersonDTO> personList = new ArrayList<>();
 
         List<String> nameList = mergeList.stream().distinct().collect(Collectors.toList());
+        List<String> mergedList = new ArrayList<>();
         for (String key : nameList) {
             MergePerson person = mergePersonMapper.selectOne(new LambdaQueryWrapper<MergePerson>()
                     .eq(MergePerson::getName, key)
@@ -861,6 +871,9 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
                 dto.setCountry(person.getCountry());
                 dto.setProvince(person.getProvince());
                 dto.setAddress(person.getAddress());
+                String mergedName = person.getMergedName();
+                List<String> getNames = JSONArray.parseArray(mergedName, String.class);
+                mergedList.addAll(getNames);
                 mergePersonList.add(dto);
             } else {
                 GetAllPersonDTO dto = new GetAllPersonDTO();
@@ -875,22 +888,29 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         }
 
         if (!CollectionUtils.isEmpty(personList)) {
+            if (!CollectionUtils.isEmpty(mergedList)) {
+                for (String s : mergedList) {
+                    personList.removeIf(i -> i.getName().equals(s));
+                }
+            }
+
             List<GetAllPersonDTO> collect = personList.stream().sorted(Comparator.comparing(GetAllPersonDTO::getName)).collect(Collectors.toList());
             personDTOList.addAll(collect);
         }
 
-        List<GetAllPersonDTO> collect = personDTOList.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
+//        List<GetAllPersonDTO> collect = personDTOList.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
 
         Records records = new Records();
         records.setCurrent(pageNum);
         records.setSize(pageSize);
-        records.setData(collect);
-        records.setTotal((long) personDTOList.size());
+        records.setData(personDTOList);
+        records.setTotal(total);
         return records;
     }
 
     /**
      * 发明人/权利人/申请人合并后的名称移除
+     *
      * @param vo
      * @return
      * @throws Exception
@@ -1106,6 +1126,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 发明人/权利人/申请人合并记录删除
+     *
      * @param vo
      * @return
      * @throws Exception
@@ -1313,6 +1334,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 获取所有国家列表查询
+     *
      * @return
      */
     public List<GetAllCountryDTO> getAllCountry() {
@@ -1333,6 +1355,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 
     /**
      * 获取国内省份列表查询
+     *
      * @return
      */
     public List<GetAllCountryDTO> getAllProvince() {
@@ -1400,7 +1423,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
      * @param id
      * @return
      */
-    public Integer delSingleMerge(String id,Integer type, String name) {
+    public Integer delSingleMerge(String id, Integer type, String name) {
         String source = "";
         if (type == 0) {
             source = "if (ctx._source.merge_applicant != null) { ctx._source.merge_applicant.removeIf(item -> item.name == params.name); } if (ctx._source.merge_right_holder  != null) { ctx._source.merge_right_holder .removeIf(item -> item.name == params.name); }";
@@ -1421,7 +1444,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
     }
 
 
-    public Integer add(String id,Integer type,List<PatentMergePerson> mergePersonList) {
+    public Integer add(String id, Integer type, List<PatentMergePerson> mergePersonList) {
         Integer flag = null;
         for (PatentMergePerson mergePerson : mergePersonList) {
             Map<String, JsonData> map = new HashMap<>();
@@ -1451,7 +1474,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         return flag;
     }
 
-    public Integer edit(String id,Integer type,String oldName, String newName) {
+    public Integer edit(String id, Integer type, String oldName, String newName) {
         String source = "";
         if (type == 0) {
             source = "if (ctx._source.merge_applicant != null) {for (item in ctx._source.merge_applicant) {if(item['name']==params.oldName){item['name']=params.newName}}}" +

+ 5 - 3
src/main/java/cn/cslg/pas/service/business/es/EsCountService.java

@@ -176,7 +176,7 @@ public class EsCountService {
             treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
             //格式化检索式
             //3. 从es中检索数据
-            query = formatQueryService.EsQueryToQuery((operateNode) tree, "patent");
+            query = formatQueryService.EsQueryToQuery((operateNode) tree, "patent",projectId);
         }
 
         for (EsCountVO countVO : countVOS) {
@@ -356,7 +356,7 @@ public class EsCountService {
             treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
             //格式化检索式
             //3. 从es中检索数据
-            query = formatQueryService.EsQueryToQuery((operateNode) tree, "patent");
+            query = formatQueryService.EsQueryToQuery((operateNode) tree, "patent",projectId);
         }
         String esField = "";
         if (StringUtils.isNotEmpty(field)) {
@@ -1048,7 +1048,9 @@ public class EsCountService {
                 if (aggregate != null) {
                     dto.setNumber(aggregate.filter().docCount());
                 }
-                countDetailDTOS.add(dto);
+                if (dto.getNumber() > 0) {
+                    countDetailDTOS.add(dto);
+                }
             }
 //            if (dto.getNumber() > 0) {
 //                detailDTOS.add(dto);

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/es/EsCustomFieldService.java

@@ -357,7 +357,7 @@ public class EsCustomFieldService {
         treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
         //格式化检索式
         //3. 从es中检索数据
-        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent");
+        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent",null);
         builder.query(q);
 
         //排序

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/es/EsPatentService.java

@@ -723,7 +723,7 @@ public class EsPatentService {
         treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
         //格式化检索式
         //3. 从es中检索数据
-        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent");
+        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent",null);
 
         return q;
     }

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/es/EsScratchWordsService.java

@@ -346,7 +346,7 @@ public class EsScratchWordsService {
             treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
             //格式化检索式
             //3. 从es中检索数据
-            q = formatQueryService.EsQueryToQuery((operateNode) tree, "marking");
+            q = formatQueryService.EsQueryToQuery((operateNode) tree, "marking",null);
 
         }
         return q;

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/es/EsService.java

@@ -198,7 +198,7 @@ public class EsService {
         treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
         //格式化检索式
         //3. 从es中检索数据
-        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent");
+        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent",projectId);
         //判断同族分组
         String str = "";
         if (StringUtils.isNotEmpty(groupField)) {

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/es/EsValueCurveService.java

@@ -366,7 +366,7 @@ public class EsValueCurveService {
         treeNode tree = expressManager.getInstance().Parse(searchCondition, false);
         //格式化检索式
         //3. 从es中检索数据
-        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent");
+        Query q = formatQueryService.EsQueryToQuery((operateNode) tree, "patent",null);
         builder.query(q);
 
         List<OrderDTO> dtoList = vo.getOrderDTOList();

+ 8 - 7
src/main/java/cn/cslg/pas/service/query/FormatQueryService.java

@@ -405,7 +405,7 @@ public class FormatQueryService {
      * @return
      * @throws ParseException
      */
-    public Query EsQueryToQuery(treeNode node, String configName) throws ParseException {
+    public Query EsQueryToQuery(treeNode node, String configName, Integer projectId) throws ParseException {
         if (node == null) {
             return null;
         } else {
@@ -415,8 +415,8 @@ public class FormatQueryService {
                 treeNode Right = node.getRight();
                 //如果and or  则递归本身
                 if (operate1.gettype().equals(enuType.Logic)) {
-                    Query q1 = this.EsQueryToQuery((operateNode) Left, configName);
-                    Query q2 = this.EsQueryToQuery((operateNode) Right, configName);
+                    Query q1 = this.EsQueryToQuery((operateNode) Left, configName,projectId);
+                    Query q2 = this.EsQueryToQuery((operateNode) Right, configName,projectId);
                     switch (operate1.getShowName()) {
                         case "AND":
                             return QueryBuilders.bool(i -> i.must(q1, q2));
@@ -435,7 +435,7 @@ public class FormatQueryService {
 
                 } else {
                     if (operate1.gettype().equals(enuType.Assignment)) {
-                        return HandleValueNode(((valueNode) Left).getvalue(), operate1.getCode(), Right, configName, "", "");
+                        return HandleValueNode(((valueNode) Left).getvalue(), operate1.getCode(), Right, configName, "", "",projectId);
                     } else {
                         return null;
                     }
@@ -446,7 +446,7 @@ public class FormatQueryService {
         }
     }
 
-    public Query HandleValueNode(String field, String operate, treeNode valeNode, String configName,String op,String dp) throws ParseException {
+    public Query HandleValueNode(String field, String operate, treeNode valeNode, String configName,String op,String dp,Integer projectId) throws ParseException {
         if (valeNode == null) {
             return null;
         } else {
@@ -457,8 +457,8 @@ public class FormatQueryService {
                     dp = "<=";
                 }
                 if (operate1.gettype().equals(enuType.Logic)) {
-                    Query q1 = this.HandleValueNode(field, operate, ((treeNode) valeNode).getLeft(), configName,op,"");
-                    Query q2 = this.HandleValueNode(field, operate, (treeNode) valeNode.getRight(), configName,"",dp);
+                    Query q1 = this.HandleValueNode(field, operate, ((treeNode) valeNode).getLeft(), configName,op,"",projectId);
+                    Query q2 = this.HandleValueNode(field, operate, (treeNode) valeNode.getRight(), configName,"",dp,projectId);
                     switch (operate1.getShowName()) {
                         case "AND":
                             return QueryBuilders.bool(i -> i.must(q1, q2));
@@ -496,6 +496,7 @@ public class FormatQueryService {
                     }
                     iQueryBuilder.setOperator(operate);
                     iQueryBuilder.setValue(((valueNode) valeNode).getvalue());
+                    iQueryBuilder.setProjectId(projectId);
                     return iQueryBuilder.creteQuery();
                 } else {
                     return null;