fix:87383
This commit is contained in:
+4
-12
@@ -10,6 +10,7 @@ import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.activiti.common.ActivitiCommon;
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import com.jero.modules.activiti.enums.CommitFlagEnum;
|
||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||
import com.jero.modules.activiti.process.common.enums.ProcessType;
|
||||
@@ -178,22 +179,13 @@ public class ProcessMarketStandardReleaseServiceImpl extends ServiceImpl<Process
|
||||
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId);
|
||||
// 更新审批表为完成,填充数据
|
||||
actFlowCommonService.updateApprovalInfo(processTask, taskId);
|
||||
// 驳回,结束所有节点
|
||||
if(!pass){
|
||||
LambdaUpdateWrapper<ProcessApprovalRecord> update = new LambdaUpdateWrapper<>();
|
||||
update.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId);
|
||||
update.ne(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.COMPLETE.getValue());
|
||||
update.eq(ProcessApprovalRecord::getNodeId,xmlNodeId);
|
||||
update.set(ProcessApprovalRecord::getCommitText,"未处理");
|
||||
update.set(ProcessApprovalRecord::getCommitFlag,ActivitiCommon.COMMIT_FLAG3);
|
||||
update.set(ProcessApprovalRecord::getFinishFlag,FinishFlagEnum.COMPLETE.getValue());
|
||||
update.set(ProcessApprovalRecord::getEndTime,new Date());
|
||||
processApprovalRecordService.update(update);
|
||||
}
|
||||
|
||||
runtimeService.setVariable(processInstanceId, PASS, pass);
|
||||
// 审批节点
|
||||
actFlowCommonService.completeTask(taskId, userId);
|
||||
|
||||
// 驳回,结束所有节点
|
||||
processApprovalRecordService.updateApprovalRecordFinishFlag(pass, taskId, xmlNodeId, processInstanceId);
|
||||
// 保存快照
|
||||
// 获取流程通用数据
|
||||
ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId);
|
||||
|
||||
+24
@@ -4,11 +4,13 @@ import cn.hutool.core.collection.CollUtil;
|
||||
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.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import com.jero.modules.activiti.enums.CommitFlagEnum;
|
||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||
import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper;
|
||||
import com.jero.modules.activiti.process.common.entity.ProcessSnapshot;
|
||||
@@ -132,4 +134,26 @@ public class ProcessApprovalRecordService extends ServiceImpl<ProcessApprovalRec
|
||||
processAllLambdaQueryWrapper.eq(ProcessApprovalRecord::getProcessInstanceId, oldPrcId);
|
||||
remove(processAllLambdaQueryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param pass false 驳回
|
||||
* @param taskId 任务id
|
||||
* @param xmlNodeId 节点
|
||||
* @param processInstanceId 实例
|
||||
*/
|
||||
public void updateApprovalRecordFinishFlag(boolean pass, String taskId, String xmlNodeId, String processInstanceId) {
|
||||
if(!pass){
|
||||
// 其他会签人员审批信息,更新状态为未处理
|
||||
update(
|
||||
new LambdaUpdateWrapper<ProcessApprovalRecord>()
|
||||
.eq(ProcessApprovalRecord::getProcessInstanceId, processInstanceId)
|
||||
.eq(ProcessApprovalRecord::getNodeId, xmlNodeId)
|
||||
.isNull(ProcessApprovalRecord::getEndTime)
|
||||
.ne(ProcessApprovalRecord::getTaskId, taskId)
|
||||
.set(ProcessApprovalRecord::getCommitText, CommitFlagEnum.UNDISPOSED.getName())
|
||||
.set(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.SUSPEND.getValue()));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user