From 45dd167e12e11af8dc7929ff1475623c80fc3578 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 30 十月 2024 13:59:33 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 40 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
index c8b1273..1cb8241 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -151,6 +151,7 @@
} else {
Double anfme = agvWrkDetl.getAnfme() + pick.getCount();
agvWrkDetl.setAnfme(anfme);
+ agvWrkDetl.setModiTime(new Date());
agvWrkDetlService.update(agvWrkDetl,new EntityWrapper<AgvWrkDetl>().eq("matnr",agvWrkDetl.getMatnr()).eq("three_code",agvWrkDetl.getThreeCode()).eq("supp_code",pick.getSuppCode()));
}
@@ -164,22 +165,22 @@
}
}
// 纭鏄惁鍏ㄩ儴鍑哄簱
- int sameNumber = 0;
+ double totleWrkdetl = 0.0;
+ double totleLocdetl = 0.0;
List<AgvWrkDetl> agvWrkDetls = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", pickParams.getWrkNo()));
for (AgvLocDetl agvLocDetl : agvLocDetls) {
- for (AgvWrkDetl agvWrkDetl : agvWrkDetls) {
- if (agvLocDetl.getMatnr().equals(agvWrkDetl.getMatnr())
- && agvLocDetl.getThreeCode().equals(agvWrkDetl.getThreeCode())
- && agvLocDetl.getSuppCode().equals(agvWrkDetl.getSuppCode())
- && agvLocDetl.getAnfme().equals(agvWrkDetl.getAnfme())) {
- sameNumber++;
- }
- }
+ totleLocdetl = totleLocdetl + agvLocDetl.getAnfme();
}
- if (agvLocDetls.size() == sameNumber) {
+ for (AgvWrkDetl agvWrkDetl : agvWrkDetls) {
+ totleWrkdetl = totleWrkdetl + agvWrkDetl.getAnfme();
+ }
+ if (totleWrkdetl >= totleLocdetl) {
agvWrkMast.setIoType(101);
+ agvWrkMast.setModiTime(new Date());
agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
+
}
+// agvLocDetls.size() == 1
return "缁勬墭鎴愬姛锛岀粦瀹氱珯鐐规垚鍔�";
@@ -515,7 +516,10 @@
if (ioType == 12 && locMast.getFloor() == 1 && floor != 4 && agvLocMast.getFloor() != 1) {
List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", agvLocMast.getLocNo()));
for (AgvLocDetl agvLocDetl : agvLocDetls) {
- OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvLocDetl.getThreeCode()).eq("matnr", agvLocDetl.getMatnr()).eq("order_no", "DB" + agvLocDetl.getOrderNo()));
+ OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvLocDetl.getThreeCode()).eq("matnr", agvLocDetl.getMatnr()).eq("source", 33));
+ if (Cools.isEmpty(orderDetl)) {
+ throw new CoolException("褰撳墠鐗╂枡鐨勮皟鎷ㄥ崟涓嶅瓨鍦紒");
+ }
orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
if (!orderDetlService.updateById(orderDetl)) {
throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
@@ -547,8 +551,28 @@
if (!agvWrkMast.getBarcode().equals(param.getBarcode())) {
throw new CoolException("褰撳墠璐ф灦鐮佷笌浠诲姟涓嶅尮閰�");
}
- if (!agvWrkMast.getWrkSts().equals(207L)) {
- throw new CoolException("宸ヤ綔鐘舵�佷笉绗﹀悎绂诲満鏉′欢");
+ if (!agvWrkMast.getWrkSts().equals(207L) && !agvWrkMast.getWrkSts().equals(205L)) {
+ throw new CoolException("褰撳墠宸ヤ綔鐘舵��:" + agvWrkMast.getWrkSts$() +"涓嶇鍚堢鍦烘潯浠�");
+ }
+ if (agvWrkMast.getWrkSts().equals(205L)) {
+ // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+ if (agvWrkMast.getLocNo().substring(0,2).equals("DB")) {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+ // 鎺ラ┏浣� -- 搴撲綅
+ } else {
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+ }
+
+ // 鎺ラ┏浣� -- 搴撲綅
+ if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
+ // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
+ } else {
+ //淇敼婧愬簱浣嶇姸鎬佷负O
+ agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
+ //鏇存柊鐩爣搴撲綅鏄庣粏 101.鍑哄簱 鍒犻櫎婧愬簱浣嶅簱瀛樻槑缁�
+ agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",agvWrkMast.getSourceLocNo()));
+ }
}
//鐢熸垚AGV宸ヤ綔鍘嗗彶妗� + 鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
@@ -571,7 +595,7 @@
}
}
// 鏇存柊绔欑偣鐘舵��
- agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
+// agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
// 鏇存柊婧愬簱浣嶇姸鎬�
agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
@@ -640,6 +664,7 @@
if (!agvWrkMast.getBarcode().equals(param.getBarcode())) {
throw new CoolException("褰撳墠璐ф灦鐮佷笌浠诲姟涓嶅尮閰�");
}
+ agvWrkMast.setModiTime(new Date());
agvWrkMast.setWrkSts(213L);
agvWrkMast.setSourceLocNo("");
if (!agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no",agvWrkMast.getWrkNo()))) {
@@ -668,6 +693,7 @@
throw new CoolException("褰撳墠宸ヤ綔绫诲瀷涓嶈兘绌烘灦杩涘満");
}
agvWrkMast.setWrkSts(214L);
+ agvWrkMast.setModiTime(new Date());
agvWrkMast.setSourceLocNo(param.getDevNo());
if (!agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no",agvWrkMast.getWrkNo()))) {
throw new CoolException("鏇存柊宸ヤ綔妗eけ璐�");
--
Gitblit v1.9.1