Ver código fonte

10/9 novelty

xiexiang 1 ano atrás
pai
commit
5b86d0845d

+ 15 - 0
src/main/java/cn/cslg/pas/common/dto/NoveltyProjectDTO/AssoRetrieveRecordProjectDTO.java

@@ -0,0 +1,15 @@
+package cn.cslg.pas.common.dto.NoveltyProjectDTO;
+
+import lombok.Data;
+
+/**
+ * @Author xiexiang
+ * @Date 2024/10/9
+ */
+@Data
+public class AssoRetrieveRecordProjectDTO {
+    private Integer id;
+    private Integer retrieveId;
+    private Integer projectId;
+    private String searchPersonName;
+}

+ 10 - 0
src/main/java/cn/cslg/pas/common/dto/NoveltyProjectDTO/NoveltyRetrieveRecordDTO.java

@@ -13,6 +13,11 @@ public class NoveltyRetrieveRecordDTO {
     private Integer id;
 
     /**
+     * 报告id
+     */
+    private Integer projectId;
+
+    /**
      * 检索式
      */
     private String conditions;
@@ -41,4 +46,9 @@ public class NoveltyRetrieveRecordDTO {
      * 前端配置
      */
     private String searchSetting;
+
+    /**
+     * 检索人
+     */
+    private String searchPersonName;
 }

+ 4 - 1
src/main/java/cn/cslg/pas/domain/business/novelty/AssoRetrieveRecordProject.java

@@ -28,5 +28,8 @@ public class AssoRetrieveRecordProject extends BaseEntity<AssoRetrieveRecordProj
      */
     private Integer projectId;
 
-
+    /**
+     * 检索人
+     */
+    private String searchPersonName;
 }

+ 20 - 0
src/main/java/cn/cslg/pas/service/novelty/AssoRetrieveRecordProjectService.java

@@ -1,5 +1,7 @@
 package cn.cslg.pas.service.novelty;
 
+import cn.cslg.pas.common.dto.NoveltyProjectDTO.AssoRetrieveRecordProjectDTO;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import cn.cslg.pas.domain.business.novelty.AssoRetrieveRecordProject;
 import cn.cslg.pas.mapper.novelty.AssoRetrieveRecordProjectMapper;
@@ -22,6 +24,24 @@ public class AssoRetrieveRecordProjectService extends ServiceImpl<AssoRetrieveRe
         assoRetrieveRecordProject.insert();
     }
 
+    public void addAsso(AssoRetrieveRecordProjectDTO assoRetrieveRecordProjectDTO) {
+        AssoRetrieveRecordProject assoRetrieveRecordProject = new AssoRetrieveRecordProject();
+        assoRetrieveRecordProject.setRetrieveRecordId(assoRetrieveRecordProjectDTO.getRetrieveId());
+        assoRetrieveRecordProject.setProjectId(assoRetrieveRecordProjectDTO.getProjectId());
+        assoRetrieveRecordProject.setSearchPersonName(assoRetrieveRecordProjectDTO.getSearchPersonName());
+        assoRetrieveRecordProject.insert();
+    }
+
+    public void updateAsso(AssoRetrieveRecordProjectDTO assoRetrieveRecordProjectDTO) {
+        if (assoRetrieveRecordProjectDTO.getRetrieveId() != null) {
+            LambdaQueryWrapper<AssoRetrieveRecordProject> queryWrapper = new LambdaQueryWrapper<>();
+            queryWrapper.eq(AssoRetrieveRecordProject::getRetrieveRecordId, assoRetrieveRecordProjectDTO.getRetrieveId());
+            AssoRetrieveRecordProject assoRetrieveRecordProject = this.getOne(queryWrapper, false);
+            assoRetrieveRecordProject.setSearchPersonName(assoRetrieveRecordProjectDTO.getSearchPersonName());
+            assoRetrieveRecordProject.updateById();
+        }
+    }
+
 
 
 

+ 18 - 3
src/main/java/cn/cslg/pas/service/novelty/NoveltySearchRecordService.java

@@ -1,6 +1,7 @@
 package cn.cslg.pas.service.novelty;
 
 import cn.cslg.pas.common.dto.*;
+import cn.cslg.pas.common.dto.NoveltyProjectDTO.AssoRetrieveRecordProjectDTO;
 import cn.cslg.pas.common.dto.NoveltyProjectDTO.NoveltyRetrieveRecordDTO;
 import cn.cslg.pas.common.model.cronModel.Personnel;
 import cn.cslg.pas.common.model.cronModel.PersonnelVO;
@@ -138,13 +139,17 @@ public class NoveltySearchRecordService extends ServiceImpl<RetrieveRecordMapper
     public Integer addSearchRecord(NoveltyRetrieveRecordDTO noveltyRetrieveRecordDTO) {
         RetrieveRecord retrieveRecord = new RetrieveRecord();
         BeanUtils.copyProperties(noveltyRetrieveRecordDTO, retrieveRecord);
-
         PersonnelVO personnelVO = cacheUtils.getLoginUser(loginUtils.getId());
         retrieveRecord.setCreateId(personnelVO.getId());
         retrieveRecord.setTenantId(personnelVO.getTenantId());
-
-        retrieveRecord.setIfBySystem(true);
+        retrieveRecord.setIfBySystem(false);
         retrieveRecord.insert();
+
+        AssoRetrieveRecordProjectDTO assoRetrieveRecordProjectDTO = new AssoRetrieveRecordProjectDTO();
+        assoRetrieveRecordProjectDTO.setRetrieveId(retrieveRecord.getId());
+        assoRetrieveRecordProjectDTO.setProjectId(noveltyRetrieveRecordDTO.getProjectId());
+        assoRetrieveRecordProjectDTO.setSearchPersonName(noveltyRetrieveRecordDTO.getSearchPersonName());
+        assoRetrieveRecordProjectService.addAsso(assoRetrieveRecordProjectDTO);
         return retrieveRecord.getId();
     }
 
@@ -161,6 +166,16 @@ public class NoveltySearchRecordService extends ServiceImpl<RetrieveRecordMapper
         BeanUtils.copyProperties(noveltyRetrieveRecordDTO, retrieveRecord);
         retrieveRecord.setUpdateTime(new Date());
         retrieveRecord.updateById();
+
+        LambdaQueryWrapper<AssoRetrieveRecordProject> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(AssoRetrieveRecordProject::getRetrieveRecordId, id);
+        AssoRetrieveRecordProject assoRetrieveRecordProject = assoRetrieveRecordProjectService.getOne(queryWrapper, false);
+        if (assoRetrieveRecordProject != null) {
+            AssoRetrieveRecordProjectDTO assoRetrieveRecordProjectDTO = new AssoRetrieveRecordProjectDTO();
+            assoRetrieveRecordProjectDTO.setRetrieveId(id);
+            assoRetrieveRecordProjectDTO.setSearchPersonName(noveltyRetrieveRecordDTO.getSearchPersonName());
+            assoRetrieveRecordProjectService.updateAsso(assoRetrieveRecordProjectDTO);
+        }
         return retrieveRecord.getId();
     }