update 强制撤回通用逻辑
This commit is contained in:
@@ -13,6 +13,9 @@ import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
|
||||
import com.jero.modules.activiti.enums.FinishFlagEnum;
|
||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||
import com.jero.modules.activiti.process.common.common.DraftCommon;
|
||||
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
|
||||
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
|
||||
import com.jero.modules.activiti.vo.DelegateTaskParam;
|
||||
import com.jero.modules.activiti.vo.ResolveTaskParam;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
@@ -53,6 +56,8 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
||||
private HistoryService historyService;
|
||||
@Resource
|
||||
private SendMessageAPI sendMessageAPI;
|
||||
@Resource
|
||||
private ProcessDraftService processDraftService;
|
||||
|
||||
public ProcessAll getByProcessInstanceId(String processInstanceId){
|
||||
LambdaQueryWrapper<ProcessAll> wrapper = new LambdaQueryWrapper<>();
|
||||
@@ -75,6 +80,12 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
||||
public void forcedWithdrawal(String processInstanceId) {
|
||||
//获得流程总表
|
||||
ProcessAll processAll = getByProcessInstanceId(processInstanceId);
|
||||
//删除所有草稿
|
||||
LambdaUpdateWrapper<ProcessDraft> processDraftUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
processDraftUpdateWrapper.eq(ProcessDraft::getProcessInstanceId, processInstanceId);
|
||||
processDraftUpdateWrapper.ne(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE);
|
||||
processDraftService.remove(processDraftUpdateWrapper);
|
||||
processDraftUpdateWrapper.clear();
|
||||
//业务表修改为草稿
|
||||
Integer prcType = processAll.getPrcType();
|
||||
WorkCenterService classByValue = null;
|
||||
@@ -84,6 +95,10 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
||||
}catch (Exception e) {
|
||||
log.error(e.getMessage(),e);
|
||||
}
|
||||
//修改提前储存的原始草稿状态
|
||||
processDraftUpdateWrapper.eq(ProcessDraft::getProcessInstanceId, processInstanceId);
|
||||
processDraftUpdateWrapper.set(ProcessDraft::getSaveSource, null);
|
||||
processDraftService.update(processDraftUpdateWrapper);
|
||||
//activiti撤销
|
||||
runtimeService.deleteProcessInstance(processInstanceId,"强制撤回");
|
||||
//删除流程总表
|
||||
|
||||
Reference in New Issue
Block a user