ソースを参照

修改导入功能申请人部分 3/21

lwhhszx 2 年 前
コミット
645747bd17

+ 10 - 4
PAS/src/main/java/cn/cslg/pas/common/model/PatentCell.java

@@ -1,6 +1,7 @@
 package cn.cslg.pas.common.model;
 
 
+import cn.cslg.pas.common.model.dto.UploadFileDTO;
 import lombok.Data;
 
 import java.util.List;
@@ -30,6 +31,14 @@ public class PatentCell {
     private String abstrc;
     private String picUrl;
     /*
+专题库id
+ */
+    private Integer projectId;
+    /*
+报告id
+ */
+    private Integer reportId;
+    /*
     申请号
      */
     private String applicationNo;
@@ -90,10 +99,7 @@ public class PatentCell {
     权要
      */
     private List<String> rights;
-    /*
-    PDF文档
-     */
-    private String PDF;
+private UploadFileDTO pdf;
     /*
 说明书
  */

+ 2 - 1
PAS/src/main/java/cn/cslg/pas/controller/SystemController.java

@@ -20,6 +20,7 @@ import lombok.RequiredArgsConstructor;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.web.bind.annotation.*;
 
+import java.text.ParseException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -85,7 +86,7 @@ public class SystemController {
 
     @PostMapping("/patentCellTODb")
     @Operation(summary = "专利上传到数据库")
-    public String   getPatentDTOListForRMS(@RequestBody PatentCell patentCell) {
+    public String   getPatentDTOListForRMS(@RequestBody PatentCell patentCell) throws ParseException {
         uploadPatentBatchService.dataToDBCell(patentCell);
         return Response.success();
 

+ 15 - 0
PAS/src/main/java/cn/cslg/pas/service/PatentInstructionService.java

@@ -1,6 +1,7 @@
 package cn.cslg.pas.service;
 
 
+import cn.cslg.pas.common.model.PatentCell;
 import cn.cslg.pas.common.utils.*;
 import cn.cslg.pas.common.utils.SecurityUtils.LoginUtils;
 import cn.cslg.pas.domain.Patent;
@@ -197,4 +198,18 @@ public class PatentInstructionService extends ServiceImpl<PatentInstructionMappe
             FileUtil.del(fileUtils.getSystemPath(item.getUrl()));
         });
     }
+
+
+    @Transactional
+    public String edit(String patentNo,UploadFileDTO fileDTO) {
+        this.deleteByPatentNoAndType(patentNo,2);
+  PatentInstruction patentInstruction =new PatentInstruction();
+        patentInstruction.setPatentNo(patentNo);
+        patentInstruction.setUrl(fileDTO.getPath());
+        patentInstruction.setFileName(fileDTO.getName());
+        patentInstruction.setSize(fileDTO.getFileSize());
+        patentInstruction.setType(2);
+        patentInstruction.insert();
+        return Response.success(true);
+    }
 }

+ 20 - 8
PAS/src/main/java/cn/cslg/pas/service/UploadPatentBatchService.java

@@ -22,6 +22,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -51,6 +52,7 @@ public class UploadPatentBatchService {
     private final PatentAffairService patentAffairService;
     private final ImportErrorLogMapper importErrorLogMapper;
     private final AssoProductPatentService assoProductPatentService;
+    private final PatentInstructionService patentInstructionService;
     private static int FLAG = 0;
 
     @Async("singleThreadAsyncTaskExecutor")
@@ -660,23 +662,29 @@ public class UploadPatentBatchService {
      * @description 将装配完毕的VO类向数据库中不同的表进行添加或修改操作(dataToDB兄弟类)
      */
     @Transactional(rollbackFor = Exception.class)
-    public String dataToDBCell(PatentCell patentCell) {
+    public String dataToDBCell(PatentCell patentCell) throws ParseException {
         UploadParamsVO uploadParamsVO = new UploadParamsVO();
         Patent patent =new Patent();
         //设置专利号
         patent.setPatentNo(patentCell.getPatentNo());
         //设置摘要
-        patent.setAbstractStr(patentCell.getAbstrc());
+        patent.setAbstractStr(patentCell.getAbstrText());
         //设置标题
         patent.setName(patentCell.getTitle());
-        uploadParamsVO.setPatent(patent);
+        //设置公开日
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd");
+        Date date = simpleDateFormat.parse(patentCell.getPubilcDate());
+       Integer ts = (int)date.getTime();
+        patent.setPublicDate(ts);
+        //设置摘要附图
+        patent.setAbstractPath(patentCell.getPicUrl());
+        //设置pdf文档
+        patentInstructionService.edit( patentCell.getPatentNo(),patentCell.getPdf());
         //设置公开号
-//        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd");
-//        Date date = simpleDateFormat.parse(patentCell.getPubilcDate());
-//        long ts = date.getTime();
-//        patent.setPublicDate();
-        getOneOrInsertOne(uploadParamsVO);
+        patent.setPublicNo(patentCell.getPublicAccreditNo());
         uploadParamsVO.setSimpleStatus(patentCell.getStatue());
+        uploadParamsVO.setPatent(patent);
+        getOneOrInsertOne(uploadParamsVO);
         try {
             //专利信息 OS_PATENT
             if (uploadParamsVO.getPatent() != null) {
@@ -711,6 +719,10 @@ public class UploadPatentBatchService {
             patentTypeNoBusiness(uploadParamsVO);
             //事务信息 OS_PATENT_AFFAIR
             patentAffairBusiness(uploadParamsVO);
+            //当专题库id不为null时添加专利到专题库
+            if(patentCell.getProjectId()!=null){
+                projectPatentLinkService.updateProjectPatent(patentCell.getProjectId(),uploadParamsVO.getPatent().getId());
+            }
             return Response.success();
         } catch (Exception e) {
             e.printStackTrace();