|
@@ -719,7 +719,8 @@ public class EsCustomFieldService {
|
|
|
builder.sort(sortOptionsBuilder -> sortOptionsBuilder
|
|
|
.field(fieldSortBuilder -> fieldSortBuilder
|
|
|
.field("custom_field.create_time").order(SortOrder.Desc)));
|
|
|
- Query queries = this.getQueries(patentNo, innerFields, projectId, taskId);
|
|
|
+ Query queries = this.getQueries(patentNo,innerFields,projectId,taskId);
|
|
|
+
|
|
|
builder.size(999);
|
|
|
builder.query(queries);
|
|
|
SearchResponse<Patent> response = client.search(builder.build(), Patent.class);
|
|
@@ -730,19 +731,21 @@ public class EsCustomFieldService {
|
|
|
List<Hit<Patent>> hits = response.hits().hits();
|
|
|
for (Hit<Patent> hit : hits) {
|
|
|
Patent patent = hit.source();
|
|
|
- ESCustomField esCustomField = patent.getESCustomField();
|
|
|
- ESCustomField esCustomField1 = esCustomFields.stream()
|
|
|
- .filter(item -> item.getField().equals(esCustomField.getField()) && item.getFieldType().equals(esCustomField.getFieldType()))
|
|
|
- .findFirst().orElse(null);
|
|
|
-
|
|
|
- if (esCustomField1 == null) {
|
|
|
- esCustomFields.add(esCustomField);
|
|
|
- InnerPatentFieldsVO innerPatentFieldsVO = new InnerPatentFieldsVO();
|
|
|
- innerPatentFieldsVO.setField(esCustomField.getField());
|
|
|
- innerPatentFieldsVO.setFieldType(esCustomField.getFieldType());
|
|
|
- List<FieldValueVO> fieldValueVOS = this.getCustomFieldValues(esCustomField.getFieldType(), esCustomField.getFieldValue());
|
|
|
- innerPatentFieldsVO.setFieldValueVOS(fieldValueVOS);
|
|
|
- innerPatentFieldsVOS.add(innerPatentFieldsVO);
|
|
|
+ if(patent.getESCustomField()!=null) {
|
|
|
+ ESCustomField esCustomField = patent.getESCustomField();
|
|
|
+ ESCustomField esCustomField1 = esCustomFields.stream()
|
|
|
+ .filter(item -> item.getField().equals(esCustomField.getField()) && item.getFieldType().equals(esCustomField.getFieldType()))
|
|
|
+ .findFirst().orElse(null);
|
|
|
+
|
|
|
+ if (esCustomField1 == null) {
|
|
|
+ esCustomFields.add(esCustomField);
|
|
|
+ InnerPatentFieldsVO innerPatentFieldsVO = new InnerPatentFieldsVO();
|
|
|
+ innerPatentFieldsVO.setField(esCustomField.getField());
|
|
|
+ innerPatentFieldsVO.setFieldType(esCustomField.getFieldType());
|
|
|
+ List<FieldValueVO> fieldValueVOS = this.getCustomFieldValues(esCustomField.getFieldType(), esCustomField.getFieldValue());
|
|
|
+ innerPatentFieldsVO.setFieldValueVOS(fieldValueVOS);
|
|
|
+ innerPatentFieldsVOS.add(innerPatentFieldsVO);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -772,15 +775,14 @@ public class EsCustomFieldService {
|
|
|
Query q1 = QueryBuilders.term(t -> t.field("custom_field.project_id").value(projectId));
|
|
|
Query q2 = QueryBuilders.term((t -> t.field("custom_field.field").value(filedId)));
|
|
|
Query q3 = QueryBuilders.term(t -> t.field("custom_field.field_type").value(fieldType));
|
|
|
+ Query q5 =QueryBuilders.term(t->t.field("custom_field.if_new").value(1));
|
|
|
Query fQ =null;
|
|
|
if (taskId != null) {
|
|
|
Query q4 =QueryBuilders.term(t -> t.field("custom_field.task_id").value(taskId));
|
|
|
- fQ = QueryBuilders.bool(i -> i.must(q1, q2, q3,q4));
|
|
|
- queries.add(fQ);
|
|
|
+ fQ = QueryBuilders.bool(i -> i.must(q1, q2, q3,q4,q5));
|
|
|
}
|
|
|
else {
|
|
|
- fQ = QueryBuilders.bool(i -> i.must(q1, q2, q3));
|
|
|
- queries.add(fQ);
|
|
|
+ fQ = QueryBuilders.bool(i -> i.must(q1, q2, q3,q5));
|
|
|
}
|
|
|
queries.add(fQ);
|
|
|
}
|