diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index 483262b5e..6963ab4c5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -1441,6 +1441,10 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl processInfoDetailEOList,Date endTime){ - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - processInfoDetailEOList.forEach(detail -> { - detail.setCreateTime(new Date()); - detail.setCreateBy(currentUser.getId()); - detail.setStatus(TaskStatusEnum.NOT_DONE.getValue()); detail.setProcessInfoId(processInfoId); detail.setFlowType(FlowTypeEnum.QDQR.getValue()); @@ -8680,25 +8700,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl deleteStudioDetailWrap = new QueryWrapper<>(); + /*QueryWrapper deleteStudioDetailWrap = new QueryWrapper<>(); deleteStudioDetailWrap.lambda().eq(ProcessInfoDetailEO::getTaskDefinitionKey,InventoryAffirmNodeEnum.INITIATED_BY_STUDIO_ENGINEERS.getKey()); deleteStudioDetailWrap.lambda().eq(ProcessInfoDetailEO::getProcessInfoId,processInfoId); - this.processInfoDetailEOService.remove(deleteStudioDetailWrap); + this.processInfoDetailEOService.remove(deleteStudioDetailWrap);*/ this.processInfoDetailEOService.saveBatch(processInfoDetailEOList); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/IProcessInfoEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/IProcessInfoEOService.java index 457869dce..14f39623b 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/IProcessInfoEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/IProcessInfoEOService.java @@ -90,4 +90,10 @@ public interface IProcessInfoEOService extends IService { * @return */ IPage issuedProcess(Map params); + + /** + * 法规清单变更,清除对应待办中心数据。 + * @param params + */ + void change(Map params); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java index 3663525d1..1122d636f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java @@ -213,6 +213,75 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl params) { + //需要清除数据的法规清单ids + String ids = (String)params.get("ids"); + List projectLawsInventoryIdList = Arrays.asList(ids.split(",")); + if(CollectionUtils.isNotEmpty(projectLawsInventoryIdList)){ + //清除清单确认相关数据 + QueryWrapper qdqrDetailRemoveWrap = new QueryWrapper<>(); + qdqrDetailRemoveWrap.lambda().in(ProcessInfoDetailEO::getProjectLawsInventoryId,projectLawsInventoryIdList); + qdqrDetailRemoveWrap.lambda().eq(ProcessInfoDetailEO::getFlowType,FlowTypeEnum.QDQR.getValue()); + this.processInfoDetailEOService.remove(qdqrDetailRemoveWrap); + + //查询出所有的清单确认流程 + QueryWrapper qdqrProcessInfoWrap = new QueryWrapper<>(); + qdqrProcessInfoWrap.lambda().eq(ProcessInfoEO::getFlowType,FlowTypeEnum.QDQR.getValue()); + List qdqrProcessInfoList = this.list(qdqrProcessInfoWrap); + if(CollectionUtils.isNotEmpty(qdqrProcessInfoList)){ + List qdqrProcessInfoIdList = qdqrProcessInfoList.stream().map(ProcessInfoEO::getId).distinct().collect(Collectors.toList()); + + QueryWrapper qdqrDetailQueryWrap = new QueryWrapper<>(); + qdqrDetailQueryWrap.lambda().in(ProcessInfoDetailEO::getProcessInfoId,qdqrProcessInfoIdList); + List qdqrDetailList = this.processInfoDetailEOService.list(qdqrDetailQueryWrap); + if(CollectionUtils.isNotEmpty(qdqrDetailList)){ + qdqrProcessInfoIdList = qdqrProcessInfoIdList.stream().filter(qdqrProcessInfoId -> { + boolean flag = true; + for (ProcessInfoDetailEO processInfoDetailEO : qdqrDetailList) { + if (StringUtils.equals(qdqrProcessInfoId, processInfoDetailEO.getProcessInfoId())) { + flag = false; + break; + } + } + return flag; + }).distinct().collect(Collectors.toList()); + }else { + qdqrProcessInfoIdList.addAll(qdqrProcessInfoIdList); + } + + if(CollectionUtils.isNotEmpty(qdqrProcessInfoIdList)){ + this.baseMapper.deleteBatchIds(qdqrProcessInfoIdList); + } + } + + /** + * 1.清除任务确认相关数据 + * 2.清除设计符合性流程相关数据 + * 3.清除Pre-Homo确认流程相关数据 + * 4.清除验证符合性流程相关数据 + */ + List flowTypeList = new ArrayList<>(); + flowTypeList.add(FlowTypeEnum.RWQRLC.getValue()); + flowTypeList.add(FlowTypeEnum.SJFHXSHLC.getValue()); + flowTypeList.add(FlowTypeEnum.PREHOMOQRLC.getValue()); + flowTypeList.add(FlowTypeEnum.YZFHXSCLC.getValue()); + + //根据法规清单id,查询待办中心数据 + QueryWrapper processInfoQueryWrap = new QueryWrapper<>(); + processInfoQueryWrap.lambda().in(ProcessInfoEO::getProjectLawsInventoryId,projectLawsInventoryIdList); + processInfoQueryWrap.lambda().in(ProcessInfoEO::getFlowType,flowTypeList); + List processInfoEOList = this.list(processInfoQueryWrap); + if(CollectionUtils.isNotEmpty(processInfoEOList)){ + List processInfoIdList = processInfoEOList.stream().map(ProcessInfoEO::getId).distinct().collect(Collectors.toList()); + QueryWrapper detailRemoveWrap = new QueryWrapper<>(); + detailRemoveWrap.lambda().in(ProcessInfoDetailEO::getProcessInfoId,processInfoIdList); + this.processInfoDetailEOService.remove(detailRemoveWrap); + this.deleteByIds(processInfoIdList); + } + } + } + public void setFlowTypeList(List flowTypeList){ flowTypeList.add(FlowTypeEnum.QDQR.getValue()); flowTypeList.add(FlowTypeEnum.RWQRLC.getValue());