Browse Source

专利详情

zero 1 year ago
parent
commit
52e95aa23b

+ 1 - 1
src/main/java/cn/cslg/pas/common/dto/business/ClaimDetailDTO.java

@@ -4,7 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 
 @Data
-public class ClaimDetailDTO {
+public class ContentDetailDTO {
 
     @JsonProperty("text_content")
     private String textContent;

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

@@ -55,7 +55,7 @@ public class EsCountService {
             Integer topN = vo.getTopN();
 
             SearchRequest.Builder builder = new SearchRequest.Builder();
-            builder.index("patent_v1");
+            builder.index("patent");
             IEsCountBuilder iEsCountBuilder = null;
             String json = CommonService.readJsonFile("esCount.json");
             List<EsConfigVO> esConfigVOS = JSON.parseArray(json, EsConfigVO.class);

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

@@ -2,18 +2,23 @@ package cn.cslg.pas.service.business.es;
 
 import cn.cslg.pas.common.dto.PatentDetailDTO;
 import cn.cslg.pas.common.dto.PatentKinDTO;
+import cn.cslg.pas.common.dto.business.ContentDetailDTO;
+import cn.cslg.pas.common.vo.ContentVO;
 import cn.cslg.pas.common.vo.business.PatentKinDetailVO;
 import cn.cslg.pas.common.vo.business.PatentKinVO;
 import cn.cslg.pas.common.vo.business.PatentNoVO;
 import cn.cslg.pas.domain.es.FamilyPatent;
 import cn.cslg.pas.domain.es.Patent;
 import cn.cslg.pas.domain.es.PatentFamilyMessage;
+import cn.cslg.pas.domain.es.Text;
 import co.elastic.clients.elasticsearch.ElasticsearchClient;
 import co.elastic.clients.elasticsearch._types.query_dsl.Query;
 import co.elastic.clients.elasticsearch._types.query_dsl.QueryBuilders;
 import co.elastic.clients.elasticsearch.core.SearchRequest;
 import co.elastic.clients.elasticsearch.core.SearchResponse;
 import co.elastic.clients.elasticsearch.core.search.Hit;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson2.JSONObject;
 import lombok.RequiredArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -49,6 +54,16 @@ public class EsPatentService {
         for (Hit<Patent> hit : hits) {
             Patent esMess = hit.source();
             BeanUtils.copyProperties(esMess, dto);
+            ContentVO titleVO = new ContentVO();
+            String title = StringUtils.strip(JSON.toJSONString(esMess.getTitle()), "[]");
+            ContentDetailDTO titleContent = JSONObject.parseObject(title, ContentDetailDTO.class);
+            titleVO.setContent(titleContent.getTextContent());
+            dto.setTitle(titleVO);
+            ContentVO abstractVO = new ContentVO();
+            String abstractStr = StringUtils.strip(JSON.toJSONString(esMess.getAbstractStr()), "[]");
+            ContentDetailDTO abstractContent = JSONObject.parseObject(abstractStr, ContentDetailDTO.class);
+            abstractVO.setContent(abstractContent.getTextContent());
+            dto.setAbstractStr(abstractVO);
         }
         return dto;
     }

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

@@ -5,7 +5,7 @@ import cn.cslg.pas.common.dto.PatentColumnDTO;
 import cn.cslg.pas.common.dto.PatentDTO;
 //import cn.cslg.pas.common.dto.business.EsPatentFamilyDTO;
 import cn.cslg.pas.common.dto.PatentStarListDTO;
-import cn.cslg.pas.common.dto.business.ClaimDetailDTO;
+import cn.cslg.pas.common.dto.business.ContentDetailDTO;
 import cn.cslg.pas.common.dto.business.EsPatentFamilyDTO;
 import cn.cslg.pas.common.dto.business.SelectClaimDTO;
 import cn.cslg.pas.common.model.request.MapRequest;
@@ -24,16 +24,10 @@ import cn.cslg.pas.service.common.PatentStarApiService;
 import cn.cslg.pas.service.query.FormatQueryService;
 import co.elastic.clients.elasticsearch.ElasticsearchClient;
 import co.elastic.clients.elasticsearch._types.SortOrder;
-import co.elastic.clients.elasticsearch._types.aggregations.AggregateBuilders;
-import co.elastic.clients.elasticsearch._types.aggregations.Aggregation;
-import co.elastic.clients.elasticsearch._types.aggregations.AggregationBuilders;
 import co.elastic.clients.elasticsearch._types.query_dsl.*;
 import co.elastic.clients.elasticsearch.core.*;
 import co.elastic.clients.elasticsearch.core.search.Hit;
-import co.elastic.clients.elasticsearch.core.search.HitsMetadata;
-import co.elastic.clients.elasticsearch.core.search.TotalHits;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
 import lombok.RequiredArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
@@ -48,7 +42,6 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
-import java.util.stream.Collectors;
 
 
 @Service
@@ -772,9 +765,9 @@ public class EsService {
 //            dto.setClaim(JSON.toJSONString(esMess.getClaim()));
             if (esMess != null) {
                 String claim = StringUtils.strip(JSON.toJSONString(esMess.getClaim()), "[]");
-                ClaimDetailDTO claimDetailDTO = JSONObject.parseObject(claim, ClaimDetailDTO.class);
-                if (claimDetailDTO.getIfOrigin()) {
-                    dto.setClaim(claimDetailDTO.getTextContent());
+                ContentDetailDTO contentDetailDTO = JSONObject.parseObject(claim, ContentDetailDTO.class);
+                if (contentDetailDTO.getIfOrigin()) {
+                    dto.setClaim(contentDetailDTO.getTextContent());
                 }
             }
         }