diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java index a3f48215..b495107c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standardmasterplan/servicce/impl/LawsStandardMasterPlanServiceImpl.java @@ -24,6 +24,8 @@ import com.jero.modules.assessmentLibrary.service.ILawsConformityAssessmentLibra import com.jero.modules.assessmentLibrary.service.ILawsEvaluationNotMetLibraryService; import com.jero.modules.laws.marketStandard.constans.MarketStandardConstants; import com.jero.modules.laws.marketStandard.entity.LawsMarketStandard; +import com.jero.modules.laws.marketStandard.entity.LawsMarketStandardDetail; +import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardDetailService; import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardService; import com.jero.modules.laws.standard.entity.LawsDomesticStandard; import com.jero.modules.laws.standard.service.ILawsDomesticStandardService; @@ -81,6 +83,7 @@ public class LawsStandardMasterPlanServiceImpl private final ISysUserService sysUserService; private final IOSSFileService ossFileService; private final ILawsMarketStandardService lawsMarketStandardService; + private final ILawsMarketStandardDetailService lawsMarketStandardDetailService; private final ILawsConformityAssessmentLibraryService lawsConformityAssessmentLibraryService; private final ILawsEvaluationNotMetLibraryService lawsEvaluationNotMetLibraryService; private final ProcessAllService processAllService; @@ -459,18 +462,28 @@ public class LawsStandardMasterPlanServiceImpl // 根据适用市场查询获取最早发布的市场法规清单 LawsMarketStandard lawsMarketStandard = lawsMarketStandardService.getOne(lawsMarketStandardQueryWrapper); if (!Objects.isNull(lawsMarketStandard) && lawsMarketStandard.getId().equals(id)){ - // 更新标准主计划数据 - List standardMasterPlanList = list(new LambdaUpdateWrapper() - .eq(LawsStandardMasterPlan::getApplicableMarket, applicableMarkets)); - if (CollectionUtils.isNotEmpty(standardMasterPlanList)){ - List idList = standardMasterPlanList.stream() - .map(LawsStandardMasterPlan::getId).collect(Collectors.toList()); - lawsStandardMasterPlanSublistService.update(new LambdaUpdateWrapper() - .in(LawsStandardMasterPlanSublist::getMasterPlanId, idList) - .eq(LawsStandardMasterPlanSublist::getType, - LawsStandardMasterPlanCommon.MARKET_REGULATION_LIST_UPDATE) - .isNull(LawsStandardMasterPlanSublist::getAssociationId) - .set(LawsStandardMasterPlanSublist::getAssociationId, lawsMarketStandard.getId())); + // 查询清单详情里的所有标准 + List lawsMarketStandardDetailList = lawsMarketStandardDetailService.list( + new LambdaQueryWrapper() + .eq(LawsMarketStandardDetail::getManifestId, lawsMarketStandard.getId()) + .orderByAsc(LawsMarketStandardDetail::getCreateTime)); + for (LawsMarketStandardDetail lawsMarketStandardDetail : lawsMarketStandardDetailList) { + // 更新标准主计划数据 + List standardMasterPlanList = list( + new LambdaUpdateWrapper() + .eq(LawsStandardMasterPlan::getApplicableMarket, applicableMarkets) + .eq(LawsStandardMasterPlan::getStandardId, lawsMarketStandardDetail.getStandardId())); + if (CollectionUtils.isNotEmpty(standardMasterPlanList)){ + List idList = standardMasterPlanList.stream() + .map(LawsStandardMasterPlan::getId).collect(Collectors.toList()); + lawsStandardMasterPlanSublistService.update( + new LambdaUpdateWrapper() + .in(LawsStandardMasterPlanSublist::getMasterPlanId, idList) + .eq(LawsStandardMasterPlanSublist::getType, + LawsStandardMasterPlanCommon.MARKET_REGULATION_LIST_UPDATE) + .isNull(LawsStandardMasterPlanSublist::getAssociationId) + .set(LawsStandardMasterPlanSublist::getAssociationId, lawsMarketStandard.getId())); + } } } } @@ -549,10 +562,18 @@ public class LawsStandardMasterPlanServiceImpl // 根据适用市场查询获取最早发布的市场法规清单 LawsMarketStandard lawsMarketStandard = lawsMarketStandardService.getOne(lawsMarketStandardQueryWrapper); if (!Objects.isNull(lawsMarketStandard)){ - // 查询第一个发布版本 - masterPlanSublist2.setAssociationId(lawsMarketStandard.getId()); - masterPlanSublist2.setResponsiblePerson(lawsMarketStandard.getAuthor()); - masterPlanSublist2.setActualCompletionDate(lawsMarketStandard.getReleaseDate()); + // 查询清单详情里是否包含当前标准 + int count = lawsMarketStandardDetailService.count( + new LambdaQueryWrapper() + .eq(LawsMarketStandardDetail::getManifestId, lawsMarketStandard.getId()) + .eq(LawsMarketStandardDetail::getStandardId, standardId) + .orderByAsc(LawsMarketStandardDetail::getCreateTime) + .last("limit 1")); + if (count > 0){ + masterPlanSublist2.setAssociationId(lawsMarketStandard.getId()); + masterPlanSublist2.setResponsiblePerson(lawsMarketStandard.getAuthor()); + masterPlanSublist2.setActualCompletionDate(lawsMarketStandard.getReleaseDate()); + } } list.add(masterPlanSublist2);