update 调整修改流程分类后更新流程分类编码

This commit is contained in:
songgaoshuai 2023-08-25 16:04:41 +08:00
parent 313841839b
commit 5318c8e68e
4 changed files with 25 additions and 1 deletions

View File

@ -18,6 +18,7 @@ import org.dromara.demo.domain.vo.TestLeaveVo;
import org.dromara.demo.domain.TestLeave;
import org.dromara.demo.mapper.TestLeaveMapper;
import org.dromara.demo.service.ITestLeaveService;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@ -112,6 +113,7 @@ public class TestLeaveServiceImpl implements ITestLeaveService {
* 批量删除请假
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean deleteWithValidByIds(Collection<Long> ids) {
List<String> idList = StreamUtils.toList(ids, String::valueOf);
iActProcessInstanceService.deleteRuntimeProcessAndHisInstByBusinessKeys(idList);

View File

@ -430,6 +430,7 @@ public class ActProcessInstanceServiceImpl implements IActProcessInstanceService
* @param processInstanceIds 流程实例id
*/
@Override
@Transactional(rollbackFor = Exception.class)
public boolean deleteFinishProcessAndHisInst(List<String> processInstanceIds) {
try {
historyService.bulkDeleteHistoricProcessInstances(processInstanceIds);

View File

@ -5,12 +5,17 @@ import org.dromara.common.core.utils.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.flowable.engine.RepositoryService;
import org.flowable.engine.repository.Deployment;
import org.flowable.engine.repository.Model;
import org.flowable.engine.repository.ProcessDefinition;
import org.springframework.stereotype.Service;
import org.dromara.workflow.domain.bo.WfCategoryBo;
import org.dromara.workflow.domain.vo.WfCategoryVo;
import org.dromara.workflow.domain.WfCategory;
import org.dromara.workflow.mapper.WfCategoryMapper;
import org.dromara.workflow.service.IWfCategoryService;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Collection;
@ -27,6 +32,8 @@ public class WfCategoryServiceImpl implements IWfCategoryService {
private final WfCategoryMapper baseMapper;
private final RepositoryService repositoryService;
/**
* 查询流程分类
*/
@ -70,9 +77,24 @@ public class WfCategoryServiceImpl implements IWfCategoryService {
* 修改流程分类
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean updateByBo(WfCategoryBo bo) {
WfCategory update = MapstructUtils.convert(bo, WfCategory.class);
validEntityBeforeSave(update);
WfCategoryVo wfCategoryVo = baseMapper.selectVoById(bo.getId());
List<ProcessDefinition> processDefinitionList = repositoryService.createProcessDefinitionQuery().processDefinitionCategory(wfCategoryVo.getCategoryCode()).list();
for (ProcessDefinition processDefinition : processDefinitionList) {
repositoryService.setProcessDefinitionCategory(processDefinition.getId(),bo.getCategoryCode());
}
List<Deployment> deploymentList = repositoryService.createDeploymentQuery().deploymentCategory(wfCategoryVo.getCategoryCode()).list();
for (Deployment deployment : deploymentList) {
repositoryService.setDeploymentCategory(deployment.getId(),bo.getCategoryCode());
}
List<Model> modelList = repositoryService.createModelQuery().modelCategory(wfCategoryVo.getCategoryCode()).list();
for (Model model : modelList) {
model.setCategory(bo.getCategoryCode());
repositoryService.saveModel(model);
}
return baseMapper.updateById(update) > 0;
}

View File

@ -277,7 +277,6 @@ public class WorkflowUtils {
HistoricTaskInstance historicTaskInstance = PROCESS_ENGINE.getHistoryService().createHistoricTaskInstanceQuery().taskId(taskId).taskTenantId(TenantHelper.getTenantId()).singleResult();
HistoricProcessInstance historicProcessInstance = PROCESS_ENGINE.getHistoryService().createHistoricProcessInstanceQuery()
.processInstanceId(historicTaskInstance.getProcessInstanceId()).processInstanceTenantId(TenantHelper.getTenantId()).singleResult();
return historicProcessInstance.getBusinessStatus();
}