From d417e332b39e7da99f637e94ebacf199fb158a72 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 31 五月 2024 18:16:50 +0800
Subject: [PATCH] #1
---
src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | 396 ++++++++++++++++++++++++++++++++------------------------
1 files changed, 225 insertions(+), 171 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index 7d9fa2e..bfe79c1 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -66,6 +66,8 @@
private AgvWrkMastLogService agvWrkMastLogService;
@Autowired
private AgvWrkDetlLogService agvWrkDetlLogService;
+ @Autowired
+ private WrkMastExecuteService wrkMastExecuteService;
/*
@@ -568,7 +570,23 @@
//} else {
// agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
//}
- agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+
+ if (wrkMast.getIoType()==121){
+ if (wrkMast.getWrkSts()<12L){
+ agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+ }else if (wrkMast.getWrkSts()==12L){
+ agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),12,"鎵嬪姩瀹屾垚",userId);
+
+ WrkMastExecute wrkMastExecute = wrkMastExecuteService.selectOne(new EntityWrapper<WrkMastExecute>().eq("wrk_no", workNo));
+ wrkMastExecute.setWrkSts(3L);
+ wrkMastExecute.setNowPosition(3);
+ wrkMastExecuteService.updateById(wrkMastExecute);
+ }
+ return;
+
+ } else {
+ agvWrkMastService.updateWrkStsByWrkNo(wrkMast.getWrkNo(),205,"鎵嬪姩瀹屾垚",userId);
+ }
//鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱
if(wrkMast.getIoType() == 101 || wrkMast.getIoType() == 103 || wrkMast.getIoType() == 107 || wrkMast.getIoType() == 111){
@@ -596,192 +614,228 @@
if (Cools.isEmpty(wrkMast)){
throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
}
- //鎷f枡鍏ュ簱 鐩樼偣鍏ュ簱涓嶅彲鍙栨秷
- if(wrkMast.getIoType() == 53 || wrkMast.getIoType() == 57){
- throw new CoolException("褰撳墠浠诲姟涓嶅彲鍙栨秷");
- }
+ if (wrkMast.getIoType()==121){
+ if (wrkMast.getWrkSts()<12L){
+ //婧愬簱浣�
+ String locNo = wrkMast.getSourceLocNo();
- //鍏ュ簱鍙栨秷
- if(wrkMast.getIoType() == 1 || wrkMast.getIoType() == 10 || wrkMast.getIoType() == 58){
- //婧愮珯鐐�
- String devNo = wrkMast.getSourceLocNo();
- //鐩爣搴撲綅
- String locNo = wrkMast.getLocNo();
- agvLocMastService.updateLocStsByLocNo(locNo,"O","",null);
- if (wrkMast.getIoType() == 58) {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
- } else {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"O","",wrkMast.getWhsType().shortValue());
- }
+ // 鐩爣搴撲綅
+ String targetLocNo = wrkMast.getLocNo();
+ agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
+ agvLocMastService.updateLocStsByLocNo(targetLocNo,"O","",null);
- if (wrkMast.getIoType() == 1) {
- List<AgvWaitPakin> agvWaitPakins = agvWaitPakinService.selectByContainerCode2(wrkMast.getBarcode());
-
- for (AgvWaitPakin agvWaitPakin : agvWaitPakins) {
- // 鍥炴粴鍏ュ簱璁㈠崟
- OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvWaitPakin.getThreeCode()).eq("matnr", agvWaitPakin.getMatnr()).eq("order_no", agvWaitPakin.getOrderNo()));
- orderDetl.setQty(orderDetl.getQty() - agvWaitPakin.getAnfme());
- if (!orderDetlService.updateById(orderDetl)) {
- throw new CoolException("璁㈠崟鍥炴粴澶辫触");
- }
- // 鍒犻櫎缁勬墭妗�
- if (!agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",agvWaitPakin.getSuppCode()).eq("matnr",agvWaitPakin.getMatnr()).eq("three_code",agvWaitPakin.getThreeCode()))) {
- throw new CoolException("鍏ュ簱閫氱煡妗e彇娑堝け璐�");
- }
- }
-
-
- }
-
-
- // 绉诲簱鍙栨秷
- } else if( wrkMast.getIoType() == 11 || wrkMast.getIoType() == 12) {
- //婧愬簱浣�
- String locNo = wrkMast.getSourceLocNo();
-
- // 鐩爣搴撲綅
- String targetLocNo = wrkMast.getLocNo();
- agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
- agvLocMastService.updateLocStsByLocNo(targetLocNo,"O","",null);
- AgvLocMast locMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", targetLocNo));
- // 褰撳墠浠诲姟鏄法灞傜Щ搴� 涓旂洰鏍囨ゼ灞傛槸1妤肩殑 鍥炴粴璋冩嫧鍗�
- if (wrkMast.getIoType() == 12 && locMast.getFloor() == 1) {
- List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
- 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.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
- if (!orderDetlService.updateById(orderDetl)) {
- throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
- }
- }
- }
- // 鑷姩璋冩嫧鍑哄簱鍙栨秷
- } else if(wrkMast.getIoType() == 108 || wrkMast.getIoType() == 111 || wrkMast.getIoType() == 112) {
- if (wrkMast.getIoType() == 112) {
- throw new CoolException("褰撳墠浣滀笟涓嶈兘鍙栨秷锛�");
- }
- // 婧愬簱浣�
- String locNo = wrkMast.getSourceLocNo();
- // 鐩爣搴撲綅
- String targetLocNo = wrkMast.getLocNo();
- agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo),"",(short)0);
- if (wrkMast.getIoType() == 108) {
- if (wrkMast.getWrkSts() != 22) {
- agvLocMastService.updateLocStsByLocNo(targetLocNo,"O","",null);
- }
- } else {
- if (wrkMast.getWrkSts() != 207L && wrkMast.getWrkSts() != 205L) {
- if (wrkMast.getWrkSts() != 22) {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(targetLocNo,"O","",wrkMast.getWhsType().shortValue());
- }
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(new Date());
+ if (type == 2) {
+ wrkMast.setManuType("鎵嬪姩鍙栨秷锛坅gv锛�");
} else {
+ wrkMast.setManuType("鎵嬪姩鍙栨秷");
+ }
+
+
+ //淇濆瓨宸ヤ綔妗d互鍙婃槑缁�
+ agvWrkMastLogService.save(wrkMast);
+ agvWrkDetlLogService.save(wrkMast.getWrkNo());
+
+
+ //鍒犻櫎宸ヤ綔妗d互鍙婃槑缁�
+ if(!agvWrkMastService.deleteByWrkNo(wrkMast.getWrkNo()) || !agvWrkDetlService.deleteByWrkNo(wrkMast.getWrkNo())){
+ throw new CoolException("鍒犻櫎澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+
+ if (type == 2) {
+ //璋冪敤agv鍙栨秷浠诲姟鎺ュ彛
+ agvWrkMastService.callCancelTask(wrkMast.getWrkNo());
+ }
+ }else {
+ throw new CoolException("褰撳墠浠诲姟姝e湪鎵ц锛屼笉鍙彇娑�");
+ }
+ }else {
+ //鎷f枡鍏ュ簱 鐩樼偣鍏ュ簱涓嶅彲鍙栨秷
+ if(wrkMast.getIoType() == 53 || wrkMast.getIoType() == 57){
+ throw new CoolException("褰撳墠浠诲姟涓嶅彲鍙栨秷");
+ }
+
+ //鍏ュ簱鍙栨秷
+ if(wrkMast.getIoType() == 1 || wrkMast.getIoType() == 10 || wrkMast.getIoType() == 58){
+ //婧愮珯鐐�
+ String devNo = wrkMast.getSourceLocNo();
+ //鐩爣搴撲綅
+ String locNo = wrkMast.getLocNo();
+ agvLocMastService.updateLocStsByLocNo(locNo,"O","",null);
+ if (wrkMast.getIoType() == 58) {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
+ } else {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"O","",wrkMast.getWhsType().shortValue());
+ }
+
+ if (wrkMast.getIoType() == 1) {
+ List<AgvWaitPakin> agvWaitPakins = agvWaitPakinService.selectByContainerCode2(wrkMast.getBarcode());
+
+ for (AgvWaitPakin agvWaitPakin : agvWaitPakins) {
+ // 鍥炴粴鍏ュ簱璁㈠崟
+ OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("three_code", agvWaitPakin.getThreeCode()).eq("matnr", agvWaitPakin.getMatnr()).eq("order_no", agvWaitPakin.getOrderNo()));
+ orderDetl.setQty(orderDetl.getQty() - agvWaitPakin.getAnfme());
+ if (!orderDetlService.updateById(orderDetl)) {
+ throw new CoolException("璁㈠崟鍥炴粴澶辫触");
+ }
+ // 鍒犻櫎缁勬墭妗�
+ if (!agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",agvWaitPakin.getSuppCode()).eq("matnr",agvWaitPakin.getMatnr()).eq("three_code",agvWaitPakin.getThreeCode()))) {
+ throw new CoolException("鍏ュ簱閫氱煡妗e彇娑堝け璐�");
+ }
+ }
+
+
+ }
+
+
+ // 绉诲簱鍙栨秷
+ } else if( wrkMast.getIoType() == 11 || wrkMast.getIoType() == 12) {
+ //婧愬簱浣�
+ String locNo = wrkMast.getSourceLocNo();
+
+ // 鐩爣搴撲綅
+ String targetLocNo = wrkMast.getLocNo();
+ agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
+ agvLocMastService.updateLocStsByLocNo(targetLocNo,"O","",null);
+ AgvLocMast locMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", targetLocNo));
+ // 褰撳墠浠诲姟鏄法灞傜Щ搴� 涓旂洰鏍囨ゼ灞傛槸1妤肩殑 鍥炴粴璋冩嫧鍗�
+ if (wrkMast.getIoType() == 12 && locMast.getFloor() == 1) {
+ List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
+ 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.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
+ if (!orderDetlService.updateById(orderDetl)) {
+ throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+ }
+ }
+ }
+ // 鑷姩璋冩嫧鍑哄簱鍙栨秷
+ } else if(wrkMast.getIoType() == 108 || wrkMast.getIoType() == 111 || wrkMast.getIoType() == 112) {
+ if (wrkMast.getIoType() == 112) {
throw new CoolException("褰撳墠浣滀笟涓嶈兘鍙栨秷锛�");
}
-
-
- }
-
- List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
- // 鏇存柊璁㈠崟
- for (AgvLocDetl agvLocDetl : agvLocDetls) {
- OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", "DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
- orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
- if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("order_no","DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
- throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
- }
- }
- //鍑哄簱鍙栨秷
- } else {
- //婧愬簱浣�
- String locNo = wrkMast.getSourceLocNo();
- //鐩爣绔欑偣
- String devNo = wrkMast.getLocNo();
- if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 109) {
- if (wrkMast.getIoType() == 109){
- // 婧愬簱浣嶆槸绔欑偣
- if ("DB".equals(locNo.substring(0,2))) {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
- agvLocMastService.updateLocStsByLocNo(devNo,"O","",null);
- // 婧愬簱浣嶆槸搴撲綅 鐩爣搴撲綅鏄珯鐐�
- } else if ("DB".equals(devNo.substring(0,2))) {
- agvLocMastService.updateLocStsByLocNo(locNo,"D",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"O","",null);
- // 婧愬簱浣嶆槸搴撲綅
- } else {
- agvLocMastService.updateLocStsByLocNo(locNo,"D",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
- agvLocMastService.updateLocStsByLocNo(devNo,"O","",null);
+ // 婧愬簱浣�
+ String locNo = wrkMast.getSourceLocNo();
+ // 鐩爣搴撲綅
+ String targetLocNo = wrkMast.getLocNo();
+ agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo),"",(short)0);
+ if (wrkMast.getIoType() == 108) {
+ if (wrkMast.getWrkSts() != 22) {
+ agvLocMastService.updateLocStsByLocNo(targetLocNo,"O","",null);
}
-
- }else {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"O","",null);
- }
- } else if (wrkMast.getIoType() == 113) {
- if (wrkMast.getWrkSts() == 212 || wrkMast.getWrkSts() == 213) {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
} else {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
- if (!Cools.isEmpty(devNo)) {
- agvLocMastService.updateLocStsByLocNo(devNo,"0","",null);
+ if (wrkMast.getWrkSts() != 207L && wrkMast.getWrkSts() != 205L) {
+ if (wrkMast.getWrkSts() != 22) {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(targetLocNo,"O","",wrkMast.getWhsType().shortValue());
+ }
+ } else {
+ throw new CoolException("褰撳墠浣滀笟涓嶈兘鍙栨秷锛�");
}
+
+
}
- } else {
- agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"O","",null);
- agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
- }
-
- }
-
- if(wrkMast.getIoType() != 1 && wrkMast.getIoType() != 10 && wrkMast.getIoType()!=111 && wrkMast.getIoType()!=108 && wrkMast.getIoType() != 12){
- //璁㈠崟鍥炴粴
- //List<AgvWrkDetl> agvWrkDetlList = agvWrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
- List<AgvWrkDetl> agvWrkDetlList1 = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
- agvWrkDetlList1.forEach(agvWrkDetl -> {
-
- if(!Cools.isEmpty(agvWrkDetl.getOrderNo())){
- String orderNo = agvWrkDetl.getOrderNo();
- if(orderNo.contains("{")){
- JSONArray orderArray = JSON.parseArray(orderNo);
- for (Object o : orderArray){
- JSONObject jsonobject = (JSONObject) o;
- OrderDetl orderDetl = orderDetlService.selectByOrderNoAndMatnr(jsonobject.get("orderNo").toString(),agvWrkDetl.getMatnr(),agvWrkDetl.getThreeCode(),agvWrkDetl.getDeadTime());
- orderDetl.setQty(orderDetl.getQty() - agvWrkDetl.getAnfme());
- orderDetlService.updateById(orderDetl);
+ List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", locNo));
+ // 鏇存柊璁㈠崟
+ for (AgvLocDetl agvLocDetl : agvLocDetls) {
+ OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", "DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
+ orderDetl.setQty(orderDetl.getQty() - agvLocDetl.getAnfme());
+ if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("order_no","DB" + agvLocDetl.getOrderNo()).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
+ throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
+ }
+ }
+ //鍑哄簱鍙栨秷
+ } else {
+ //婧愬簱浣�
+ String locNo = wrkMast.getSourceLocNo();
+ //鐩爣绔欑偣
+ String devNo = wrkMast.getLocNo();
+ if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 109) {
+ if (wrkMast.getIoType() == 109){
+ // 婧愬簱浣嶆槸绔欑偣
+ if ("DB".equals(locNo.substring(0,2))) {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
+ agvLocMastService.updateLocStsByLocNo(devNo,"O","",null);
+ // 婧愬簱浣嶆槸搴撲綅 鐩爣搴撲綅鏄珯鐐�
+ } else if ("DB".equals(devNo.substring(0,2))) {
+ agvLocMastService.updateLocStsByLocNo(locNo,"D",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"O","",null);
+ // 婧愬簱浣嶆槸搴撲綅
+ } else {
+ agvLocMastService.updateLocStsByLocNo(locNo,"D",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue());
+ agvLocMastService.updateLocStsByLocNo(devNo,"O","",null);
}
}else {
- OrderDetl orderDetl = orderDetlService.selectByOrderNoAndMatnr(agvWrkDetl.getOrderNo(),agvWrkDetl.getMatnr(),agvWrkDetl.getThreeCode(),agvWrkDetl.getDeadTime());
- orderDetl.setQty(orderDetl.getQty() - agvWrkDetl.getAnfme());
- orderDetlService.updateById(orderDetl);
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"O","",null);
}
+ } else if (wrkMast.getIoType() == 113) {
+ if (wrkMast.getWrkSts() == 212 || wrkMast.getWrkSts() == 213) {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
+ } else {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
+ if (!Cools.isEmpty(devNo)) {
+ agvLocMastService.updateLocStsByLocNo(devNo,"0","",null);
+ }
+ }
+
+ } else {
+ agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"O","",null);
+ agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo));
}
- });
+
+ }
+
+ if(wrkMast.getIoType() != 1 && wrkMast.getIoType() != 10 && wrkMast.getIoType()!=111 && wrkMast.getIoType()!=108 && wrkMast.getIoType() != 12){
+ //璁㈠崟鍥炴粴
+ //List<AgvWrkDetl> agvWrkDetlList = agvWrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ List<AgvWrkDetl> agvWrkDetlList1 = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+ agvWrkDetlList1.forEach(agvWrkDetl -> {
+
+ if(!Cools.isEmpty(agvWrkDetl.getOrderNo())){
+ String orderNo = agvWrkDetl.getOrderNo();
+ if(orderNo.contains("{")){
+ JSONArray orderArray = JSON.parseArray(orderNo);
+ for (Object o : orderArray){
+ JSONObject jsonobject = (JSONObject) o;
+ OrderDetl orderDetl = orderDetlService.selectByOrderNoAndMatnr(jsonobject.get("orderNo").toString(),agvWrkDetl.getMatnr(),agvWrkDetl.getThreeCode(),agvWrkDetl.getDeadTime());
+ orderDetl.setQty(orderDetl.getQty() - agvWrkDetl.getAnfme());
+ orderDetlService.updateById(orderDetl);
+ }
+
+ }else {
+ OrderDetl orderDetl = orderDetlService.selectByOrderNoAndMatnr(agvWrkDetl.getOrderNo(),agvWrkDetl.getMatnr(),agvWrkDetl.getThreeCode(),agvWrkDetl.getDeadTime());
+ orderDetl.setQty(orderDetl.getQty() - agvWrkDetl.getAnfme());
+ orderDetlService.updateById(orderDetl);
+ }
+ }
+ });
+ }
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(new Date());
+ if (type == 2) {
+ wrkMast.setManuType("鎵嬪姩鍙栨秷锛坅gv锛�");
+ } else {
+ wrkMast.setManuType("鎵嬪姩鍙栨秷");
+ }
+
+
+ //淇濆瓨宸ヤ綔妗d互鍙婃槑缁�
+ agvWrkMastLogService.save(wrkMast);
+ agvWrkDetlLogService.save(wrkMast.getWrkNo());
+
+
+ //鍒犻櫎宸ヤ綔妗d互鍙婃槑缁�
+ if(!agvWrkMastService.deleteByWrkNo(wrkMast.getWrkNo()) || !agvWrkDetlService.deleteByWrkNo(wrkMast.getWrkNo())){
+ throw new CoolException("鍒犻櫎澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+
+ if (type == 2) {
+ //璋冪敤agv鍙栨秷浠诲姟鎺ュ彛
+ agvWrkMastService.callCancelTask(wrkMast.getWrkNo());
+ }
}
- wrkMast.setModiUser(userId);
- wrkMast.setModiTime(new Date());
- if (type == 2) {
- wrkMast.setManuType("鎵嬪姩鍙栨秷锛坅gv锛�");
- } else {
- wrkMast.setManuType("鎵嬪姩鍙栨秷");
- }
-
-
- //淇濆瓨宸ヤ綔妗d互鍙婃槑缁�
- agvWrkMastLogService.save(wrkMast);
- agvWrkDetlLogService.save(wrkMast.getWrkNo());
-
-
- //鍒犻櫎宸ヤ綔妗d互鍙婃槑缁�
- if(!agvWrkMastService.deleteByWrkNo(wrkMast.getWrkNo()) || !agvWrkDetlService.deleteByWrkNo(wrkMast.getWrkNo())){
- throw new CoolException("鍒犻櫎澶辫触锛岃鑱旂郴绠$悊鍛�");
- }
-
- if (type == 2) {
- //璋冪敤agv鍙栨秷浠诲姟鎺ュ彛
- agvWrkMastService.callCancelTask(wrkMast.getWrkNo());
- }
-
-
}
/*
--
Gitblit v1.9.1