diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductRequirementMapper.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductRequirementMapper.java index e480e6a76..bfcb062fb 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductRequirementMapper.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductRequirementMapper.java @@ -117,4 +117,6 @@ public interface PmsProductRequirementMapper List selectReqCountGroupByStatus(@Param("pmsProductIdentifier") String pmsProductIdentifier, @Param("statusList") List statusList); PmsProductRequirement selectReqSpecsByProjectReqId(@Param("projectReqId") Long projectReqId); + + Integer selectNotIncludeNoModuleAndFixedProductReqSpecsCount(@Param("pmsProductIdentifier") String pmsProductIdentifier); } diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java index 2f4bf768f..495d7c47f 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/IPmsProductRequirementService.java @@ -136,4 +136,12 @@ public interface IPmsProductRequirementService int batchUpdatePmsProductRequirement(JSONObject pmsProductRequirementBatchUpdateVo); int updateRequirement(PmsProductRequirement pmsProductRequirement); + + /** + * 查询不包含无所属模块和固定模块的需求数量 + * + * @param pmsProductIdentifier 产品标识 + * @return 需求数量 + */ + Integer selectNotIncludeNoModuleAndFixedProductReqSpecsCount(String pmsProductIdentifier); } diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductModuleServiceImpl.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductModuleServiceImpl.java index 517715937..7b86f2430 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductModuleServiceImpl.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductModuleServiceImpl.java @@ -286,23 +286,16 @@ public class PmsProductModuleServiceImpl implements IPmsProductModuleService } else { pmsProductService.selectPmsProductByIdentifier(pmsProductModule.getPmsProductIdentifier()); } - Integer allNodeDataCount = 0; + Integer allNodeDataCount; Integer noModuleNodeDataCount; if (type == PmsConstants.PRODUCT_TAG_AND_MODULE_TYPE) { // 设置各节点数量为需求数量 - for (PmsProductModule module : moduleList) { - module.setNodeDataCount(module.getRequirementCount()); - // 全部需求数量统计需排除固定模块以及无所属模块 - if (module.getParentId().equals(0L) && !module.getIsFixedModule()) { - allNodeDataCount += module.getRequirementCount(); - } - } + moduleList.forEach(x -> x.setNodeDataCount(x.getRequirementCount())); // 计算全部需求数量 - PmsProductRequirement pmsProductRequirementSearch = new PmsProductRequirement(); - pmsProductRequirementSearch.setPmsProductIdentifier(pmsProductModule.getPmsProductIdentifier()); - + allNodeDataCount = pmsProductRequirementService.selectNotIncludeNoModuleAndFixedProductReqSpecsCount(pmsProductModule.getPmsProductIdentifier()); // 计算无所属模块的需求数量 + PmsProductRequirement pmsProductRequirementSearch = new PmsProductRequirement(); pmsProductRequirementSearch.setPmsProductModuleId(0L); noModuleNodeDataCount = pmsProductRequirementService.selectProductReqSpecsCount(pmsProductRequirementSearch); } else if (type == PmsConstants.TESTSHEET_TAG_AND_MODULE_TYPE) { diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java index e12b7c71d..0b39c55d0 100644 --- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java +++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java @@ -936,4 +936,9 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS pmsProductService.updatePmsProductChange(pmsProductRequirement.getPmsProductIdentifier()); return pmsProductRequirementMapper.updatePmsProductRequirement(pmsProductRequirement); } + + @Override + public Integer selectNotIncludeNoModuleAndFixedProductReqSpecsCount(String pmsProductIdentifier) { + return pmsProductRequirementMapper.selectNotIncludeNoModuleAndFixedProductReqSpecsCount(pmsProductIdentifier); + } } diff --git a/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductRequirementMapper.xml b/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductRequirementMapper.xml index 748d02800..74b24e30c 100644 --- a/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductRequirementMapper.xml +++ b/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductRequirementMapper.xml @@ -393,4 +393,12 @@ group by `status` + \ No newline at end of file