fix(企标稽查计划流程): 81837
This commit is contained in:
+36
@@ -10,17 +10,23 @@ import com.jero.common.util.MessageUtils;
|
||||
import com.jero.common.util.SnowflakeUtils;
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import com.jero.modules.activiti.entity.ProcessNode;
|
||||
import com.jero.modules.activiti.enums.CommitFlagEnum;
|
||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||
import com.jero.modules.activiti.enums.VariableTypeEnum;
|
||||
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
||||
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
|
||||
import com.jero.modules.activiti.process.esinspectplan.common.EsInspectPlanCommon;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeService;
|
||||
import com.jero.modules.activiti.util.SpringContextUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.bpmn.model.Process;
|
||||
import org.activiti.bpmn.model.UserTask;
|
||||
import org.activiti.engine.HistoryService;
|
||||
import org.activiti.engine.RepositoryService;
|
||||
import org.activiti.engine.RuntimeService;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.history.HistoricProcessInstance;
|
||||
import org.activiti.engine.task.Task;
|
||||
@@ -61,6 +67,12 @@ public class ProcessAspect {
|
||||
private ProcessApprovalRecordService processApprovalRecordService;
|
||||
@Resource
|
||||
private ProcessDraftService processDraftService;
|
||||
@Resource
|
||||
private RuntimeService runtimeService;
|
||||
@Resource
|
||||
private ProcessAllService processAllService;
|
||||
@Resource
|
||||
private ProcessNodeService processNodeService;
|
||||
private static final String PROCESS_ALL = "processAll";
|
||||
private static final List<String> SPECIAL_NODE = Arrays.asList(EsInspectPlanCommon.PROCESS_NODE_3);
|
||||
private static final String SAVE_BY_DRAFT = "2";
|
||||
@@ -258,6 +270,30 @@ public class ProcessAspect {
|
||||
log.info("==========流程发起、审批、驳回。删除草稿后置方法结束==========");
|
||||
}
|
||||
|
||||
|
||||
@AfterReturning("processServiceFlowTransfer()")
|
||||
public void doAfterFlowTransfer(JoinPoint jp) {
|
||||
log.info("==========流程转办后置方法开始==========");
|
||||
if (!Objects.isNull(jp.getArgs())) {
|
||||
String taskId = JSON.parseObject(JSON.toJSONString(jp.getArgs()[0]), String.class);
|
||||
String userId = JSON.parseObject(JSON.toJSONString(jp.getArgs()[1]), String.class);
|
||||
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getToDoByTaskId(taskId);
|
||||
String processInstanceId = processApprovalRecord.getProcessInstanceId();
|
||||
ProcessAll processAll = processAllService.getByProcessInstanceId(processInstanceId);
|
||||
TaskService taskService = SpringContextUtil.getBean(TaskService.class);
|
||||
Task task = taskService.createTaskQuery().taskId(processApprovalRecord.getTaskId()).singleResult();
|
||||
// 查询节点信息
|
||||
ProcessNode processNode = processNodeService.getOne(
|
||||
new LambdaQueryWrapper<ProcessNode>()
|
||||
.eq(ProcessNode::getProcessDefinitionId, processAll.getProcessDefinitionId())
|
||||
.eq(ProcessNode::getXmlNodeId, processApprovalRecord.getNodeId()));
|
||||
if (!Objects.isNull(processNode) && VariableTypeEnum.STRING.getName().equals(processNode.getVariableType())){
|
||||
runtimeService.setVariable(task.getExecutionId(), processNode.getVariableName(), userId);
|
||||
}
|
||||
}
|
||||
log.info("==========流程转办后置方法结束==========");
|
||||
}
|
||||
|
||||
private static void setProperty(LoginUser loginUser, String infoJsonStr, ProcessApprovalRecord processApprovalRecord, ProcessAll processAll, ProcessDraft processDraft) {
|
||||
// 属性拷贝
|
||||
BeanUtils.copyProperties(processAll, processDraft);
|
||||
|
||||
+1
-11
@@ -3,15 +3,11 @@ package com.jero.modules.activiti.process.esinspect.service.impl;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import com.jero.modules.activiti.process.esinspect.common.EsInspectCommon;
|
||||
import com.jero.modules.activiti.process.esinspect.entity.ProcessEsInspect;
|
||||
import com.jero.modules.activiti.process.esinspect.service.IProcessEsInspectService;
|
||||
import com.jero.modules.activiti.service.WorkCenterService;
|
||||
import com.jero.modules.activiti.util.SpringContextUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.RuntimeService;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.task.Task;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@@ -41,12 +37,6 @@ public class EsInspectFlow implements WorkCenterService {
|
||||
|
||||
@Override
|
||||
public void handleTransfer(ProcessAll processAll, ProcessApprovalRecord processApprovalRecord, String toUserId) {
|
||||
if (EsInspectCommon.PROCESS_NODE_2.equals(processApprovalRecord.getNodeId())
|
||||
|| EsInspectCommon.PROCESS_NODE_4.equals(processApprovalRecord.getNodeId())){
|
||||
RuntimeService runtimeService = SpringContextUtil.getBean(RuntimeService.class);
|
||||
TaskService taskService = SpringContextUtil.getBean(TaskService.class);
|
||||
Task task = taskService.createTaskQuery().taskId(processApprovalRecord.getTaskId()).singleResult();
|
||||
runtimeService.setVariable(task.getExecutionId(), "leader", toUserId);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user