流程-作废
- 项目上的逻辑 原本打算做撤回 提交申请 然后不想提交了 打算撤回 当前撤回的流程不需要了 需要从新提交一个新的流程 这样看来 我就直接作废那个流程 也不需要做撤回 能实现就是好的 。
其实这样的话非常简单 做完之后 判断一下只要有审批完的 就不能作废,下面是代码。
Controller
@GetMapping("/processCancell")
@ApiOperation(value = "流程作废",httpMethod = "GET", notes = "流程作废")
public ResponseVo processCancell(String processInstanceId,String cancelReason){
jbpmProcessinstanceService.processCancel(processInstanceId,cancelReason);
return new ResponseVo();
}
Service
public void processCancell(String processInstanceId,String cancelReason){
QueryWrapper<JbpmWfApprove> qw = new QueryWrapper<>();
qw.eq("activiti_instance_id",processInstanceId);
qw.eq("is_del",0);
List<JbpmWfApprove> jbpmWfApproves = jbpmWfApproveService.getBaseMapper().selectList(qw);
if(jbpmWfApproves!=null && jbpmWfApproves.size()>0){
throw new JbpmProcessinstanceException(JbpmProcessinstanceErrorCode.JbpmProcessinstance_CATE_CANNOT_CLAIM_ERROR.getCode());
}else {
runtimeService.deleteProcessInstance(processInstanceId,cancelReason);
}
}