fix: scc流程人员信息页面修正

This commit is contained in:
2024-07-18 10:23:44 +08:00
parent b7e9f7d363
commit 7337f33b39
3 changed files with 16 additions and 3 deletions
@@ -251,6 +251,11 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId);
String xmlNodeId = record.getNodeId();
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
BasicProcessInfoDTO processInfo = new BasicProcessInfoDTO();
// 使用流程引擎根据taskId找到流程实例Id
String mainInstanceId = (String) taskService.getVariable(taskId, MAIN_INSTANCE_ID);
processInfo.setProcessInstanceId(mainInstanceId);
processInfoVO.setBasicProcessInfoDTO(processInfo);
// 更新审批表为完成,填充数据
actFlowCommonService.updateApprovalInfo(processTask, taskId);
String curUserId = UserUtils.getUserId();
@@ -376,6 +381,8 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
actFlowCommonService.updateApprovalInfo(processTask, taskId);
// 删除草稿
actFlowCommonService.removeDraft(curUserId, taskId, processInstanceId);
// 保存快照
processHandleService.saveToSnapshot(processInfoVO, curUserId);
}
@Override
@@ -61,7 +61,7 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
}
public Page<ProcessApprovalRecord> pageList(Page<ProcessApprovalRecord> page, ProcessApprovalRecord processApprovalRecord, String type, HttpServletRequest req) {
boolean allSnapshotFlag = !type.equals(COMPLETED_RECORD_LIST);
boolean allSnapshotFlag = type.equals(ALL_RECORD_LIST);
String curUserId = UserUtils.getUserId();
QueryWrapper<ProcessApprovalRecord> wrapper = new QueryWrapper<>();
if (StringUtils.isNotBlank(processApprovalRecord.getFinishFlagSearch())){
@@ -1,6 +1,8 @@
package com.jero.modules.activiti.service;
import cn.hutool.core.collection.CollStreamUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.YesOrNoEnum;
@@ -23,7 +25,7 @@ import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static com.jero.modules.activiti.common.ActivitiCommon.*;
import static com.jero.modules.activiti.common.ActivitiCommon.DISTRIBUTE;
import static com.jero.modules.activiti.process.standardComplianceCheck.common.ProcessStandardComplianceCheckConstants.*;
/**
@@ -130,9 +132,13 @@ public class ProcessNodeService extends ServiceImpl<ProcessNodeMapper, ProcessNo
}
private void specialProcessScc(List<ProcessNode> processNodeList, String processInstanceId) {
if (StrUtil.isBlank(processInstanceId)) {
return;
}
// 如果没分发 则不显示 主排查人单线审核 主排查人汇总节点
String mainInstanceId = (String) runtimeService.getVariable(processInstanceId, ActivitiCommon.MAIN_INSTANCE_ID);
boolean distribute = (boolean) runtimeService.getVariable(mainInstanceId, DISTRIBUTE);
Object variable = runtimeService.getVariable(mainInstanceId, DISTRIBUTE);
boolean distribute = ObjectUtil.isNotNull(variable) && YesOrNoEnum.YES.getValue().equals(variable.toString());
if (!distribute) {
processNodeList.removeIf( v -> v.getXmlNodeId().equals(MAIN_CHECK_USER_APPROVAL)
|| v.getXmlNodeId().equals(MAIN_CHECK_USER_COLLECT));