fix: 81853 企标更改流程--流程进行中,企标删除成功了
This commit is contained in:
+5
@@ -20,4 +20,9 @@ public interface ProcessEsChangeService extends IService<ProcessEsChange> {
|
|||||||
|
|
||||||
void approval(ESChangeDataVO changeData, boolean pass);
|
void approval(ESChangeDataVO changeData, boolean pass);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查是否在流程中,如果在流程中则不允许删除
|
||||||
|
* @param ids
|
||||||
|
*/
|
||||||
|
void delCheck(String ids);
|
||||||
}
|
}
|
||||||
|
|||||||
+40
@@ -7,6 +7,8 @@ import com.jero.common.api.vo.ResultCommon;
|
|||||||
import com.jero.common.aspect.TranslationAspect;
|
import com.jero.common.aspect.TranslationAspect;
|
||||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
|
import com.jero.modules.activiti.entity.ProcessAll;
|
||||||
|
import com.jero.modules.activiti.enums.ProcessStatusEnum;
|
||||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||||
import com.jero.modules.activiti.process.common.entity.CommonVO;
|
import com.jero.modules.activiti.process.common.entity.CommonVO;
|
||||||
import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants;
|
import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants;
|
||||||
@@ -25,6 +27,7 @@ import com.jero.modules.activiti.process.esChange.mapper.ProcessEsChangeMapper;
|
|||||||
import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO;
|
import com.jero.modules.activiti.process.fb.dto.BasicProcessInfoDTO;
|
||||||
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
|
||||||
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
import com.jero.modules.activiti.process.fb.vo.ProcessInfoVO;
|
||||||
|
import com.jero.modules.activiti.service.ProcessAllService;
|
||||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
||||||
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
||||||
@@ -40,6 +43,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author ThinkBook
|
* @author ThinkBook
|
||||||
@@ -76,6 +80,9 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl<ProcessEsChangeMappe
|
|||||||
@Resource
|
@Resource
|
||||||
private TranslationAspect translationAspect;
|
private TranslationAspect translationAspect;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ProcessAllService processAllService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void startProcess(ESChangeDataVO changeData) {
|
public void startProcess(ESChangeDataVO changeData) {
|
||||||
// 执行流程发起前的操作
|
// 执行流程发起前的操作
|
||||||
@@ -255,6 +262,39 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl<ProcessEsChangeMappe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void delCheck(String ids) {
|
||||||
|
String[] idsList = ids.split(",");
|
||||||
|
// 找到所有进行中的企标修改流程
|
||||||
|
LambdaQueryWrapper<ProcessAll> processAllWrapper = new LambdaQueryWrapper<>();
|
||||||
|
processAllWrapper.eq(ProcessAll::getPrcType, ProcessTypeEnum.ES_CHANGE.getValue());
|
||||||
|
processAllWrapper.eq(ProcessAll::getPrcStatus, ProcessStatusEnum.INCOMPLETE.getValue());
|
||||||
|
List<ProcessAll> processAllList = processAllService.list(processAllWrapper);
|
||||||
|
if (processAllList.isEmpty()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 获取所有流程实例ID
|
||||||
|
List<String> processInstanceIdList = new ArrayList<>();
|
||||||
|
for (ProcessAll processAll : processAllList) {
|
||||||
|
processInstanceIdList.add(processAll.getProcessInstanceId());
|
||||||
|
}
|
||||||
|
// 根据所有流程实例Id找到相应的企标修改流程
|
||||||
|
LambdaQueryWrapper<ProcessEsChange> processEsChangeWrapper = new LambdaQueryWrapper<>();
|
||||||
|
processEsChangeWrapper.in(ProcessEsChange::getProcessInstanceId, processInstanceIdList);
|
||||||
|
List<ProcessEsChange> processEsChangeList = list(processEsChangeWrapper);
|
||||||
|
Map<String, List<ProcessEsChange>> processEsChangeMap = processEsChangeList.stream()
|
||||||
|
.filter(e -> e.getStandardId() != null)
|
||||||
|
.collect(Collectors.groupingBy(ProcessEsChange::getStandardId));
|
||||||
|
// 判断是否有进行中的企标修改流程
|
||||||
|
for (String id : idsList) {
|
||||||
|
if (processEsChangeMap.containsKey(id)) {
|
||||||
|
List<ProcessEsChange> processEsChanges = processEsChangeMap.get(id);
|
||||||
|
throw new JeroBootException("标准编号为:" + processEsChanges.get(0).getStandardNumber() + "已在企标变更流程进行中,不可删除!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+8
@@ -8,6 +8,7 @@ import com.jero.common.api.vo.Result;
|
|||||||
import com.jero.common.aspect.annotation.AutoLog;
|
import com.jero.common.aspect.annotation.AutoLog;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.common.util.MessageUtils;
|
import com.jero.common.util.MessageUtils;
|
||||||
|
import com.jero.modules.activiti.process.esChange.service.ProcessEsChangeService;
|
||||||
import com.jero.modules.compare.service.ISarFileCompareInfoService;
|
import com.jero.modules.compare.service.ISarFileCompareInfoService;
|
||||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
@@ -80,6 +81,9 @@ public class LawsEnterpriseController {
|
|||||||
@Resource
|
@Resource
|
||||||
private ILawsCustomCompareInfoService customCompareService;
|
private ILawsCustomCompareInfoService customCompareService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ProcessEsChangeService esChangeService;
|
||||||
|
|
||||||
private static final String MODULE_VALUE = TableNameEnum.ENTERPRISE_STANDARDS.getValue();
|
private static final String MODULE_VALUE = TableNameEnum.ENTERPRISE_STANDARDS.getValue();
|
||||||
|
|
||||||
@AutoLog(value = "企业法规标准-分页列表查询")
|
@AutoLog(value = "企业法规标准-分页列表查询")
|
||||||
@@ -183,6 +187,8 @@ public class LawsEnterpriseController {
|
|||||||
if (!auth) {
|
if (!auth) {
|
||||||
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.NO_AUTH));
|
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.NO_AUTH));
|
||||||
}
|
}
|
||||||
|
// 检查是否在企标更改流程中,如果在流程中则不允许删除
|
||||||
|
esChangeService.delCheck((String) parameterMap.get("ids"));
|
||||||
//删除标准时同步删除这个标准的收藏数据
|
//删除标准时同步删除这个标准的收藏数据
|
||||||
lawsStandardCollectionService.deleteByStandardId((String) parameterMap.get("ids"));
|
lawsStandardCollectionService.deleteByStandardId((String) parameterMap.get("ids"));
|
||||||
lawsStandardSharingService.deleteByStandardId((String) parameterMap.get("ids"));
|
lawsStandardSharingService.deleteByStandardId((String) parameterMap.get("ids"));
|
||||||
@@ -201,6 +207,8 @@ public class LawsEnterpriseController {
|
|||||||
public Result<String> singleDelete(@RequestBody @ApiParam(name = "ids", value = "主键(多个用逗号分隔)") Map<String,Object> parameterMap) {
|
public Result<String> singleDelete(@RequestBody @ApiParam(name = "ids", value = "主键(多个用逗号分隔)") Map<String,Object> parameterMap) {
|
||||||
// 水平越权校验
|
// 水平越权校验
|
||||||
esAuthUserService.isDeleteHorizontalOverstep((String) parameterMap.get("ids"));
|
esAuthUserService.isDeleteHorizontalOverstep((String) parameterMap.get("ids"));
|
||||||
|
// 检查是否在企标更改流程中,如果在流程中则不允许删除
|
||||||
|
esChangeService.delCheck((String) parameterMap.get("ids"));
|
||||||
// 删除标准时同步删除这个标准的收藏数据
|
// 删除标准时同步删除这个标准的收藏数据
|
||||||
lawsStandardCollectionService.deleteByStandardId((String) parameterMap.get("ids"));
|
lawsStandardCollectionService.deleteByStandardId((String) parameterMap.get("ids"));
|
||||||
lawsStandardSharingService.deleteByStandardId((String) parameterMap.get("ids"));
|
lawsStandardSharingService.deleteByStandardId((String) parameterMap.get("ids"));
|
||||||
|
|||||||
Reference in New Issue
Block a user