소스 검색

报告专利挖掘架构修改

lwhhszx 1 년 전
부모
커밋
3979ee5712

+ 33 - 0
src/main/java/cn/cslg/pas/common/dto/business/ReportProjectDTO.java

@@ -0,0 +1,33 @@
+package cn.cslg.pas.common.dto.business;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 报告
+ * @Author lirj
+ * @Date 2023/11/1
+ */
+@Data
+public class ReportProjectDTO {
+    @Schema(description = "名称")
+    private String name;
+    @Schema(description = "事件集合")
+    List<ProjectEventDTO>  events;
+    @Schema(description = "处理人id")
+    private Integer headId;
+    @Schema(description = "负责部门id")
+    private Integer departmentId;
+    @Schema(description = "委托类型1客户,2部门")
+    private Integer entrustType;
+    @Schema(description = "委托id")
+    private Integer entrustId;
+    @Schema(description = "是否更新")
+    private Boolean ifUpdate;
+    @Schema(description = "树结构")
+    private List<ProjectTreesDTO> trees;
+    @Schema(description = "周期")
+    private String crons;
+}

+ 71 - 0
src/main/java/cn/cslg/pas/domain/business/PatentDigProject.java

@@ -0,0 +1,71 @@
+package cn.cslg.pas.domain.business;
+
+
+import cn.cslg.pas.domain.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+/**
+ * <p>
+ * 专利挖掘项目
+ * </p>
+ *
+ * @author 李仁杰
+ * @since 2022-11-1
+ */
+@Data
+@TableName("patent_dig_project")
+public class PatentDigProject extends BaseEntity<PatentDigProject> {
+    /**
+     * 项目id
+     */
+    @TableField(value = "project_id")
+    private String project_id;
+
+    /**
+     * 研发项目id
+     */
+    @TableField(value = "rd_project_id")
+    private  Integer rdProjectId;
+
+    /**
+     * 产出
+     */
+    @TableField(value = "output")
+    private String output;
+
+    /**
+     * 技术方向
+     */
+    @TableField(value = "technical_direction")
+    private String technicalDirection;
+
+    /**
+     * 产品阶段
+     */
+    @TableField(value = "product_phase")
+    private String productPhase;
+
+    /**
+     * 是否检索
+     */
+    @TableField(value = "if_search")
+    private Boolean ifSearch;
+
+    /**
+     * 相关竞争对手
+     */
+    @TableField(value = "related_competitors")
+    private String relatedCompetitors;
+
+    /**
+     * 技术关键词
+     */
+    @TableField(value = "technicalKeyword")
+    private String technicalKeyword;
+
+
+
+
+}

+ 83 - 0
src/main/java/cn/cslg/pas/domain/business/PatentDigProjectFiles.java

@@ -0,0 +1,83 @@
+package cn.cslg.pas.domain.business;
+
+
+import cn.cslg.pas.domain.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import org.joda.time.DateTime;
+
+/**
+ * <p>
+ * 处理事项文件
+ * </p>
+ *
+ * @author 李仁杰
+ * @since 2022-11-1
+ */
+@Data
+@TableName("patent_dig_project_files")
+public class PatentDigProjectFiles extends BaseEntity<PatentDigProjectFiles> {
+
+    /**
+     * 名称
+     */
+    @TableField(value = "name")
+    private String name;
+    /**
+     * 项目id
+     */
+    @TableField(value = "project_id")
+    private Integer projectId;
+
+    /**
+     * 任务id
+     */
+    @TableField(value = "task_id")
+    private Integer taskId;
+
+    /**
+     * 所属流程id
+     */
+    @TableField(value = "process_id")
+    private Integer processId;
+
+    /**
+     * 文件guid
+     */
+    @TableField(value = "file_guid")
+    private String fileGuid;
+
+    /**
+     * 是否最终
+     */
+    @TableField(value = "if_final")
+    private Boolean ifFinal;
+
+
+    /**
+     * 发生时间
+     */
+    @TableField(value = "eventDate")
+    private DateTime event_date;
+
+    /**
+     * 类型
+     */
+    @TableField(value = "type")
+    private Integer type;
+    /**
+     * 描述
+     */
+    @TableField(value = "description")
+    private String description;
+
+
+    @TableField(value = "create_id")
+    private Integer createId;
+
+
+    @TableField(value = "create_time")
+    private DateTime createTime;
+
+}

+ 46 - 0
src/main/java/cn/cslg/pas/domain/business/RdProject.java

@@ -0,0 +1,46 @@
+package cn.cslg.pas.domain.business;
+
+
+import cn.cslg.pas.domain.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import org.joda.time.DateTime;
+
+/**
+ * <p>
+ * 研发项目
+ * </p>
+ *
+ * @author 李仁杰
+ * @since 2022-11-1
+ */
+@Data
+@TableName("rd_project")
+public class RdProject extends BaseEntity<RdProject> {
+
+    /**
+     * 名称
+     */
+    @TableField(value = "name")
+    private String name;
+    /**
+     * 租户id
+     */
+    @TableField(value = "tenant_id")
+    private String tenantId;
+
+    /**
+     * 编号
+     */
+    @TableField(value = "number")
+    private  String number;
+
+    @TableField(value = "create_id")
+    private String createId;
+
+
+    @TableField(value = "create_time")
+    private DateTime createTime;
+
+}

+ 20 - 0
src/main/java/cn/cslg/pas/mapper/PatentDigProjectFilesMapper.java

@@ -0,0 +1,20 @@
+package cn.cslg.pas.mapper;
+
+import cn.cslg.pas.common.vo.business.EventVO;
+import cn.cslg.pas.domain.business.Event;
+import cn.cslg.pas.domain.business.PatentDigProjectFiles;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * 处理事项文件Mapper
+ *
+ * @Author 李仁杰
+ * @Date 2023/11/2
+ */
+@Repository
+public interface PatentDigProjectFilesMapper extends BaseMapper<PatentDigProjectFiles> {
+
+}

+ 20 - 0
src/main/java/cn/cslg/pas/mapper/PatentDigProjectMapper.java

@@ -0,0 +1,20 @@
+package cn.cslg.pas.mapper;
+
+import cn.cslg.pas.common.vo.business.EventVO;
+import cn.cslg.pas.domain.business.Event;
+import cn.cslg.pas.domain.business.PatentProject;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * 事件和报告关联表的Mapper层接口
+ *
+ * @Author 李仁杰
+ * @Date 2023/10/20
+ */
+@Repository
+public interface PatentDigProjectMapper extends BaseMapper<PatentProject> {
+
+}

+ 20 - 0
src/main/java/cn/cslg/pas/mapper/RdProjectMapper.java

@@ -0,0 +1,20 @@
+package cn.cslg.pas.mapper;
+
+import cn.cslg.pas.common.vo.business.EventVO;
+import cn.cslg.pas.domain.business.Event;
+import cn.cslg.pas.domain.business.RdProject;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * 事件和报告关联表的Mapper层接口
+ *
+ * @Author 李仁杰
+ * @Date 2023/10/20
+ */
+@Repository
+public interface RdProjectMapper extends BaseMapper<RdProject> {
+
+}

+ 31 - 22
src/main/java/cn/cslg/pas/service/business/PatentProjectService.java

@@ -11,11 +11,7 @@ import cn.cslg.pas.common.utils.CacheUtils;
 import cn.cslg.pas.common.utils.LoginUtils;
 import cn.cslg.pas.common.vo.business.EventCountVO;
 import cn.cslg.pas.common.vo.business.EventVO;
-import cn.cslg.pas.domain.business.AssoEventFile;
-
-import cn.cslg.pas.domain.business.PatentProject;
-import cn.cslg.pas.domain.business.Project;
-import cn.cslg.pas.domain.business.SystemDict;
+import cn.cslg.pas.domain.business.*;
 
 import cn.cslg.pas.exception.XiaoShiException;
 import cn.cslg.pas.factorys.businessFactory.Business;
@@ -79,6 +75,9 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
     @Autowired
     private ProjectService projectService;
 
+    @Autowired
+    private AssoProjectEventService assoProjectEventService;
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Object queryMessage(QueryRequest queryRequest) throws Exception {
@@ -91,7 +90,7 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
         Long total = eventMapper.getEventCount(sqls.get(0));
 
         //装载事件信息
-        this.loadEvent(eventVOS);
+
         Records records = new Records();
         records.setCurrent(queryRequest.getCurrent());
         records.setSize(queryRequest.getSize());
@@ -107,6 +106,20 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
         return null;
     }
 
+    /**
+     *
+     *
+     * @param object
+     * @param files
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Object updateMessage(Object object, List<MultipartFile> files) {
+
+        return null;
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Object deleteMessage(List<Integer> ids) throws IOException {
@@ -127,19 +140,6 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
     }
 
     /**
-     * 更新事件接口
-     *
-     * @param object
-     * @param files
-     * @return
-     */
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public Object updateMessage(Object object, List<MultipartFile> files) {
-
-       return null;
-        }
-    /**
      * 查询事件分组信息
      *
      * @param groupRequest
@@ -184,11 +184,14 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
      * @return
      */
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Object addMessage(Object object) {
         //TODO 校验参数
-        PatentProjectDTO patentProjectDTO =(PatentProjectDTO)object;
+        //1 判断是否选择更新并且上传了cron表达式
+        //2校验必传参数是否上传
 
         //装载project
+        PatentProjectDTO patentProjectDTO =(PatentProjectDTO)object;
         Project project = new Project();
         BeanUtils.copyProperties(patentProjectDTO,project);
 
@@ -196,8 +199,14 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
         PatentProject patentProject=new PatentProject();
         BeanUtils.copyProperties(patentProjectDTO,patentProject);
 
-        //装载
+        //装载事件与project关联
+        AssoProjectEvent assoProjectEvent =new AssoProjectEvent();
+
+        //装载树结构和project关联
+
 
+        //装载和附件关联
+        AssoProjectFile assoProjectFile =new AssoProjectFile();
         return null;
     }
 
@@ -211,7 +220,7 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
      *
      * @param eventVOs
      */
-    private void loadEvent(List<EventVO> eventVOs) throws IOException {
+    private void loadPatentProject(List<EventVO> eventVOs) throws IOException {
         List<String> createIds = new ArrayList<>();
         List<Integer> clientIds = new ArrayList<>();
         List<Integer> ids = new ArrayList<>();