同一个环节在多人顺序或者同时处理时有些操作是需要最后一个人处理时才执行的,那么就需要判断一下是否最后一个人处理
可以在onAfterAdvaneQuery或者onAfterAdvance中做判断
前端可以在process组件的事件中处理如下:
Model.prototype.processAfterAdvance = function(event){ var processControl = event.processControl; var flowTos = processControl.getToItems(); if(flowTos.length>0){//判断是最后一个人处理 alert("onAfterAdvance最后一个人处理"); } }; Model.prototype.processAfterAdvanceQuery = function(event){ var processControl = event.processControl; var flowTos = processControl.getToItems(); if(flowTos.length>0){//判断是最后一个人处理 alert("AfterAdvanceQuery最后一个人处理"); } };
后端可以在环节的事件处理,也可以在整个流程的事件处理,整个流程上处理是需要判断一下环节,下面是在环节事件上处理的
public static void businessActivity4AfterAdvance() { ProcessControl flowControl = (ProcessControl) ContextHelper.getActionContext().getParameter("control"); List<ProcessControlItem> flowTos = flowControl.getFlowTos(); if(flowTos.size()>0){ System.out.println("onAfterAdvance最后一个人处理"); } } public static void businessActivity4AfterAdvanceQuery() { ProcessControl control = (ProcessControl) ContextHelper.getActionContext().getActionResult(); List<ProcessControlItem> flowTos = control.getFlowTos(); if(flowTos.size()>0){ System.out.println("onAfterAdvanceQuery最后一个人处理"); } }
评一波