瀏覽代碼

合并/外部专利

zero 1 年之前
父節點
當前提交
2c20c79342

+ 48 - 0
src/main/java/cn/cslg/pas/common/dto/ExternalLegalStatusDTO.java

@@ -0,0 +1,48 @@
+package cn.cslg.pas.common.dto;
+
+import lombok.Data;
+
+@Data
+public class ExternalLegalStatusDTO {
+    private Long ID;
+    private String JUANQI;
+    private String PatentType;
+    private String LegalDate;
+    private String LegalStatus;
+    private String LegalStatusInfo;
+    private String LegalCode;
+    private String VOL;
+    private String NUM;
+    private String PAG;
+    private String IPC;
+    private String SHENQINGH;
+    private String SHENQINGR;
+    private String SHENQINGGBR;
+    private String SHOUQUANGGR;
+    private String WUXIAOXGJDH;
+    private String WUXIAOXGJDR;
+    private String ZHONGZHIR;
+    private String FANGQISXR;
+    private String YUANMINGC;
+    private String YUANGONGGR;
+    private String BIANGENGSXCODE;
+    private String BIANGENGSX;
+    private String BIANGENGQ;
+    private String BIANGENGH;
+    private String DENGJISXR;
+    private String HETONGBAH;
+    private String RANGYUR;
+    private String SHOURANGR;
+    private String ZHUANLIMC;
+    private String XUKEZL;
+    private String BEIANRQ;
+    private String BIANGENGR;
+    private String JIECHUR;
+    private String DENGJIH;
+    private String CHUZHIR;
+    private String ZHIQUANR;
+    private String SHOUJIANR;
+    private String WENJIANMC;
+    private String DETAIL;
+
+}

+ 2 - 0
src/main/java/cn/cslg/pas/common/dto/GetAllPersonDTO.java

@@ -1,10 +1,12 @@
 package cn.cslg.pas.common.dto;
 package cn.cslg.pas.common.dto;
 
 
 import lombok.Data;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 
 
 import java.util.List;
 import java.util.List;
 
 
 @Data
 @Data
+@EqualsAndHashCode
 public class GetAllPersonDTO {
 public class GetAllPersonDTO {
 
 
     private String name;
     private String name;

+ 3 - 2
src/main/java/cn/cslg/pas/controller/outApi/PatentStarController.java

@@ -1,6 +1,7 @@
 package cn.cslg.pas.controller.outApi;
 package cn.cslg.pas.controller.outApi;
 
 
 import cn.cslg.pas.common.core.base.Constants;
 import cn.cslg.pas.common.core.base.Constants;
+import cn.cslg.pas.common.dto.ExternalLegalStatusDTO;
 import cn.cslg.pas.common.dto.InnerPatentPdfDTO;
 import cn.cslg.pas.common.dto.InnerPatentPdfDTO;
 import cn.cslg.pas.common.dto.PatentColumnDTO;
 import cn.cslg.pas.common.dto.PatentColumnDTO;
 import cn.cslg.pas.common.dto.PatentStarListDTO;
 import cn.cslg.pas.common.dto.PatentStarListDTO;
@@ -152,7 +153,7 @@ public class PatentStarController {
     @GetMapping("/getLegalStatus")
     @GetMapping("/getLegalStatus")
     @Operation(summary = "外部获取法律状态")
     @Operation(summary = "外部获取法律状态")
     public Response getLegalStatus(String appNo) throws IOException {
     public Response getLegalStatus(String appNo) throws IOException {
-        String legalStatus = patentStarApiService.getLegalStatus(appNo);
-        return Response.success(legalStatus);
+        List<ExternalLegalStatusDTO> statusDTOS = patentStarApiService.getLegalStatus(appNo);
+        return Response.success(statusDTOS);
     }
     }
 }
 }

+ 10 - 4
src/main/java/cn/cslg/pas/service/business/MergePersonService.java

@@ -427,7 +427,6 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         List<GetEsAllPersonDTO> personDTOS = new ArrayList<>();
         List<GetEsAllPersonDTO> personDTOS = new ArrayList<>();
         for (Hit<Patent> hit : hits) {
         for (Hit<Patent> hit : hits) {
             Patent esMess = hit.source();
             Patent esMess = hit.source();
-            PersonAddress applicantAddr = null;
             GetEsAllPersonDTO personDTO = new GetEsAllPersonDTO();
             GetEsAllPersonDTO personDTO = new GetEsAllPersonDTO();
             personDTO.setApplicantAddr(esMess.getApplicantAddr());
             personDTO.setApplicantAddr(esMess.getApplicantAddr());
             personDTO.setRightHolderAddr(esMess.getRightHolderAddr());
             personDTO.setRightHolderAddr(esMess.getRightHolderAddr());
@@ -480,7 +479,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
                     for (String s : rightHolder) {
                     for (String s : rightHolder) {
                         GetAllPersonDTO dto = new GetAllPersonDTO();
                         GetAllPersonDTO dto = new GetAllPersonDTO();
                         dto.setName(s);
                         dto.setName(s);
-                        dto.setType(0);
+                        dto.setType(1);
                         if (StringUtils.isNotEmpty(rightHolderAddr.getCountry())) {
                         if (StringUtils.isNotEmpty(rightHolderAddr.getCountry())) {
                             dto.setCountry(rightHolderAddr.getCountry());
                             dto.setCountry(rightHolderAddr.getCountry());
                         }
                         }
@@ -494,7 +493,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
                     for (String s : rightHolder) {
                     for (String s : rightHolder) {
                         GetAllPersonDTO dto = new GetAllPersonDTO();
                         GetAllPersonDTO dto = new GetAllPersonDTO();
                         dto.setName(s);
                         dto.setName(s);
-                        dto.setType(0);
+                        dto.setType(1);
                         rightDTOS.add(dto);
                         rightDTOS.add(dto);
                     }
                     }
                 }
                 }
@@ -504,13 +503,19 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         //申请人和权利人相同的去除
         //申请人和权利人相同的去除
         if (!CollectionUtils.isEmpty(applicantDTOS) && !CollectionUtils.isEmpty(rightDTOS)) {
         if (!CollectionUtils.isEmpty(applicantDTOS) && !CollectionUtils.isEmpty(rightDTOS)) {
             for (GetAllPersonDTO applicantDTO : applicantDTOS) {
             for (GetAllPersonDTO applicantDTO : applicantDTOS) {
-                rightDTOS.removeIf(rightDTO -> applicantDTO.getName().equals(rightDTO.getName()));
+                rightDTOS.removeIf(rightDTO -> rightDTO.getName().equals(applicantDTO.getName()));
             }
             }
         }
         }
         //装载在同一个集合
         //装载在同一个集合
         personDTOList.addAll(applicantDTOS);
         personDTOList.addAll(applicantDTOS);
         personDTOList.addAll(rightDTOS);
         personDTOList.addAll(rightDTOS);
 
 
+        if (!CollectionUtils.isEmpty(personDTOList)) {
+            Set<GetAllPersonDTO> set = new TreeSet<>(Comparator.comparing(GetAllPersonDTO::getName));
+            set.addAll(personDTOList);
+            personDTOList = new ArrayList<>(set);
+        }
+
         //发明人
         //发明人
         List<GetAllPersonDTO> inventorDTOS = new ArrayList<>();
         List<GetAllPersonDTO> inventorDTOS = new ArrayList<>();
         if (!CollectionUtils.isEmpty(personDTOS)) {
         if (!CollectionUtils.isEmpty(personDTOS)) {
@@ -529,6 +534,7 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
 //        IPage<MergePerson> page = new Page<>(vo.getPageNum(), vo.getPageSize());
 //        IPage<MergePerson> page = new Page<>(vo.getPageNum(), vo.getPageSize());
         LambdaQueryWrapper<MergePerson> wrapper = new LambdaQueryWrapper<MergePerson>()
         LambdaQueryWrapper<MergePerson> wrapper = new LambdaQueryWrapper<MergePerson>()
                 .eq(MergePerson::getProjectId, vo.getProjectId())
                 .eq(MergePerson::getProjectId, vo.getProjectId())
+                .eq(MergePerson::getType, type)
                 .eq(StringUtils.isNotEmpty(vo.getName()), MergePerson::getName, vo.getName())
                 .eq(StringUtils.isNotEmpty(vo.getName()), MergePerson::getName, vo.getName())
                 .orderByDesc(MergePerson::getCreateTime);
                 .orderByDesc(MergePerson::getCreateTime);
 //        IPage<MergePerson> record = mergePersonMapper.selectPage(page, wrapper);
 //        IPage<MergePerson> record = mergePersonMapper.selectPage(page, wrapper);

+ 7 - 2
src/main/java/cn/cslg/pas/service/common/PatentStarApiService.java

@@ -1151,7 +1151,12 @@ public class PatentStarApiService {
         return this.getPictureApi(appNo);
         return this.getPictureApi(appNo);
     }
     }
 
 
-    public String getLegalStatus(String appNo) {
-        return this.getCnLegalApi(appNo);
+    public List<ExternalLegalStatusDTO> getLegalStatus(String appNo) {
+        List<ExternalLegalStatusDTO> dtos = new ArrayList<>();
+        String cnLegalApi = this.getCnLegalApi(appNo);
+        if (StringUtils.isNotEmpty(cnLegalApi)) {
+            dtos = JSONArray.parseArray(cnLegalApi, ExternalLegalStatusDTO.class);
+        }
+        return dtos;
     }
     }
 }
 }