From a44e66e91a00405d4651a9b9dd395c35708df5b9 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期二, 16 七月 2024 15:21:44 +0800
Subject: [PATCH] 找库位逻辑bug修改
---
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java | 29 +++++++++++++++++++++++++++--
1 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java
index 0093790..84bbd7b 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java
@@ -426,7 +426,7 @@
// 鑾峰彇璺緞
int ioType = taskDto.isAll() ? 101 : 103;
// 鑾峰彇璺緞
- StaDesc staDesc = staDescService.getOne(new LambdaQueryWrapper<StaDesc>().eq(StaDesc::getTypeNo, ioType).eq(StaDesc::getDeviceStn, staNo).eq(StaDesc::getHostId, hostId));
+ StaDesc staDesc = staDescService.getOne(new LambdaQueryWrapper<StaDesc>().eq(StaDesc::getTypeNo, ioType).eq(StaDesc::getStnNo, staNo).eq(StaDesc::getHostId, hostId));
// 鐢熸垚宸ヤ綔鍙�
int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
// 鐢熸垚宸ヤ綔妗�
@@ -484,7 +484,7 @@
throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
}
// 淇敼璁㈠崟鏄庣粏
- if (!orderDetlService.increase(orderDetl.getOrderId(), hostId, orderDetl.getMatnr(), orderDetl.getBatch(), locDto.getAnfme())) {
+ if (!orderDetlService.increaseWorkQty(orderDetl.getOrderId(), orderDetl.getMatnr(), orderDetl.getBatch(), locDto.getAnfme(), hostId)) {
throw new CoolException("淇敼璁㈠崟鏄庣粏鏁伴噺澶辫触");
}
orderService.updateSettle(orderDetl.getOrderId(), 2L, userId, hostId);
@@ -591,6 +591,7 @@
} else {
throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
}
+
// 璁㈠崟鍏宠仈
List<WrkDetl> wrkDetls = wrkDetlService.list(new LambdaQueryWrapper<WrkDetl>().eq(WrkDetl::getWrkNo, wrkMast.getWrkNo()).eq(WrkDetl::getHostId, hostId));
for (WrkDetl wrkDetl : wrkDetls) {
@@ -598,6 +599,30 @@
if (!orderDetlService.decrease(wrkDetl.getOrderNo(), hostId, wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
}
+
+ //淇敼璁㈠崟涓昏〃鐘舵��,娌℃湁浣滀笟鏁伴噺鏃舵墠鍙互淇敼
+ boolean flag = true;
+ List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>()
+ .eq(OrderDetl::getOrderNo, wrkDetl.getOrderNo())
+ .eq(OrderDetl::getHostId, hostId));
+ for(OrderDetl orderDetl : orderDetls){
+ if(orderDetl.getWorkQty() > 0){
+ flag = false;
+ }
+ }
+ if(flag){
+ Order order = orderService.getOne(new LambdaQueryWrapper<Order>()
+ .eq(Order::getOrderNo, wrkDetl.getOrderNo())
+ .eq(Order::getHostId, hostId));
+ if(!Cools.isEmpty(order) && order.getSettle()==2){
+ order.setSettle(1L);
+ order.setUpdateBy(userId);
+ order.setUpdateTime(new Date());
+ }
+ if(!orderService.updateById(order)){
+ throw new CoolException("淇敼璁㈠崟鐘舵�佸け璐�");
+ }
+ }
}
}
// 鍙栨秷鎿嶄綔浜哄憳璁板綍
--
Gitblit v1.9.1