mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-09-20 18:15:56 +08:00
update 调整事件办理
This commit is contained in:
parent
5de71bcf1d
commit
efc4f5cfbc
@ -10,10 +10,11 @@ package org.dromara.workflow.flowable.strategy;
|
|||||||
public interface FlowProcessEventHandler {
|
public interface FlowProcessEventHandler {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 执行办理任务监听 当状态为草稿,驳回,撤销时说明流程为申请人节点提交办理
|
* 执行办理任务监听
|
||||||
*
|
*
|
||||||
* @param processInstanceId 流程实例id
|
* @param businessKey 业务id
|
||||||
* @param status 状态
|
* @param status 状态
|
||||||
|
* @param submit 当为true时为申请人节点办理
|
||||||
*/
|
*/
|
||||||
void handleProcess(String processInstanceId, String status);
|
void handleProcess(String businessKey, String status, boolean submit);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,7 +13,8 @@ public interface FlowTaskEventHandler {
|
|||||||
/**
|
/**
|
||||||
* 执行办理任务监听
|
* 执行办理任务监听
|
||||||
*
|
*
|
||||||
* @param task 任务
|
* @param task 任务
|
||||||
|
* @param businessKey 业务id
|
||||||
*/
|
*/
|
||||||
void handleTask(Task task);
|
void handleTask(Task task, String businessKey);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,7 +18,7 @@ public class TestCustomProcessHandler implements FlowProcessEventHandler {
|
|||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleProcess(String processInstanceId, String status) {
|
public void handleProcess(String businessKey, String status, boolean submit) {
|
||||||
log.info("流程实例ID:" + processInstanceId + ",状态:" + status);
|
log.info("业务ID:" + businessKey + ",状态:" + status);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,7 +18,7 @@ import org.springframework.stereotype.Component;
|
|||||||
public class TestCustomTaskHandler implements FlowTaskEventHandler {
|
public class TestCustomTaskHandler implements FlowTaskEventHandler {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handleTask(Task task) {
|
public void handleTask(Task task, String businessKey) {
|
||||||
log.info("任务名称:" + task.getName());
|
log.info("任务名称:" + task.getName() + ",业务ID:" + businessKey);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -371,7 +371,7 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService
|
|||||||
runtimeService.deleteProcessInstance(processInvalidBo.getProcessInstanceId(), deleteReason);
|
runtimeService.deleteProcessInstance(processInvalidBo.getProcessInstanceId(), deleteReason);
|
||||||
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(historicProcessInstance.getProcessDefinitionKey());
|
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(historicProcessInstance.getProcessDefinitionKey());
|
||||||
if (processHandler != null) {
|
if (processHandler != null) {
|
||||||
processHandler.handleProcess(historicProcessInstance.getId(), BusinessStatusEnum.INVALID.getStatus());
|
processHandler.handleProcess(historicProcessInstance.getBusinessKey(), BusinessStatusEnum.INVALID.getStatus(), false);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -504,7 +504,7 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService
|
|||||||
runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.CANCEL.getStatus());
|
runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.CANCEL.getStatus());
|
||||||
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(processInstance.getProcessDefinitionKey());
|
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(processInstance.getProcessDefinitionKey());
|
||||||
if (processHandler != null) {
|
if (processHandler != null) {
|
||||||
processHandler.handleProcess(processInstanceId, BusinessStatusEnum.CANCEL.getStatus());
|
processHandler.handleProcess(processInstance.getBusinessKey(), BusinessStatusEnum.CANCEL.getStatus(), false);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|||||||
@ -154,14 +154,14 @@ public class ActTaskServiceImpl implements IActTaskService {
|
|||||||
String businessStatus = WorkflowUtils.getBusinessStatus(task.getProcessInstanceId());
|
String businessStatus = WorkflowUtils.getBusinessStatus(task.getProcessInstanceId());
|
||||||
if (BusinessStatusEnum.DRAFT.getStatus().equals(businessStatus) || BusinessStatusEnum.BACK.getStatus().equals(businessStatus) || BusinessStatusEnum.CANCEL.getStatus().equals(businessStatus)) {
|
if (BusinessStatusEnum.DRAFT.getStatus().equals(businessStatus) || BusinessStatusEnum.BACK.getStatus().equals(businessStatus) || BusinessStatusEnum.CANCEL.getStatus().equals(businessStatus)) {
|
||||||
if (processHandler != null) {
|
if (processHandler != null) {
|
||||||
processHandler.handleProcess(processInstance.getId(), businessStatus);
|
processHandler.handleProcess(processInstance.getBusinessKey(), businessStatus, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
runtimeService.updateBusinessStatus(task.getProcessInstanceId(), BusinessStatusEnum.WAITING.getStatus());
|
runtimeService.updateBusinessStatus(task.getProcessInstanceId(), BusinessStatusEnum.WAITING.getStatus());
|
||||||
String key = processInstance.getProcessDefinitionKey() + "_" + task.getTaskDefinitionKey();
|
String key = processInstance.getProcessDefinitionKey() + "_" + task.getTaskDefinitionKey();
|
||||||
FlowTaskEventHandler taskHandler = flowEventStrategy.getTaskHandler(key);
|
FlowTaskEventHandler taskHandler = flowEventStrategy.getTaskHandler(key);
|
||||||
if (taskHandler != null) {
|
if (taskHandler != null) {
|
||||||
taskHandler.handleTask(task);
|
taskHandler.handleTask(task, processInstance.getBusinessKey());
|
||||||
}
|
}
|
||||||
//办理意见
|
//办理意见
|
||||||
taskService.addComment(completeTaskBo.getTaskId(), task.getProcessInstanceId(), TaskStatusEnum.PASS.getStatus(), StringUtils.isBlank(completeTaskBo.getMessage()) ? "同意" : completeTaskBo.getMessage());
|
taskService.addComment(completeTaskBo.getTaskId(), task.getProcessInstanceId(), TaskStatusEnum.PASS.getStatus(), StringUtils.isBlank(completeTaskBo.getMessage()) ? "同意" : completeTaskBo.getMessage());
|
||||||
@ -176,7 +176,7 @@ public class ActTaskServiceImpl implements IActTaskService {
|
|||||||
UpdateBusinessStatusCmd updateBusinessStatusCmd = new UpdateBusinessStatusCmd(task.getProcessInstanceId(), BusinessStatusEnum.FINISH.getStatus());
|
UpdateBusinessStatusCmd updateBusinessStatusCmd = new UpdateBusinessStatusCmd(task.getProcessInstanceId(), BusinessStatusEnum.FINISH.getStatus());
|
||||||
managementService.executeCommand(updateBusinessStatusCmd);
|
managementService.executeCommand(updateBusinessStatusCmd);
|
||||||
if (processHandler != null) {
|
if (processHandler != null) {
|
||||||
processHandler.handleProcess(processInstance.getId(), BusinessStatusEnum.FINISH.getStatus());
|
processHandler.handleProcess(processInstance.getBusinessKey(), BusinessStatusEnum.FINISH.getStatus(), false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
sendMessage(list, processInstance.getName(), completeTaskBo.getMessageType(), null);
|
sendMessage(list, processInstance.getName(), completeTaskBo.getMessageType(), null);
|
||||||
@ -443,7 +443,7 @@ public class ActTaskServiceImpl implements IActTaskService {
|
|||||||
runtimeService.updateBusinessStatus(task.getProcessInstanceId(), BusinessStatusEnum.TERMINATION.getStatus());
|
runtimeService.updateBusinessStatus(task.getProcessInstanceId(), BusinessStatusEnum.TERMINATION.getStatus());
|
||||||
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(historicProcessInstance.getProcessDefinitionKey());
|
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(historicProcessInstance.getProcessDefinitionKey());
|
||||||
if (processHandler != null) {
|
if (processHandler != null) {
|
||||||
processHandler.handleProcess(historicProcessInstance.getId(), BusinessStatusEnum.TERMINATION.getStatus());
|
processHandler.handleProcess(historicProcessInstance.getBusinessKey(), BusinessStatusEnum.TERMINATION.getStatus(), false);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -616,7 +616,7 @@ public class ActTaskServiceImpl implements IActTaskService {
|
|||||||
runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.BACK.getStatus());
|
runtimeService.updateBusinessStatus(processInstanceId, BusinessStatusEnum.BACK.getStatus());
|
||||||
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(processInstance.getProcessDefinitionKey());
|
FlowProcessEventHandler processHandler = flowEventStrategy.getProcessHandler(processInstance.getProcessDefinitionKey());
|
||||||
if (processHandler != null) {
|
if (processHandler != null) {
|
||||||
processHandler.handleProcess(processInstanceId, BusinessStatusEnum.BACK.getStatus());
|
processHandler.handleProcess(processInstance.getBusinessKey(), BusinessStatusEnum.BACK.getStatus(), false);
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new ServiceException(e.getMessage());
|
throw new ServiceException(e.getMessage());
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user