zero 1 éve
szülő
commit
422bbbae03

+ 4 - 4
src/main/java/cn/cslg/pas/common/config/WebSocketConfig.java

@@ -6,8 +6,8 @@ import org.springframework.web.socket.server.standard.ServerEndpointExporter;
 
 @Configuration
 public class WebSocketConfig {
-//    @Bean
-//    public ServerEndpointExporter serverEndpointExporter() {
-//        return new ServerEndpointExporter();
-//    }
+    @Bean
+    public ServerEndpointExporter serverEndpointExporter() {
+        return new ServerEndpointExporter();
+    }
 }

+ 7 - 0
src/main/java/cn/cslg/pas/controller/PatentController.java

@@ -96,6 +96,13 @@ public class PatentController {
         return Response.success(pdfDTOS);
     }
 
+    @GetMapping("/getFigure")
+    @Operation(summary = "内部获取附图")
+    public Response getFigure(String appNo) throws IOException {
+        List<String> figures = patentService.getFigure(appNo);
+        return Response.success(figures);
+    }
+
     @Operation(summary = "根据专利号查询同族")
     @PostMapping("/selectKinByPatentNo")
     public Response selectKinByPatentNo(@RequestBody PatentKinVO vo) throws Exception {

+ 7 - 0
src/main/java/cn/cslg/pas/controller/outApi/PatentStarController.java

@@ -132,4 +132,11 @@ public class PatentStarController {
         List<InnerPatentPdfDTO> pdfDTOS = patentStarApiService.getExternalTextPdf(appNo,rowApplicationNo);
         return Response.success(pdfDTOS);
     }
+
+    @GetMapping("/getExternalFigure")
+    @Operation(summary = "外部获得附图")
+    public Response getExternalFigure(String appNo) throws IOException {
+        List<String> figures = patentStarApiService.getExternalFigure(appNo);
+        return Response.success(figures);
+    }
 }

+ 64 - 9
src/main/java/cn/cslg/pas/service/business/MergePersonService.java

@@ -345,18 +345,73 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
             personDTOS.add(personDTO);
         }
 
-        //装载地址
+        //todo 装载地址待定
         List<GetAllPersonDTO> personDTOList = new ArrayList<>();
+        List<GetAllPersonDTO> applicantDTOS = new ArrayList<>();
+        for (GetEsAllPersonDTO personDTO : personDTOS) {
+            PersonAddress applicantAddr = personDTO.getApplicantAddr();
+            if (ObjectUtil.isNotEmpty(applicantAddr)) {
+                List<String> applicant = personDTO.getApplicant();
+                for (String s : applicant) {
+                    GetAllPersonDTO dto = new GetAllPersonDTO();
+                    dto.setName(s);
+                    dto.setType(0);
+                    if (StringUtils.isNotEmpty(applicantAddr.getCountry())) {
+                        dto.setCountry(applicantAddr.getCountry());
+                    }
+                    if (StringUtils.isNotEmpty(applicantAddr.getAddress())) {
+                        dto.setAddress(applicantAddr.getAddress());
+                    }
+                    applicantDTOS.add(dto);
+                }
+            } else {
+                List<String> applicant = personDTO.getApplicant();
+                for (String s : applicant) {
+                    GetAllPersonDTO dto = new GetAllPersonDTO();
+                    dto.setName(s);
+                    dto.setType(0);
+                    applicantDTOS.add(dto);
+                }
+            }
+        }
+
+        List<GetAllPersonDTO> rightDTOS = new ArrayList<>();
         for (GetEsAllPersonDTO personDTO : personDTOS) {
-            List<String> applicant = personDTO.getApplicant();
-            for (String s : applicant) {
+            PersonAddress rightHolderAddr = personDTO.getRightHolderAddr();
+            if (ObjectUtil.isNotEmpty(rightHolderAddr)) {
+                List<String> rightHolder = personDTO.getRightHolder();
+                for (String s : rightHolder) {
+                    GetAllPersonDTO dto = new GetAllPersonDTO();
+                    dto.setName(s);
+                    dto.setType(0);
+                    if (StringUtils.isNotEmpty(rightHolderAddr.getCountry())) {
+                        dto.setCountry(rightHolderAddr.getCountry());
+                    }
+                    if (StringUtils.isNotEmpty(rightHolderAddr.getAddress())) {
+                        dto.setAddress(rightHolderAddr.getAddress());
+                    }
+                    rightDTOS.add(dto);
+                }
+            } else {
+                List<String> rightHolder = personDTO.getRightHolder();
+                for (String s : rightHolder) {
+                    GetAllPersonDTO dto = new GetAllPersonDTO();
+                    dto.setName(s);
+                    dto.setType(0);
+                    rightDTOS.add(dto);
+                }
+            }
+        }
+
+        List<GetAllPersonDTO> inventorDTOS = new ArrayList<>();
+        for (GetEsAllPersonDTO personDTO : personDTOS) {
+            List<String> inventor = personDTO.getInventor();
+            for (String s : inventor) {
                 GetAllPersonDTO dto = new GetAllPersonDTO();
                 dto.setName(s);
-                dto.setCountry(personDTO.getCountry());
-                dto.setAddress(personDTO.getAddress());
-                personDTOList.add(dto);
+                dto.setType(2);
+                inventorDTOS.add(dto);
             }
-
         }
 
         List<String> appAndRightList = new ArrayList<>();
@@ -385,8 +440,8 @@ public class MergePersonService extends ServiceImpl<MergePersonMapper, MergePers
         }
         applicantList.removeAll(applicantMergeList);
         inventorList.removeAll(inventorMergeList);
-        List<GetAllPersonDTO> applicantDTOS = new ArrayList<>();
-        List<GetAllPersonDTO> inventorDTOS = new ArrayList<>();
+//        List<GetAllPersonDTO> applicantDTOS = new ArrayList<>();
+//        List<GetAllPersonDTO> inventorDTOS = new ArrayList<>();
         for (String applicant : applicantList) {
             GetAllPersonDTO dto = new GetAllPersonDTO();
             dto.setName(applicant);

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

@@ -170,6 +170,19 @@ public class EsPatentService {
         }
         return list;
     }
+
+    /**
+     * 获取附图
+     * @param appNo
+     * @return
+     */
+    public List<String> getFigure(String appNo) {
+        List<String> list = new ArrayList<>();
+        String pictureFormat = FormatUtil.getPictureFormat(appNo);
+        list.add(pictureFormat);
+        return list;
+    }
+
     /**
      * 根据专利号查询出同族专利列表
      *

+ 24 - 3
src/main/java/cn/cslg/pas/service/common/PatentStarApiService.java

@@ -1056,9 +1056,9 @@ public class PatentStarApiService {
             if (StringUtils.isNotEmpty(pdfUrlStr)) {
                 if (pdfUrlStr.contains("|http")) {  //若包含公开和授权两个pdf
                     String[] pdfUrlArr = pdfUrlStr.split("\\|http");
-                    pdfUrl1 = pdfUrlArr[0].substring(pdfUrlArr[0].indexOf("http"), pdfUrlArr[0].indexOf("?"));
+                    pdfUrl1 = pdfUrlArr[0].substring(pdfUrlArr[0].indexOf("http"), pdfUrlArr[0].indexOf("|"));
                     pdfUrlArr[1] = "http" + pdfUrlArr[1];
-                    pdfUrl2 = pdfUrlArr[1].substring(pdfUrlArr[1].indexOf("http"), pdfUrlArr[1].indexOf("?"));
+                    pdfUrl2 = pdfUrlArr[1].substring(pdfUrlArr[1].indexOf("http"), pdfUrlArr[1].indexOf("|"));
 
                     if (pdfUrl1.contains("0A_CN_0.pdf")) {
                         String guid1 = FormatUtil.getPDFFormat(appNo, 0);
@@ -1093,7 +1093,8 @@ public class PatentStarApiService {
                         }
                     }
                 } else {  //若只有一个
-                    pdfUrl1 = pdfUrlStr.substring(pdfUrlStr.indexOf("http"), pdfUrlStr.indexOf("?"));
+                    pdfUrl1 = pdfUrlStr.substring(pdfUrlStr.indexOf("http"));
+//                    pdfUrl1 = pdfUrlStr.substring(pdfUrlStr.indexOf("http"), pdfUrlStr.indexOf("?"));
                     if (pdfUrl1.contains("0A_CN_0.pdf")) {
                         String guid1 = FormatUtil.getPDFFormat(appNo, 0);
                         if (StringUtils.isNotEmpty(guid1)) {
@@ -1116,4 +1117,24 @@ public class PatentStarApiService {
         }
         return list;
     }
+
+    /**
+     * 获取附图
+     * @param appNo
+     * @return
+     */
+    public List<String> getExternalFigure(String appNo) throws IOException {
+        List<String> list = new ArrayList<>();
+        String wgPictureApi = this.getWGPictureApi(appNo);
+        if (StringUtils.isNotEmpty(wgPictureApi)) {
+            if (wgPictureApi.contains("|http")) {
+                String[] urlArr = wgPictureApi.split("\\|");
+                list.addAll(Arrays.asList(urlArr));
+            } else {
+                list.add(wgPictureApi);
+            }
+        }
+        return list;
+    }
+
 }