fix(文档拆分): 标准拆分删除校验

This commit is contained in:
yjz
2024-08-16 22:50:15 +08:00
parent c9e6b686d1
commit d0b58d86b2
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.constant.enums.LanguageEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.exception.JeroBootException;
@@ -16,6 +17,11 @@ import com.jero.common.util.FileUtils;
import com.jero.common.util.MessageUtils;
import com.jero.common.util.UUIDUtils;
import com.jero.common.util.ZipUtil;
import com.jero.modules.activiti.entity.ProcessAll;
import com.jero.modules.activiti.enums.ProcessStatusEnum;
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpret;
import com.jero.modules.activiti.process.standardinterpret.service.ProcessStandardInterpretService;
import com.jero.modules.activiti.service.ProcessAllService;
import com.jero.modules.laws.common.constant.FieldCommon;
import com.jero.modules.laws.common.mapper.LawsCommonMapper;
import com.jero.modules.laws.documenttool.common.DirectoryComparator;
@@ -140,6 +146,11 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
private ILawsNodeRelationService lawsNodeRelationService;
@Autowired
private ILawsTreeNodeService lawsTreeNodeService;
@Autowired
private ProcessStandardInterpretService processStandardInterpretService;
@Autowired
private ProcessAllService processAllService;
private static final String INFO_ID = "info_id";
private static final String ID = "id";
private static final String IDS = "ids";
@@ -893,6 +904,23 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
// 水平越权
Map<String, Object> map = documentSplitMapper.queryLawsDocumentSplitInId(id);
isHorizontalOverstep(map.get(INFO_ID).toString());
// 查询标准解读流程
List<ProcessStandardInterpret> list1 = processStandardInterpretService.list(
new LambdaQueryWrapper<ProcessStandardInterpret>()
.in(ProcessStandardInterpret::getSplitInfoId, id));
if (CollectionUtils.isNotEmpty(list1)){
List<String> projectIdList = list1.stream()
.map(ProcessStandardInterpret::getProjectId)
.collect(Collectors.toList());
int count1 = processAllService.count(new LambdaQueryWrapper<ProcessAll>()
.in(ProcessAll::getProjectId, projectIdList)
.ne(ProcessAll::getPrcStatus, ProcessStatusEnum.WITHDRAWN.getValue()));
if (count1 > 0) {
throw new JeroBootException(ResultCommon.SCC_DELETE_STANDARD_ERROR3);
}
}
// 删除文档拆分详情数据
documentSplitMapper.deleteDocumentSplitDetail(id);