From fbde0b947b4641081b558302ea77d88c902c4cd1 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期三, 30 四月 2025 10:03:24 +0800 Subject: [PATCH] 可靠性计划优化检验项 --- inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java | 70 +---------------------------------- 1 files changed, 2 insertions(+), 68 deletions(-) diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java index b225652..ea3cb8d 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/ReliabilityPlanProductItemServiceImpl.java @@ -31,75 +31,9 @@ @Override public List<ReliabilityPlanProductItem> selectProductItem(ReliabilityPlanProductItemDto reliabilityPlanProductItemDto) { - // 浠庢暟鎹簱涓煡璇㈡柊鐨勬暟鎹� - List<Map<String, Object>> maps = reliabilityPlanProductItemMapper.itemList(reliabilityPlanProductItemDto.getRePlanId()); - List<ReliabilityPlanProductItem> newItemList = new ArrayList<>(); - for (Map<String, Object> map : maps) { - ReliabilityPlanProductItem item = new ReliabilityPlanProductItem(); - item.setInspectionItem((String) map.get("inspectionItem")); - item.setStandard((String) map.get("standard")); - item.setFrequency((String) map.get("frequency")); - item.setPlanId(reliabilityPlanProductItemDto.getRePlanId()); - item.setType(reliabilityPlanProductItemDto.getType()); - newItemList.add(item); - } - - // 鏌ヨ鏁版嵁搴撲腑宸插瓨鍦ㄧ殑鏁版嵁 - List<ReliabilityPlanProductItem> existingItemList = reliabilityPlanProductItemMapper.selectList( - new LambdaQueryWrapper<ReliabilityPlanProductItem>() + return reliabilityPlanProductItemMapper.selectList(new LambdaQueryWrapper<ReliabilityPlanProductItem>() .eq(ReliabilityPlanProductItem::getPlanId, reliabilityPlanProductItemDto.getRePlanId()) - .eq(ReliabilityPlanProductItem::getType, reliabilityPlanProductItemDto.getType()) - ); - - // 灏嗗凡瀛樺湪鐨勬暟鎹浆鎹负浠� inspectionItem_planId_type 涓洪敭鐨� Map - Map<String, ReliabilityPlanProductItem> existingItemMap = new HashMap<>(); - for (ReliabilityPlanProductItem item : existingItemList) { - StringBuilder keyBuilder = new StringBuilder(); - keyBuilder.append(item.getInspectionItem()) - .append("_") - .append(item.getPlanId()) - .append("_") - .append(item.getType()); - existingItemMap.put(keyBuilder.toString(), item); - } - - List<ReliabilityPlanProductItem> itemsToUpdate = new ArrayList<>(); - List<ReliabilityPlanProductItem> itemsToInsert = new ArrayList<>(); - - // 瀵规瘮鏂版暟鎹拰宸插瓨鍦ㄧ殑鏁版嵁锛屽尯鍒嗗嚭闇�瑕佹洿鏂板拰闇�瑕佹柊澧炵殑璁板綍 - for (ReliabilityPlanProductItem newItem : newItemList) { - StringBuilder keyBuilder = new StringBuilder(); - keyBuilder.append(newItem.getInspectionItem()) - .append("_") - .append(newItem.getPlanId()) - .append("_") - .append(newItem.getType()); - String key = keyBuilder.toString(); - ReliabilityPlanProductItem existingItem = existingItemMap.get(key); - if (existingItem != null) { - // 瀛樺湪鍒欐洿鏂� - existingItem.setStandard(newItem.getStandard()); - existingItem.setFrequency(newItem.getFrequency()); - itemsToUpdate.add(existingItem); - } else { - // 涓嶅瓨鍦ㄥ垯鏂板 - itemsToInsert.add(newItem); - } - } - - // 鎵ц鏇存柊鍜屾柊澧炴搷浣� - if (!itemsToUpdate.isEmpty()) { - saveOrUpdateBatch(itemsToUpdate); - } - if (!itemsToInsert.isEmpty()) { - saveBatch(itemsToInsert); - } - - // 鍙互鑰冭檻鍦ㄥ墠闈㈢殑鏌ヨ涓繚鐣欓渶瑕佺殑缁撴灉锛岄伩鍏嶅啀娆℃煡璇� - return existingItemList.stream() - .filter(item -> item.getPlanId().equals(reliabilityPlanProductItemDto.getRePlanId()) - && item.getType().equals(reliabilityPlanProductItemDto.getType())) - .collect(Collectors.toList()); + .eq(ReliabilityPlanProductItem::getType, reliabilityPlanProductItemDto.getType())); } @Override -- Gitblit v1.9.3