From 52433e1e316923c8fc26e2742e9943897c9271e7 Mon Sep 17 00:00:00 2001 From: tqs <56479841@qq.com> Date: 星期五, 31 五月 2024 08:49:26 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | 77 +++++++++++++++++++++++++++++++++----- 1 files changed, 66 insertions(+), 11 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 a5eb8c6..b71cbd0 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java @@ -599,14 +599,29 @@ //鐩爣搴撲綅 String locNo = wrkMast.getLocNo(); agvLocMastService.updateLocStsByLocNo(locNo,"O","",null); - agvBasDevpService.updateLocStsAndBarcodeByDevNo(devNo,"F",wrkMast.getBarcode(),wrkMast.getWhsType().shortValue()); + 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) { - if (!agvWaitPakinService.delete(new EntityWrapper<AgvWaitPakin>().eq("supp_code",agvWaitPakin.getSupp()))) { + // 鍥炴粴鍏ュ簱璁㈠崟 + 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彇娑堝け璐�"); } } + + } @@ -664,20 +679,39 @@ //鐩爣绔欑偣 String devNo = wrkMast.getLocNo(); if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 109) { - agvLocMastService.updateLocStsByLocNo(locNo,"D",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo)); - } else { - agvLocMastService.updateLocStsByLocNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo)); - } - if (wrkMast.getIoType() == 109){ - if (Cools.isEmpty(wrkMast.getLocNo())) { + 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 { + 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 { - agvLocMastService.updateLocStsByLocNo(devNo,"O","",(short)getContainerTypeByloc(devNo)); + agvBasDevpService.updateLocStsAndBarcodeByDevNo(locNo,"F",wrkMast.getBarcode(),(short)getContainerTypeByloc(locNo)); + if (!Cools.isEmpty(devNo)) { + agvLocMastService.updateLocStsByLocNo(devNo,"0","",null); + } } - }else { + } 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){ @@ -719,11 +753,11 @@ 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()); @@ -934,6 +968,27 @@ } } + @Override + @Transactional + public void changeType(String workNo, Long userId) { + AgvWrkMast wrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", workNo)); + if (Cools.isEmpty(wrkMast)) { + throw new CoolException("鏆傛棤\n" + workNo + "\n宸ヤ綔"); + } + if (wrkMast.getWrkSts() != 22) { + throw new CoolException("褰撳墠浠诲姟宸插垎閰嶇洰鏍囧簱浣嶏紝鏆備笉鏀寔璋冩暣"); + } + if (wrkMast.getIoType() == 108) { + wrkMast.setIoType(111); + agvWrkMastService.update(wrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no", workNo)); + } else if(wrkMast.getIoType() == 111) { + wrkMast.setIoType(108); + agvWrkMastService.update(wrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no", workNo)); + } + + + } + private void addInQty(String devno){ AgvBasDevp agvBasDevp = agvBasDevpService.selectById(devno); if(!Cools.isEmpty(agvBasDevp)){ -- Gitblit v1.9.1