1. 概要
在平台中会签节点,有默认的会签投票规则,按照票数需要或意见将会签处理。还有些情况是不一定按照投票完成,比如 审批人是某领导,这个时候就直接完成。还有在会签完成之后,客户需要做一些其他的动作。这些可以使用脚本完成。
2. 使用脚本判定完成
2.1 脚本编写方法
脚本上下文数据
参数 | 说明 |
---|---|
ticketCount | 投票结果 |
approveTimes | 审批次数 |
instanceOfNumbers | 总的审批实例数 |
ticketCount对象结构
com.redxun.bpm.core.service.TicketCount
class TicketCount{
public TicketCount(){
}
public TicketCount(int passCount,int refuseCount){
this.passCount=passCount;
this.refuseCount=refuseCount;
}
//通过票数
int passCount=0;
//反对票数
int refuseCount=0;
//总投票数
int totalCount=0;
}
脚本返回:
脚本需要返回一个VoteResult 的对象实例。
类的全路径如下:com.redxun.bpm.core.entity.VoteResult
代码结构如下:
public class VoteResult{
public VoteResult(){
}
public VoteResult(Boolean completed, Boolean result){
this.completed=completed;
this.result=result;
}
/**
* 投票是否完成
*/
private Boolean completed=false;
/**
* 通过状态。(通过还是拒绝)
*/
private Boolean result=false;
}
2.2 脚本示例
2.2.1 业务需求:
在会签审批是,当审批人是总经理,那么会签直接完成,并且会签结果以他的意见为准。
2.2.2 配置方式如下
在流程设计器中配置如下:
脚本如下:
import com.redxun.bpm.core.entity.VoteResult;
//判断当前人是否是总经理角色。
boolean rtn=OrgUserApi.isInGroup("zjl") ;
boolean result="AGREE".equals(cmd.checkType);
return new VoteResult(rtn,result);
这段脚本的意思是,当当前审批人是总经理的情况下,会签审批就直接完成,否则会等待所有的人员审批完成,会签结果以当前人的意见为准。
文档更新时间: 2022-01-20 14:53 作者:zyg