From 6e042d7f0e1982cf54deedba6fe4ddfe8353af13 Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期四, 27 六月 2024 09:37:11 +0800 Subject: [PATCH] 自动清空agv空库位库存 --- src/main/java/com/zy/asrs/controller/AgvOpenController.java | 70 +++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvOpenController.java b/src/main/java/com/zy/asrs/controller/AgvOpenController.java index 4aa441f..1d108a5 100644 --- a/src/main/java/com/zy/asrs/controller/AgvOpenController.java +++ b/src/main/java/com/zy/asrs/controller/AgvOpenController.java @@ -26,6 +26,7 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.EnumSet; +import java.util.Map; /** * 涓婃姤浜嬩欢绫诲瀷锛坋ventType锛夛細 @@ -71,15 +72,17 @@ //save api log (appkey 鍚庣画娣诲姞) AppAuthUtil.auth("",param, request); - - AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", param.getTaskCode())); - if(Cools.isEmpty(agvWrkMast)){ - return R.error("浠诲姟缂栧彿閿欒"); + int wrkNo = Integer.parseInt(param.getTaskCode()); + if(wrkNo < 0){ + wrkNo = -wrkNo; } - -// if(!checkParam(param,agvWrkMast)){ -// return R.error("浠诲姟鍙傛暟涓庡伐浣滄。鍙傛暟涓嶇鍚�"); -// } + AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", wrkNo)); + if(Cools.isEmpty(agvWrkMast)){ + agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode",param.getContainerCode())); + if (Cools.isEmpty(agvWrkMast)){ + return R.error("浠诲姟缂栧彿閿欒"); + } + } AgvTask agvTask = AgvTask.valueOf(param.getEventType()); Class<AgvTask> clz = AgvTask.class; @@ -98,16 +101,12 @@ return R.ok(); } - private boolean checkParam(AgvTaskCallBackParam param, AgvWrkMast agvWrkMast){ - if(!agvWrkMast.getLocNo().equals(param.getLocationCode())){ - return false; - } - if(!agvWrkMast.getSourceLocNo().equals(param.getStationCode())){ - return false; - } - return true; - } + @PostMapping("/conveyor/loadContainerFinish ") + @AppAuth(memo = "鍙栧鍣ㄥ畬鎴愰�氱煡") + public R loadContainerFinish(@RequestBody Map<String,Object> params){ + return R.ok(); + } } enum AgvTask{ @@ -118,8 +117,35 @@ task{ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { + + //閽堝鍚屼竴涓枡绠卞叆搴撴椂浜х敓涓ゆ潯涓嶅悓鐩爣搴撲綅鐨勫叆搴撳伐浣滄。 + if(agvWrkMast.getIoType() == 1 && !Cools.eq(agvWrkMast.getLocNo(),param.getLocationCode())){ + + //鏌ヨ鏂扮殑宸ヤ綔妗� + AgvWrkMast agvWrkMast1 = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>() + .eq("barcode", param.getContainerCode()) + .eq("loc_no",param.getLocationCode())); + + if(!Cools.isEmpty(agvWrkMast1)){ + //鍙栨秷宸ヤ綔妗� + String locNo = agvWrkMast.getLocNo(); + agvLocMastService.updateLocStsByLocNo(locNo,"O",""); + agvWrkMastService.deleteByWrkNo(agvWrkMast.getWrkNo()); + agvWrkDetlService.deleteByWrkNo(agvWrkMast.getWrkNo()); + + agvWrkMast = agvWrkMast1; + } + } + + //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚 - agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),205); + agvWrkMast.setWrkSts(205L); + if(param.getLocationCode().contains("@") && param.getLocationCode().contains("CS")){ + agvWrkMast.setLocNo(param.getLocationCode()); + } + //agvWrkMast.setLocNo(param.getLocationCode()); + agvWrkMastService.updateById(agvWrkMast); + //agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),205); //鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱 if(agvWrkMast.getIoType() == 101 || agvWrkMast.getIoType() == 103 || agvWrkMast.getIoType() == 107){ @@ -128,7 +154,7 @@ } //鍑哄簱浠诲姟 110.绌烘澘鍑哄簱 if(agvWrkMast.getIoType() == 110){ - agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode()); + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode()); } } @@ -204,7 +230,11 @@ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { //淇敼宸ヤ綔妗g姸鎬佷负204.鏀捐揣瀹屾垚 - agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),204); + agvWrkMast.setWrkSts(204L); + //agvWrkMast.setLocNo(param.getLocationCode()); + agvWrkMastService.updateById(agvWrkMast); + //agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),204); + } public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { -- Gitblit v1.9.1