From a15ad9309f383153d4f5a95a044fb19e882fff55 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 18 七月 2025 15:19:52 +0800
Subject: [PATCH] 平库组库功能优化

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/PlatformServiceImpl.java |   47 ++++++++++++++++++++++++++---------------------
 1 files changed, 26 insertions(+), 21 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/PlatformServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/PlatformServiceImpl.java
index c7775f7..6b53069 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/PlatformServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/PlatformServiceImpl.java
@@ -190,43 +190,48 @@
         if (Objects.isNull(pl)) {
             throw new CoolException("闆嗚揣鍖轰笉瀛樺湪锛侊紒");
         }
-        List<WaveSeed> waveSeeds = waveSeedService.list(new LambdaQueryWrapper<WaveSeed>().eq(WaveSeed::getWaveId, platform.getWaveId()).eq(WaveSeed::getOrderId, platform.getOrderId()));
+
+        List<CacheSite> list = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>()
+                .eq(CacheSite::getOrderId, platform.getOrderId()));
+        if (list.isEmpty()) {
+            throw new CoolException("璁㈠崟鏈粦瀹氭挱绉嶅簱浣嶏紝璇峰畬鎴愭嫞璐у悗锛屽啀鎵撳嵃璁㈠崟锛侊紒");
+        }
+
+        if (!cacheSiteService.update(new LambdaUpdateWrapper<CacheSite>()
+                .eq(CacheSite::getOrderId, platform.getOrderId())
+                .set(CacheSite::getPlatformId, pl.getId())
+                .set(CacheSite::getPlatformNo, pl.getPlatformNo()))) {
+            throw new CoolException("鎾澧欑珯鐐圭粦瀹氶泦璐у尯澶辫触!!");
+        }
+
+        List<WaveSeed> waveSeeds = waveSeedService.list(new LambdaQueryWrapper<WaveSeed>()
+                .eq(WaveSeed::getWaveId, platform.getWaveId())
+                .eq(WaveSeed::getOrderId, platform.getOrderId()));
         if (waveSeeds.isEmpty()) {
             throw new CoolException("鍒嗘嫞鏄庣粏淇℃伅涓嶅瓨鍦紝鏁版嵁閿欒锛侊紒");
         }
+
         ArrayList<PlatformDetl> detls = new ArrayList<>();
-        waveSeeds.forEach(waveSeed -> {
+        for (WaveSeed waveSeed : waveSeeds) {
             PlatformDetl platformDetl = new PlatformDetl();
             BeanUtils.copyProperties(waveSeed, platformDetl);
             platformDetl.setPlatformId(pl.getId());
             platformDetl.setPlatformNo(pl.getPlatformNo());
 
-            List<PlatformDetl> list = platformDetlService.list(new LambdaQueryWrapper<PlatformDetl>()
+            List<PlatformDetl> plats = platformDetlService.list(new LambdaQueryWrapper<PlatformDetl>()
                     .eq(PlatformDetl::getTaskDetlId, waveSeed.getTaskDetlId())
                     .eq(PlatformDetl::getOrderDetlId, waveSeed.getOrderDetlId())
                     .eq(PlatformDetl::getMatnr, waveSeed.getMatnr()));
-            if (!list.isEmpty()) {
-                throw new CoolException("璁㈠崟宸插叆闆嗚揣鍖猴紒锛�");
+            if (!plats.isEmpty()) {
+                continue;
             }
             detls.add(platformDetl);
-        });
-
-        if (!platformDetlService.saveOrUpdateBatch(detls)) {
-            throw new CoolException("闆嗚揣鍖烘槑缁嗕繚瀛樺け璐ワ紒锛�");
         }
 
-        List<CacheSite> list = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderId, platform.getOrderId()));
-        if (list.isEmpty()) {
-            throw new CoolException("璁㈠崟鏈粦瀹氭挱绉嶅簱浣嶏紝璇峰畬鎴愭嫞璐у悗锛屽啀鎵撳嵃璁㈠崟锛侊紒");
-        }
-
-        boolean update = cacheSiteService.update(new LambdaUpdateWrapper<CacheSite>()
-                .eq(CacheSite::getOrderId, platform.getOrderId())
-                .set(CacheSite::getPlatformId, pl.getId())
-                .set(CacheSite::getPlatformNo, pl.getPlatformNo()));
-
-        if (!update) {
-            throw new CoolException("鎾澧欑珯鐐圭粦瀹氶泦璐у尯澶辫触锛侊紒");
+        if (!detls.isEmpty()) {
+            if (!platformDetlService.saveOrUpdateBatch(detls)) {
+                throw new CoolException("闆嗚揣鍖烘槑缁嗕繚瀛樺け璐ワ紒锛�");
+            }
         }
 
         return R.ok("缁戝畾鎴愬姛锛侊紒");

--
Gitblit v1.9.1