update 项目合规评估流程 新增字段
This commit is contained in:
+2
@@ -128,10 +128,12 @@ public class ProcessProjectAssessController extends JeroController<ProcessProjec
|
||||
String sarFileSplitInfoId = lawsAssess.getSarFileSplitInfoId();
|
||||
if (StringUtils.isNotBlank(sarFileSplitInfoId)) {
|
||||
List<ProcessProjectAssessTerm> processProjectAssessTermList = documentSplitService.processProjectAssessGetList(sarFileSplitInfoId);
|
||||
processProjectAssessTermList.forEach(item -> item.setStandardId(lawsAssess.getStandardId()));
|
||||
allList.addAll(processProjectAssessTermList);
|
||||
continue;
|
||||
}
|
||||
ProcessProjectAssessTerm processProjectAssessTerm = new ProcessProjectAssessTerm();
|
||||
processProjectAssessTerm.setStandardId(lawsAssess.getStandardId());
|
||||
processProjectAssessTerm.setTermNumber(lawsAssess.getStandardNumber());
|
||||
processProjectAssessTerm.setTermName(lawsAssess.getStandardName());
|
||||
processProjectAssessTerm.setCanAssignFlag(YesOrNoEnum.YES.getInteger());
|
||||
|
||||
+32
@@ -12,6 +12,7 @@ import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import lombok.Data;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
/**
|
||||
@@ -76,6 +77,10 @@ public class ProcessProjectAssessTerm {
|
||||
@ApiModelProperty(value = "评估流程id")
|
||||
private String assessmentId;
|
||||
|
||||
/**标准id*/
|
||||
@ApiModelProperty(value = "标准id")
|
||||
private String standardId;
|
||||
|
||||
/**
|
||||
* 条款号
|
||||
*/
|
||||
@@ -226,5 +231,32 @@ public class ProcessProjectAssessTerm {
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date expectedTime;
|
||||
|
||||
/**评估日期*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "评估日期")
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date assessTime;
|
||||
|
||||
/**风险点*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "风险点")
|
||||
private String riskPoints;
|
||||
|
||||
/**验证方案*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "验证方案")
|
||||
private String validateSolution;
|
||||
|
||||
/**不符合项*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "不符合项")
|
||||
private String nonConformance;
|
||||
|
||||
/**应对措施*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "应对措施")
|
||||
private String countermeasures;
|
||||
|
||||
|
||||
}
|
||||
+16
@@ -140,6 +140,14 @@ public class ProcessProjectAssessTermUser {
|
||||
@ApiModelProperty(value = "佐证材料")
|
||||
private String fileId;
|
||||
|
||||
/**不符合项*/
|
||||
@ApiModelProperty(value = "不符合项")
|
||||
private String nonConformance;
|
||||
|
||||
/**应对措施*/
|
||||
@ApiModelProperty(value = "应对措施")
|
||||
private String countermeasures;
|
||||
|
||||
/**
|
||||
* 预计整改完成日期
|
||||
*/
|
||||
@@ -148,6 +156,14 @@ public class ProcessProjectAssessTermUser {
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date expectedTime;
|
||||
|
||||
/**风险点*/
|
||||
@ApiModelProperty(value = "风险点")
|
||||
private String riskPoints;
|
||||
|
||||
/**验证方案*/
|
||||
@ApiModelProperty(value = "验证方案")
|
||||
private String validateSolution;
|
||||
|
||||
/**评估日期*/
|
||||
@ApiModelProperty(value = "评估日期")
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
|
||||
+20
-4
@@ -26,13 +26,18 @@
|
||||
<result column="design_engineer" property="designEngineer"/>
|
||||
<result column="module_owner" property="moduleOwner"/>
|
||||
<result column="responsible_unit_leader" property="responsibleUnitLeader"/>
|
||||
|
||||
<result column="risk_points" property="riskPoints"/>
|
||||
<result column="validate_solution" property="validateSolution"/>
|
||||
<result column="non_conformance" property="nonConformance"/>
|
||||
<result column="countermeasures" property="countermeasures"/>
|
||||
<result column="assess_time" property="assessTime"/>
|
||||
<result column="standard_id" property="standardId"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
<!--@mbg.generated-->
|
||||
${alias}.id, ${alias}.create_by, ${alias}.create_time, ${alias}.update_by, ${alias}.update_time, ${alias}.org_code, ${alias}.del_flag, ${alias}.assessment_id,
|
||||
${alias}.term_number, ${alias}.term_name, ${alias}.term_text, ${alias}.split_info_id, ${alias}.can_assign_flag
|
||||
${alias}.standard_id, ${alias}.term_number, ${alias}.term_name, ${alias}.term_text, ${alias}.split_info_id, ${alias}.can_assign_flag
|
||||
</sql>
|
||||
|
||||
<select id="getByResponsibleUnitLeader" resultMap="BaseResultMap">
|
||||
@@ -49,7 +54,12 @@
|
||||
ppatu.expected_time,
|
||||
ppatu.design_engineer,
|
||||
ppatu.module_owner,
|
||||
ppatu.responsible_unit_leader
|
||||
ppatu.assess_time,
|
||||
ppatu.responsible_unit_leader,
|
||||
ppatu.risk_points,
|
||||
ppatu.validate_solution,
|
||||
ppatu.non_conformance,
|
||||
ppatu.countermeasures
|
||||
from process_project_assess_term_user ppatu
|
||||
left join process_project_assess_term ppat on ppat.id = ppatu.term_id
|
||||
where ppat.assessment_id = #{assessmentId}
|
||||
@@ -101,7 +111,13 @@
|
||||
ppatu.expected_time,
|
||||
ppatu.design_engineer,
|
||||
ppatu.module_owner,
|
||||
ppatu.responsible_unit_leader
|
||||
ppatu.responsible_unit_leader,
|
||||
ppatu.assess_time,
|
||||
ppatu.responsible_unit_leader,
|
||||
ppatu.risk_points,
|
||||
ppatu.validate_solution,
|
||||
ppatu.non_conformance,
|
||||
ppatu.countermeasures
|
||||
|
||||
from process_project_assess_term_user ppatu
|
||||
left join process_project_assess_term ppat on ppat.id = ppatu.term_id
|
||||
|
||||
+56
-12
@@ -3,12 +3,8 @@ package com.jero.modules.activiti.process.projectassess.service;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import cn.hutool.cache.CacheUtil;
|
||||
import cn.hutool.core.collection.CollStreamUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.stream.StreamUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
@@ -42,16 +38,14 @@ import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
|
||||
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
|
||||
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
|
||||
import com.jero.modules.laws.standard.service.ILawsOverseasStandardService;
|
||||
import com.jero.modules.projectLibrary.entity.LawsAssess;
|
||||
import com.jero.modules.projectLibrary.entity.LawsAssessResults;
|
||||
import com.jero.modules.projectLibrary.entity.LawsProjectLibrary;
|
||||
import com.jero.modules.projectLibrary.service.ILawsAssessService;
|
||||
import com.jero.modules.projectLibrary.service.ILawsAssessResultsService;
|
||||
import com.jero.modules.projectLibrary.service.ILawsProjectLibraryService;
|
||||
import org.activiti.engine.HistoryService;
|
||||
import org.activiti.engine.RuntimeService;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.history.HistoricTaskInstance;
|
||||
import org.activiti.engine.runtime.Execution;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -66,10 +60,6 @@ import com.jero.modules.activiti.process.projectassess.entity.ProcessProjectAsse
|
||||
import com.jero.modules.activiti.process.projectassess.mapper.ProcessProjectAssessMapper;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import static cn.hutool.poi.excel.sax.ElementName.c;
|
||||
import static cn.hutool.poi.excel.sax.ElementName.v;
|
||||
import static org.apache.tools.ant.taskdefs.SetPermissions.NonPosixMode.pass;
|
||||
|
||||
/**
|
||||
* @author liJiaRao
|
||||
* @date 2023-12-05 15:57
|
||||
@@ -107,6 +97,9 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
||||
private ILawsOverseasStandardService lawsOverseasStandardService;
|
||||
@Resource
|
||||
private SendMessageAPI sendMessageAPI;
|
||||
@Resource
|
||||
private ILawsAssessResultsService lawsAssessResultsService;
|
||||
|
||||
HashMap<String, String> tempCache = new HashMap<>();
|
||||
|
||||
public ProcessInfoVO<ProcessProjectAssessVO> queryProcessInfoVO(String draftId, String processInstanceId, String taskId) {
|
||||
@@ -241,6 +234,11 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
||||
term.setDescription(termUser.getDescription());
|
||||
term.setFileId(termUser.getFileId());
|
||||
term.setExpectedTime(termUser.getExpectedTime());
|
||||
term.setRiskPoints(termUser.getRiskPoints());
|
||||
term.setValidateSolution(termUser.getValidateSolution());
|
||||
term.setNotInvolved(termUser.getNotInvolved());
|
||||
term.setNonConformance(termUser.getNonConformance());
|
||||
term.setCountermeasures(termUser.getCountermeasures());
|
||||
}
|
||||
String evaluationFeedback = term.getEvaluationFeedback();
|
||||
term.setEvaluationFeedback_dictText(dictevaluationFeedbackMap.get(evaluationFeedback));
|
||||
@@ -274,6 +272,7 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
||||
term1.setTermNumber(titleTerm.getTermNumber());
|
||||
term1.setTermText(decompositionOrderSourceMap.get(titleTerm.getTermText()));
|
||||
term1.setCanAssignFlag(YesOrNoEnum.NO.getInteger());
|
||||
term1.setPromoter(createUserName);
|
||||
allProjectAssesTermList.add(term1);
|
||||
}
|
||||
allProjectAssesTermList.add(term);
|
||||
@@ -540,6 +539,47 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
||||
String projectId = projectAssess.getProjectId();
|
||||
LawsProjectLibrary lawsProjectLibrary = lawsProjectLibraryService.getById(projectId);
|
||||
ProcessProjectAssessVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
|
||||
|
||||
// 完成任务
|
||||
String taskId = processDTO.getTaskId();
|
||||
taskService.complete(taskId);
|
||||
//同步数据到项目库的评估结果
|
||||
List<LawsAssessResults> lawsAssessResultsList = new ArrayList<>();
|
||||
List<ProcessProjectAssessTerm> processProjectAssessTermList = businessInfoDTO.getProcessProjectAssessTermList();
|
||||
for (ProcessProjectAssessTerm assessTerm : processProjectAssessTermList) {
|
||||
Integer canAssignFlag = assessTerm.getCanAssignFlag();
|
||||
if (YesOrNoEnum.NO.getInteger().equals(canAssignFlag)){
|
||||
continue;
|
||||
}
|
||||
LawsAssessResults lawsAssessResults = new LawsAssessResults();
|
||||
lawsAssessResults.setProjectId(businessId);
|
||||
//lawsAssessResults.setProcessStatus();
|
||||
lawsAssessResults.setAssessorId(assessTerm.getAssessorId());
|
||||
lawsAssessResults.setAssessorName(assessTerm.getAssessorName());
|
||||
lawsAssessResults.setAssessTime(assessTerm.getAssessTime());
|
||||
String evaluationFeedback = assessTerm.getEvaluationFeedback();
|
||||
lawsAssessResults.setAssessResults(evaluationFeedback);
|
||||
//lawsAssessResults.setTermId(assessTerm.getSplitInfoId());
|
||||
lawsAssessResults.setStandardId(assessTerm.getStandardId());
|
||||
lawsAssessResults.setTermNumber(assessTerm.getTermNumber());
|
||||
lawsAssessResults.setFileId(assessTerm.getFileId());
|
||||
lawsAssessResults.setRiskPoints(assessTerm.getRiskPoints());
|
||||
lawsAssessResults.setValidateSolution(assessTerm.getValidateSolution());
|
||||
lawsAssessResults.setExpectedTime(assessTerm.getExpectedTime());
|
||||
lawsAssessResults.setDescription(assessTerm.getDescription());
|
||||
lawsAssessResults.setNonConformance(assessTerm.getNonConformance());
|
||||
lawsAssessResults.setCountermeasures(assessTerm.getCountermeasures());
|
||||
//不涉及原因,根据是否是设计工程师评估反馈区分
|
||||
if (StringUtils.isBlank(evaluationFeedback)){
|
||||
lawsAssessResults.setReason(assessTerm.getNotInvolved());
|
||||
}else {
|
||||
lawsAssessResults.setReason(assessTerm.getDescription());
|
||||
}
|
||||
lawsAssessResultsList.add(lawsAssessResults);
|
||||
}
|
||||
|
||||
lawsAssessResultsService.saveBatch(lawsAssessResultsList);
|
||||
//发送消息
|
||||
String carbonCopyPersonnels = businessInfoDTO.getCarbonCopyPersonnels();
|
||||
SendMessageDTO sendMessageDTO = new SendMessageDTO();
|
||||
sendMessageDTO.setTemplateCode(MessageTemplateCodeCommon.PROJECT_ASSESS_COMPLETE);
|
||||
@@ -706,7 +746,11 @@ public class ProcessProjectAssessService extends ServiceImpl<ProcessProjectAsses
|
||||
termUser.setEvaluationFeedback(processProjectAssessTerm.getEvaluationFeedback());
|
||||
termUser.setDescription(processProjectAssessTerm.getDescription());
|
||||
termUser.setFileId(processProjectAssessTerm.getFileId());
|
||||
termUser.setNonConformance(processProjectAssessTerm.getNonConformance());
|
||||
termUser.setCountermeasures(processProjectAssessTerm.getCountermeasures());
|
||||
termUser.setExpectedTime(processProjectAssessTerm.getExpectedTime());
|
||||
termUser.setRiskPoints(processProjectAssessTerm.getRiskPoints());
|
||||
termUser.setValidateSolution(processProjectAssessTerm.getValidateSolution());
|
||||
termUser.setParentExecutionId(formKey);
|
||||
termUser.setAssessTime(date);
|
||||
allTermUserList.add(termUser);
|
||||
|
||||
+30
-9
@@ -4,6 +4,7 @@ import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
@@ -15,6 +16,8 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 标准评估结果
|
||||
@@ -35,6 +38,11 @@ public class LawsAssessResults implements Serializable {
|
||||
@ApiModelProperty(value = "主键")
|
||||
private String id;
|
||||
|
||||
/**项目ID*/
|
||||
@NotBlank(message = "projectId not null")
|
||||
@ApiModelProperty(value = "项目ID")
|
||||
private String projectId;
|
||||
|
||||
/**标准评估ID*/
|
||||
@ApiModelProperty(value = "标准评估ID")
|
||||
private String assessId;
|
||||
@@ -90,6 +98,22 @@ public class LawsAssessResults implements Serializable {
|
||||
@ApiModelProperty(value = "项目编号")
|
||||
private String projectNo;
|
||||
|
||||
/**
|
||||
* 依据描述
|
||||
*/
|
||||
@ApiModelProperty(value = "依据描述")
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 佐证材料
|
||||
*/
|
||||
@ApiModelProperty(value = "佐证材料")
|
||||
private String fileId;
|
||||
|
||||
/**不符合项*/
|
||||
@ApiModelProperty(value = "不符合项")
|
||||
private String nonConformance;
|
||||
|
||||
/**应对措施*/
|
||||
@ApiModelProperty(value = "应对措施")
|
||||
private String countermeasures;
|
||||
@@ -98,23 +122,20 @@ public class LawsAssessResults implements Serializable {
|
||||
@ApiModelProperty(value = "风险点")
|
||||
private String riskPoints;
|
||||
|
||||
/**设计工程师名字*/
|
||||
/**验证方案*/
|
||||
@ApiModelProperty(value = "验证方案")
|
||||
private String validateSolution;
|
||||
|
||||
/**预估更改周期*/
|
||||
@ApiModelProperty(value = "预估更改周期")
|
||||
private String cycle;
|
||||
/**预计整改完成日期*/
|
||||
@ApiModelProperty(value = "预计整改完成日期")
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date expectedTime;
|
||||
|
||||
/**不涉及理由*/
|
||||
@ApiModelProperty(value = "不涉及理由")
|
||||
private String reason;
|
||||
|
||||
/**不符合项*/
|
||||
@ApiModelProperty(value = "不符合项")
|
||||
private String nonconformance;
|
||||
|
||||
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private String createBy;
|
||||
|
||||
Reference in New Issue
Block a user