czh-20260626-修复我的已办历史流程无法删除

This commit is contained in:
zhihao
2026-06-26 08:28:31 +08:00
parent 8b3dd7fb8f
commit 0e4caedf57
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.shiro.util.Assert; import org.apache.shiro.util.Assert;
import org.flowable.engine.HistoryService;
import org.flowable.engine.RuntimeService; import org.flowable.engine.RuntimeService;
import org.flowable.engine.runtime.ProcessInstance; import org.flowable.engine.runtime.ProcessInstance;
import org.jeecg.common.api.vo.Result; import org.jeecg.common.api.vo.Result;
@@ -43,6 +44,8 @@ public class TaskTaskServiceImpl extends ServiceImpl<TaskTaskMapper, TaskTask> i
@Autowired @Autowired
private RuntimeService runtimeService; private RuntimeService runtimeService;
@Autowired @Autowired
private HistoryService historyService;
@Autowired
private ITaskApprovalOpinionService taskApprovalOpinionService; private ITaskApprovalOpinionService taskApprovalOpinionService;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public boolean singleFlowStart(TaskTask taskTask, String userName) throws Exception { public boolean singleFlowStart(TaskTask taskTask, String userName) throws Exception {
@@ -201,8 +204,10 @@ public class TaskTaskServiceImpl extends ServiceImpl<TaskTaskMapper, TaskTask> i
.count(); .count();
if (count > 0) { if (count > 0) {
runtimeService.deleteProcessInstance(processInstId, "删除单个流程"); runtimeService.deleteProcessInstance(processInstId, "删除单个流程");
log.info("成功中止运行中的流程实例: {}", processInstId); log.info("【督办-删除流程】中止运行中的流程实例, processInstId: {}", processInstId);
} }
historyService.deleteHistoricProcessInstance(processInstId);
log.info("【督办-删除流程】清除流程历史记录, processInstId: {}", processInstId);
taskApprovalOpinionService.remove( taskApprovalOpinionService.remove(
new LambdaQueryWrapper<TaskApprovalOpinion>() new LambdaQueryWrapper<TaskApprovalOpinion>()
.eq(TaskApprovalOpinion::getProcessInstId, processInstId)); .eq(TaskApprovalOpinion::getProcessInstId, processInstId));