|
@@ -585,7 +585,8 @@ public class ActivitiServiceImpl implements ActivitiService {
|
|
if (Objects.isNull(task)) {
|
|
if (Objects.isNull(task)) {
|
|
throw ExceptionResultEnum.ERROR.exception("流程任务为空");
|
|
throw ExceptionResultEnum.ERROR.exception("流程任务为空");
|
|
}
|
|
}
|
|
- TFFlowApprove tfFlowApprove = tfFlowApproveService.findByFlowId(Long.parseLong(task.getProcessInstanceId()));
|
|
|
|
|
|
+ Long flowId = Long.parseLong(task.getProcessInstanceId());
|
|
|
|
+ TFFlowApprove tfFlowApprove = tfFlowApproveService.findByFlowId(flowId);
|
|
if (Objects.isNull(tfFlowApprove)) {
|
|
if (Objects.isNull(tfFlowApprove)) {
|
|
throw ExceptionResultEnum.ERROR.exception("未找到流程状态记录");
|
|
throw ExceptionResultEnum.ERROR.exception("未找到流程状态记录");
|
|
}
|
|
}
|
|
@@ -615,6 +616,30 @@ public class ActivitiServiceImpl implements ActivitiService {
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
taskService.deleteCandidateUser(taskId, String.valueOf(sysUser.getId()));
|
|
taskService.deleteCandidateUser(taskId, String.valueOf(sysUser.getId()));
|
|
taskService.addCandidateUser(taskId, userId);
|
|
taskService.addCandidateUser(taskId, userId);
|
|
|
|
+
|
|
|
|
+ QueryWrapper<ExamTask> examTaskQueryWrapper = new QueryWrapper<>();
|
|
|
|
+ examTaskQueryWrapper.lambda().eq(ExamTask::getFlowId, flowId);
|
|
|
|
+ ExamTask examTask = examTaskService.getOne(examTaskQueryWrapper);
|
|
|
|
+
|
|
|
|
+ String processDefinitionId = historyService.createHistoricProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult().getProcessDefinitionId();
|
|
|
|
+ ProcessDefinitionEntity processDefinitionEntity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(processDefinitionId);
|
|
|
|
+ //获取当前流程节点
|
|
|
|
+ String currActivityId = task.getTaskDefinitionKey();
|
|
|
|
+ BpmnModel bpmnModel = repositoryService.getBpmnModel(task.getProcessDefinitionId());
|
|
|
|
+ FlowNode currFlow = (FlowNode) bpmnModel.getMainProcess().getFlowElement(currActivityId);
|
|
|
|
+
|
|
|
|
+ SysUser exchangeUser = sysUserService.getById(userId);
|
|
|
|
+ //流程流水日志
|
|
|
|
+ TFFlowLog tfFlowLog = new TFFlowLog(sysUser.getSchoolId(), sysUser.getOrgId(), flowId, examTask.getId(), sysUser.getId(), sysUser.getRealName() + "转" + exchangeUser.getRealName() + "审批", FlowApproveOperationEnum.EXCHANGE);
|
|
|
|
+ if (currFlow instanceof UserTask) {
|
|
|
|
+ UserTask userTask = (UserTask) currFlow;
|
|
|
|
+ //广东医科大学流程
|
|
|
|
+ if (Objects.nonNull(processDefinitionEntity) && processDefinitionEntity.getKey().contains(SystemConstant.GDYKDX_FLOW_KEY)) {
|
|
|
|
+ FlowGdykdxApproveSetupEnum setupEnum = FlowGdykdxApproveSetupEnum.convertToInstance(userTask.getId());
|
|
|
|
+ tfFlowLog.setApproveSetup(setupEnum.getSetup());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ tfFlowLogService.save(tfFlowLog);
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
|