lwhhszx 2 anni fa
parent
commit
cd2c1e0726

+ 7 - 0
PAS/src/main/java/cn/cslg/pas/common/model/vo/outApi/StarPatentVO.java

@@ -55,6 +55,7 @@ public class StarPatentVO {
      */
     @JSONField(name = "PNO")
     private String publicNo;
+
     /**
      * 发明人
      */
@@ -62,6 +63,12 @@ public class StarPatentVO {
     private String inventorStr;
     private List<String> inventor;
 
+    /**
+     * 公开号
+     */
+    @JSONField(name = "PE")
+    private String currentApplicantStr;
+
     private List<String>  ipcList;
     private List<PatentApplicant> applicant;
 

+ 6 - 1
PAS/src/main/java/cn/cslg/pas/controller/outApi/PatentStarController.java

@@ -16,6 +16,7 @@ import org.springframework.web.bind.annotation.*;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.util.Map;
 
 @Tag(name = "专利之星接口服务类")
 @RestController
@@ -27,7 +28,11 @@ public class PatentStarController {
     @PostMapping("/select")
     @Operation(summary = "一般检索接口")
     public String getAreaList(@RequestBody @Validated PatentStarListDto patentStarListDto) throws IOException {
-        return Response.success(patentStarApiService.patentStarSearchApi(patentStarListDto));
+          Map<String,Object> map =  patentStarApiService.patentStarSearchApi(patentStarListDto);
+        if(map==null){
+            return Response.error("检索失败");
+        }
+        return Response.success(map);
     }
 
     @GetMapping("/getCnBib")

+ 17 - 0
PAS/src/main/java/cn/cslg/pas/service/outApi/PatentStarApiService.java

@@ -121,6 +121,10 @@ public class PatentStarApiService {
             // 判断请求是否成功
             if (response.isSuccessful()) {
                 JSONObject jsonObject = JSONObject.parseObject(Objects.requireNonNull(response.body()).string());
+                if(jsonObject.get("Ret").equals(500)){
+
+                    return null;
+                }
                 JSONObject Data = (JSONObject) jsonObject.get("Data");
                 List<StarPatentVO> starPatentVOS = JSONArray.parseArray(Data.get("List").toString(), StarPatentVO.class);
                 starPatentVOS.forEach(item->{
@@ -137,6 +141,19 @@ public class PatentStarApiService {
                              item.getApplicant().add(patentApplicant);
                          }
                  );
+                 if(item.getCurrentApplicantStr()!=null){
+                     List<String> cApplicants =   Arrays.asList(item.getCurrentApplicantStr().split(";"));
+                     cApplicants.forEach(
+                             tem->{
+                                 PatentApplicant patentApplicant =new PatentApplicant();
+                                 patentApplicant.setType(2);
+                                 patentApplicant.setDataType(1);
+                                 patentApplicant.setName(tem);
+                                 item.getApplicant().add(patentApplicant);
+                             }
+                     );
+                 }
+
                 });
                 // 打印服务端返回结果
                 //  return Objects.requireNonNull(response.body()).string();