From 2a2f094b447c604ca2884922586df32f0665b81c Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 29 四月 2026 09:27:44 +0800
Subject: [PATCH] 双伸出库改成订单出库 完成转订单
---
src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java | 46 +++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 41 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
index 9b8f484..ea45c58 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
@@ -28,12 +28,16 @@
@Override
public OrderDetlPakout selectItem(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
- return this.baseMapper.selectItem(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+ // 寤惰繜鍑哄簱鍚庯紝man_order_detl_pakout 浼氭寜鎵樼洏鎷嗘槑缁嗐��
+ // 鏃х殑 orderId + 鐗╂枡缁村害鍙兘鍛戒腑澶氭潯璁板綍锛屼笉鑳藉啀鐢� mapper 杩斿洖鍗曞璞$殑 selectOne 璇箟銆�
+ // 杩欓噷缁熶竴鏀逛负鍒楄〃鏌ヨ骞舵寜 id 鍙栫涓�鏉★紝閬垮厤 TooManyResultsException锛涢渶瑕佺簿纭洖鍐欐椂璇蜂紭鍏堜娇鐢� pallet_id銆�
+ return selectFirst(buildItemWrapper(orderId, null, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3));
}
@Override
public OrderDetlPakout selectItem(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
- return this.baseMapper.selectItemByOrderNo(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+ // 鍚屼笂锛宱rderNo + 鐗╂枡缁村害鍦ㄦ柊妯″瀷涓笉淇濊瘉鍞竴锛屽彧浣滀负鏃ф暟鎹殑鍏滃簳鍖归厤銆�
+ return selectFirst(buildItemWrapper(null, orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3));
}
@Override
@@ -41,9 +45,13 @@
if (Cools.isEmpty(orderNo) || Cools.isEmpty(palletId)) {
return null;
}
- return this.selectOne(new EntityWrapper<OrderDetlPakout>()
- .eq("order_no", orderNo)
- .eq("pallet_id", palletId));
+ // orderNo + palletId 鏄欢杩熷嚭搴撹鍗曟槑缁嗙殑绮剧‘鍖归厤閿��
+ // 浠嶇劧浣跨敤 selectList 鍙栫涓�鏉★紝闃叉鍘嗗彶鑴忔暟鎹噷鍚屼竴鎵樼洏閲嶅鏃� selectOne 鐩存帴涓柇瀹氭椂绾跨▼銆�
+ EntityWrapper<OrderDetlPakout> wrapper = new EntityWrapper<>();
+ wrapper.eq("order_no", orderNo)
+ .eq("pallet_id", palletId)
+ .orderBy("id", true);
+ return selectFirst(wrapper);
}
@Override
@@ -115,4 +123,32 @@
public boolean increaseWorkQty(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double workQty) {
return this.baseMapper.increaseWorkQty(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, workQty) > 0;
}
+
+ private EntityWrapper<OrderDetlPakout> buildItemWrapper(Long orderId, String orderNo, String matnr, String batch, String brand,
+ String standby1, String standby2, String standby3,
+ String boxType1, String boxType2, String boxType3) {
+ EntityWrapper<OrderDetlPakout> wrapper = new EntityWrapper<>();
+ wrapper.eq("matnr", matnr)
+ .eq("batch", batch)
+ .eq("brand", brand)
+ .eq("standby1", standby1)
+ .eq("standby2", standby2)
+ .eq("standby3", standby3)
+ .eq("box_type1", boxType1)
+ .eq("box_type2", boxType2)
+ .eq("box_type3", boxType3)
+ .orderBy("id", true);
+ if (!Cools.isEmpty(orderId)) {
+ wrapper.eq("order_id", orderId);
+ }
+ if (!Cools.isEmpty(orderNo)) {
+ wrapper.eq("order_no", orderNo);
+ }
+ return wrapper;
+ }
+
+ private OrderDetlPakout selectFirst(EntityWrapper<OrderDetlPakout> wrapper) {
+ List<OrderDetlPakout> rows = this.selectList(wrapper);
+ return Cools.isEmpty(rows) ? null : rows.get(0);
+ }
}
--
Gitblit v1.9.1