Browse Source

3/8 回避设计修改

lwhhszx 1 year ago
parent
commit
e20c15eb5a
1 changed files with 24 additions and 11 deletions
  1. 24 11
      src/main/java/cn/cslg/pas/service/business/AvoidDesignService.java

+ 24 - 11
src/main/java/cn/cslg/pas/service/business/AvoidDesignService.java

@@ -7,10 +7,7 @@ import cn.cslg.pas.common.model.cronModel.PersonnelVO;
 import cn.cslg.pas.common.utils.CacheUtils;
 import cn.cslg.pas.common.utils.CacheUtils;
 import cn.cslg.pas.common.utils.LoginUtils;
 import cn.cslg.pas.common.utils.LoginUtils;
 import cn.cslg.pas.common.vo.business.AvoidDesignVO;
 import cn.cslg.pas.common.vo.business.AvoidDesignVO;
-import cn.cslg.pas.domain.business.AvoidDesign;
-import cn.cslg.pas.domain.business.AvoidDesignWhole;
-import cn.cslg.pas.domain.business.Feature;
-import cn.cslg.pas.domain.business.ReportProject;
+import cn.cslg.pas.domain.business.*;
 import cn.cslg.pas.exception.UnLoginException;
 import cn.cslg.pas.exception.UnLoginException;
 import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.mapper.AvoidDesignMapper;
 import cn.cslg.pas.mapper.AvoidDesignMapper;
@@ -27,6 +24,7 @@ import java.util.stream.Collectors;
 
 
 /**
 /**
  * 回避设计Service
  * 回避设计Service
+ *
  * @Author xiexiang
  * @Author xiexiang
  * @Date 2023/12/5
  * @Date 2023/12/5
  */
  */
@@ -46,13 +44,16 @@ public class AvoidDesignService extends ServiceImpl<AvoidDesignMapper, AvoidDesi
 
 
     @Autowired
     @Autowired
     private AvoidDesignWholeService avoidDesignWholeService;
     private AvoidDesignWholeService avoidDesignWholeService;
+    @Autowired
+    private PatentSplitMessageService patentSplitMessageService;
 
 
     /**
     /**
      * 新增回避设计
      * 新增回避设计
+     *
      * @param avoidDesignInsertDTO
      * @param avoidDesignInsertDTO
      * @return
      * @return
      */
      */
-    public List<Integer> addAvoidDesign(AvoidDesignInsertDTO avoidDesignInsertDTO){
+    public List<Integer> addAvoidDesign(AvoidDesignInsertDTO avoidDesignInsertDTO) {
         //获取登录人信息
         //获取登录人信息
         PersonnelVO personnelVO = new PersonnelVO();
         PersonnelVO personnelVO = new PersonnelVO();
         try {
         try {
@@ -75,20 +76,24 @@ public class AvoidDesignService extends ServiceImpl<AvoidDesignMapper, AvoidDesi
         } else {
         } else {
             throw new XiaoShiException("未查询到报告专利号");
             throw new XiaoShiException("未查询到报告专利号");
         }
         }
+
         List<AvoidDesignDTO> avoidDesignDTOS = avoidDesignInsertDTO.getAvoidDesignDTOS();
         List<AvoidDesignDTO> avoidDesignDTOS = avoidDesignInsertDTO.getAvoidDesignDTOS();
         //根据专利号和projectId,删除特征
         //根据专利号和projectId,删除特征
-        LambdaQueryWrapper<Feature> deleteWrapper =new LambdaQueryWrapper<>();
-        deleteWrapper.eq(Feature::getPatentNo, patentNo)
-                        .eq(Feature::getProjectId, projectId);
-        featureService.remove(deleteWrapper);
+        LambdaQueryWrapper<PatentSplitMessage> splitWrapper = new LambdaQueryWrapper<>();
+        splitWrapper.eq(PatentSplitMessage::getPatentNo, patentNo)
+                .eq(PatentSplitMessage::getProjectId, projectId);
+        PatentSplitMessage patentSplitMessage = patentSplitMessageService.getOne(splitWrapper, false);
+
         //根据projectId删除回避设计方向数据
         //根据projectId删除回避设计方向数据
         LambdaQueryWrapper<AvoidDesign> deleteWrapper2 = new LambdaQueryWrapper<>();
         LambdaQueryWrapper<AvoidDesign> deleteWrapper2 = new LambdaQueryWrapper<>();
         deleteWrapper2.eq(AvoidDesign::getProjectId, projectId);
         deleteWrapper2.eq(AvoidDesign::getProjectId, projectId);
         this.remove(deleteWrapper2);
         this.remove(deleteWrapper2);
+
+        //删除总的设计方向
         LambdaQueryWrapper<AvoidDesignWhole> deleteWrapper3 = new LambdaQueryWrapper<>();
         LambdaQueryWrapper<AvoidDesignWhole> deleteWrapper3 = new LambdaQueryWrapper<>();
         deleteWrapper3.eq(AvoidDesignWhole::getProjectId, projectId);
         deleteWrapper3.eq(AvoidDesignWhole::getProjectId, projectId);
         avoidDesignWholeService.remove(deleteWrapper3);
         avoidDesignWholeService.remove(deleteWrapper3);
-        //新增总体方向
+
         //首先新增总体方向
         //首先新增总体方向
         AvoidDesignWholeDTO avoidDesignWholeDTO = new AvoidDesignWholeDTO();
         AvoidDesignWholeDTO avoidDesignWholeDTO = new AvoidDesignWholeDTO();
         avoidDesignWholeDTO.setContent(avoidDesignInsertDTO.getWholeContent());
         avoidDesignWholeDTO.setContent(avoidDesignInsertDTO.getWholeContent());
@@ -97,6 +102,7 @@ public class AvoidDesignService extends ServiceImpl<AvoidDesignMapper, AvoidDesi
         if (wholeId == null) {
         if (wholeId == null) {
             throw new XiaoShiException("总体方向添加失败");
             throw new XiaoShiException("总体方向添加失败");
         }
         }
+
         //新增插入回避设计方向集合
         //新增插入回避设计方向集合
         List<AvoidDesign> avoidDesignList = new ArrayList<>();
         List<AvoidDesign> avoidDesignList = new ArrayList<>();
         //遍历传入集合
         //遍历传入集合
@@ -109,7 +115,14 @@ public class AvoidDesignService extends ServiceImpl<AvoidDesignMapper, AvoidDesi
             feature.setExplainText(avoidDesignDTO.getExplainText());
             feature.setExplainText(avoidDesignDTO.getExplainText());
             feature.setCreateId(personnelVO.getId());
             feature.setCreateId(personnelVO.getId());
             feature.setRightType(avoidDesignDTO.getRightType());
             feature.setRightType(avoidDesignDTO.getRightType());
-            feature.insert();
+            feature.setSplitMessageId(patentSplitMessage.getId());
+            feature.setId(avoidDesignDTO.getFeatureId());
+            if (avoidDesignDTO.getFeatureId() == null) {
+                feature.insert();
+            } else {
+                feature.updateById();
+            }
+
             //获取特征id
             //获取特征id
             Integer featureId = feature.getId();
             Integer featureId = feature.getId();
             if (avoidDesignDTO.getDirection() != null) {
             if (avoidDesignDTO.getDirection() != null) {