feat: scc流程字段填充翻译

This commit is contained in:
2024-07-17 15:00:51 +08:00
parent 77eff94e45
commit 7158921e5a
3 changed files with 32 additions and 18 deletions
@@ -26,7 +26,7 @@ public class ProcessDemo {
/**
* 主键ID
*/
@TableField(value = "id")
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键ID")
private String id;
@@ -95,10 +95,18 @@ public class ProcessStandardComplianceCheckDetail implements Serializable {
@Dict(dicCode = "model_status")
private String modelState;
/**
* 评估人
*/
@ApiModelProperty(value = "评估人")
@Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname")
private String assessor;
/**
* 合规评估结果
*/
@ApiModelProperty(value = "合规评估结果")
@Dict(dicCode = "evaluation_result")
private String result;
/**
@@ -111,6 +119,7 @@ public class ProcessStandardComplianceCheckDetail implements Serializable {
* 佐证材料
*/
@ApiModelProperty(value = "佐证材料")
@Dict(dictTable = "oss_file", dicCode = "id", dicText = "file_name")
private String material;
/**
@@ -135,6 +144,7 @@ public class ProcessStandardComplianceCheckDetail implements Serializable {
* 整改周期
*/
@ApiModelProperty(value = "整改周期")
@Dict(dicCode = "correction_period")
private String correctionCycle;
/**
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.MinioUtil;
import com.jero.modules.activiti.common.ActivitiCommon;
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
@@ -27,7 +28,6 @@ import com.jero.modules.activiti.process.standardComplianceCheck.entity.vo.Split
import com.jero.modules.activiti.process.standardComplianceCheck.mapper.ProcessStandardComplianceCheckMapper;
import com.jero.modules.activiti.process.standardComplianceCheck.service.IProcessStandardComplianceCheckDetailService;
import com.jero.modules.activiti.process.standardComplianceCheck.service.IProcessStandardComplianceCheckService;
import com.jero.modules.activiti.service.ProcessAllService;
import com.jero.modules.activiti.service.ProcessNodeLinkService;
import com.jero.modules.activiti.util.ExcelUtils;
import com.jero.modules.laws.documenttool.service.IDocumentSplitService;
@@ -35,11 +35,12 @@ import com.jero.modules.laws.enterprise.util.BeanCopyUtils;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.sys.utils.UserUtils;
import com.jero.modules.system.entity.SysDepart;
import com.jero.modules.system.service.ISysDepartService;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.TaskService;
import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.apache.http.entity.ContentType;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.entity.ImportParams;
@@ -79,8 +80,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
private TaskService taskService;
@Resource
private ProcessAllService processAllService;
private ISysDepartService sysDepartService;
@Resource
private RuntimeService runtimeService;
@@ -176,20 +176,16 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
@Override
public void approveTask(ProcessInfoVO<ProcessSccVO> processInfoVO, boolean pass) {
// 获取task
BasicTaskInfoDTO processTask = processInfoVO.getBasicTaskInfoDTO();
String taskId = processTask.getTaskId();
if (StrUtil.isBlank(taskId) || !actFlowCommonService.taskExists(taskId)) {
throw new JeroBootException("taskId为空或任务不存在");
}
String prcId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
BasicProcessInfoDTO processInfo = new BasicProcessInfoDTO();
processInfo.setProcessInstanceId(prcId);
processInfoVO.setBasicProcessInfoDTO(processInfo);
// TODO 找到主流程Id
// 获取task
if (StrUtil.isBlank(taskId) || !actFlowCommonService.taskExists(taskId)) {
throw new JeroBootException("taskId为空或任务不存在");
}
Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
// 获取执行id
String executionId = task.getExecutionId();
// 获取当前节点的id
ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId);
String xmlNodeId = record.getNodeId();
@@ -197,7 +193,6 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(processTask, taskId);
String curUserId = UserUtils.getUserId();
Map<String, Object> userInfoMap = processInfoVO.getUserInfoMap();
switch (xmlNodeId) {
case MAIN_CHECK_USER_DISTRIBUTE:
case MAIN_CHECK_USER_REDISTRIBUTE:
@@ -244,9 +239,6 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
if (StrUtil.isBlank(taskId) || !actFlowCommonService.taskExists(taskId)) {
throw new JeroBootException("taskId为空或任务不存在");
}
Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
// 获取执行id
String executionId = task.getExecutionId();
// 获取当前节点的id
ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId);
String xmlNodeId = record.getNodeId();
@@ -254,6 +246,9 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(processTask, taskId);
String curUserId = UserUtils.getUserId();
LoginUser user = UserUtils.getCurrentUser();
List<SysDepart> curUserDepartIdList = sysDepartService.queryDepartsByUsername(user.getUsername());
String curUserDepartIds = curUserDepartIdList.stream().map(SysDepart::getId).collect(Collectors.joining(","));
ProcessSccVO businessInfoDTO = processInfoVO.getBusinessInfoDTO();
ProcessStandardComplianceCheck standardInfo = businessInfoDTO.getStandardInfo();
List<ProcessStandardComplianceCheckDetail> detailInfoList = businessInfoDTO.getDetailInfoList();
@@ -320,13 +315,22 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
userMap.put(MANAGER, standardInfo.getManager());
userMap.put(SENIOR_MANAGER, standardInfo.getSeniorManager());
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, userMap);
// 保存数据
detailInfoList.forEach(detail -> {
detail.setAssessor(curUserId);
detail.setAuthDept(curUserDepartIds);
});
}
// 保存数据
sccDetailService.updateBatchById(detailInfoList);
runtimeService.setVariable(processInstanceId, DISTRIBUTE, distributeFlag);
runtimeService.setVariable(processInstanceId, UNALLOCATED_QUANTITY, unallocatedQuantity);
break;
case DESIGNER_ENGINEER_EVALUATION:
// 保存数据
detailInfoList.forEach(detail -> {
detail.setAssessor(curUserId);
detail.setAuthDept(curUserDepartIds);
});
sccDetailService.updateBatchById(detailInfoList);
break;
case MAIN_CHECK_USER_COLLECT: