diff --git a/src/main/java/com/wflow/workflow/task/ApprovalTimeoutServiceTask.java b/src/main/java/com/wflow/workflow/task/ApprovalTimeoutServiceTask.java index 44b7c66..b491561 100644 --- a/src/main/java/com/wflow/workflow/task/ApprovalTimeoutServiceTask.java +++ b/src/main/java/com/wflow/workflow/task/ApprovalTimeoutServiceTask.java @@ -46,22 +46,26 @@ public class ApprovalTimeoutServiceTask implements JavaDelegate { public void execute(DelegateExecution execution) { //执行审批超期逻辑 log.info("执行审批超期逻辑"); - FlowElement element = execution.getCurrentFlowElement(); - String[] split = element.getId().split("-"); - Map variable = execution.getVariable(WflowGlobalVarDef.WFLOW_NODE_PROPS, Map.class); - ApprovalProps props = (ApprovalProps) variable.get(split[0]); - ApprovalProps.TimeLimit timeLimit = props.getTimeLimit(); - log.info("执行审批超期逻辑timeLimit.getHandler().getType" + timeLimit.getHandler().getType()); - switch (timeLimit.getHandler().getType()) { - case PASS: //自动代替审批人处理同意审批 - handlerApprovalTask(execution.getProcessInstanceId(), split[0], true); - break; - case NOTIFY: //发送通知 - sendNotify(execution); - break; - default: //自动代替审批人处理拒绝审批 - handlerApprovalTask(execution.getProcessInstanceId(), split[0], false); - break; + try { + FlowElement element = execution.getCurrentFlowElement(); + String[] split = element.getId().split("-"); + Map variable = execution.getVariable(WflowGlobalVarDef.WFLOW_NODE_PROPS, Map.class); + ApprovalProps props = (ApprovalProps) variable.get(split[0]); + ApprovalProps.TimeLimit timeLimit = props.getTimeLimit(); + log.info("执行审批超期逻辑timeLimit.getHandler().getType" + timeLimit.getHandler().getType()); + switch (timeLimit.getHandler().getType()) { + case PASS: //自动代替审批人处理同意审批 + handlerApprovalTask(execution.getProcessInstanceId(), split[0], true); + break; + case NOTIFY: //发送通知 + sendNotify(execution); + break; + default: //自动代替审批人处理拒绝审批 + handlerApprovalTask(execution.getProcessInstanceId(), split[0], false); + break; + } + } catch (Exception e) { + log.info("执行审批超期逻辑异常:",e); } }