fix: 81059 企标计划立项/变更流程--两个领导节点的页面显示节点名称与节点不一致

This commit is contained in:
2024-01-26 14:12:15 +08:00
parent 55d0df4eef
commit 61ba14e25d
@@ -1,13 +1,17 @@
package com.jero.modules.activiti.service;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.modules.activiti.entity.ProcessAll;
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
import com.jero.modules.activiti.enums.FinishFlagEnum;
import com.jero.modules.activiti.enums.ProcessTypeEnum;
import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper;
import com.jero.modules.activiti.process.esInitChange.entity.EsInitChangeConstant;
import com.jero.modules.laws.common.util.CurrentUserUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@@ -27,6 +31,10 @@ import java.util.Objects;
public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRecordMapper, ProcessApprovalRecord> {
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private ProcessAllService processAllService;
public ProcessApprovalRecord getToDoByTaskId(String taskId){
LambdaQueryWrapper<ProcessApprovalRecord> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProcessApprovalRecord::getTaskId,taskId);
@@ -64,9 +72,48 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
record.setCommitFile(null);
}
}
// 立项变更流程任务节点名称特殊后处理
String processInstanceId = processApprovalRecord.getProcessInstanceId();
if (StrUtil.isNotBlank(processInstanceId)){
ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper<ProcessAll>().eq(ProcessAll::getProcessInstanceId, processInstanceId));
if (Objects.equals(processAll.getPrcType(), ProcessTypeEnum.ES_INIT_CHANGE.getValue())){
specialProcessInitChangeTaskName(records);
}
}
return pageList;
}
private void specialProcessInitChangeTaskName(List<ProcessApprovalRecord> records) {
boolean hasExpertCheckNode = false;
// 遍历审批记录,将任务节点名称特殊处理
for (ProcessApprovalRecord record : records) {
String nodeName = record.getTaskName();
if (StrUtil.isNotBlank(nodeName)){
if (nodeName.equals(EsInitChangeConstant.EXPERT_CHECK)) {
hasExpertCheckNode = true;
}
}
}
for (ProcessApprovalRecord record : records) {
String nodeName = record.getTaskName();
if (StrUtil.isNotBlank(nodeName)){
if (Objects.equals(nodeName, EsInitChangeConstant.MAIN_DRAFT_USER_LEADER) && hasExpertCheckNode) {
record.setTaskName("发起人主管级领导审批");
}
if (Objects.equals(nodeName, EsInitChangeConstant.MAIN_DRAFT_USER_LEADER_LEADER) && hasExpertCheckNode) {
record.setTaskName("发起人主管级上一级领导审批");
}
if (Objects.equals(nodeName, EsInitChangeConstant.MAIN_DRAFT_USER_LEADER) && !hasExpertCheckNode) {
record.setTaskName("主起草人主管级领导审批");
}
if (Objects.equals(nodeName, EsInitChangeConstant.MAIN_DRAFT_USER_LEADER_LEADER) && !hasExpertCheckNode) {
record.setTaskName("主起草人主管级上一级领导审批");
}
}
}
}
public ProcessApprovalRecord getMyLastComplete(String processInstanceId, String nodeId, String userId) {
LambdaQueryWrapper<ProcessApprovalRecord> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId);