From 45d602719964509214d06ec5173f23e5307d5dfe Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期二, 16 四月 2024 12:24:10 +0800 Subject: [PATCH] 无空库位时,不做空板入库操作 --- src/main/java/com/zy/asrs/controller/AgvOpenController.java | 170 ++++++++++++-------------------------------------------- 1 files changed, 37 insertions(+), 133 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvOpenController.java b/src/main/java/com/zy/asrs/controller/AgvOpenController.java index 85395c6..89fb7e1 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锛夛細 @@ -59,7 +60,7 @@ apiLogService.save( "ESS浠诲姟鍥炶皟", - "/tzskwms/agv/task/event/status", + "/phyzwms/agv/task/event/status", null, null, JSON.toJSONString(JSONObject.toJSONString(param)), @@ -77,17 +78,16 @@ } AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", wrkNo)); if(Cools.isEmpty(agvWrkMast)){ - return R.error("浠诲姟缂栧彿閿欒"); + agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode",param.getPodCode())); + if (Cools.isEmpty(agvWrkMast)){ + return R.error("浠诲姟缂栧彿閿欒"); + } } -// if(!checkParam(param,agvWrkMast)){ -// return R.error("浠诲姟鍙傛暟涓庡伐浣滄。鍙傛暟涓嶇鍚�"); -// } - - AgvTask agvTask = AgvTask.valueOf(param.getEventType()); + AgvTask agvTask = AgvTask.valueOf(param.getMethod()); Class<AgvTask> clz = AgvTask.class; try { - Method method = clz.getDeclaredMethod(param.getStatus(), AgvWrkMast.class, AgvTaskCallBackParam.class); + Method method = clz.getDeclaredMethod("success", AgvWrkMast.class, AgvTaskCallBackParam.class); method.invoke(agvTask,agvWrkMast,param); } catch (NoSuchMethodException e) { return R.error("浠诲姟鐘舵�乻tatus鍙傛暟鏈夎"); @@ -101,190 +101,94 @@ 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{ /** - * 涓婃姤浠诲姟鐘舵�� + * 涓婃姤浠诲姟瀹屾垚 */ - task{ + end{ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚 - agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),205); + agvWrkMast.setWrkSts(205L); //鍑哄簱浠诲姟 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 107.鐩樼偣鍑哄簱 if(agvWrkMast.getIoType() == 101 || agvWrkMast.getIoType() == 103 || agvWrkMast.getIoType() == 107){ //淇敼鍑哄簱绔欑偣鐘舵�� - agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode()); + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue()); } //鍑哄簱浠诲姟 110.绌烘澘鍑哄簱 if(agvWrkMast.getIoType() == 110){ - agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode()); + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue()); + agvWrkMast.setWrkSts(206L); } - } - - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - + agvWrkMastService.updateById(agvWrkMast); } }, /** - * 涓婃姤浠诲姟鍒嗛厤缁欐満鍣ㄤ汉 + * 浠诲姟寮�濮� */ - task_allocated{ + start{ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - + //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负203.浠诲姟寮�濮� + agvWrkMast.setWrkSts(203L); + agvWrkMastService.updateById(agvWrkMast); } }, /** - * 涓婃姤鍙栫鐘舵�� + * 璧板嚭鍌ㄤ綅鐘舵�� */ - tote_load{ + outbin{ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { //鍏ュ簱浠诲姟 || 鎷f枡鍏ュ簱浠诲姟 ||鐩樼偣鍐嶅叆搴� ||绌烘澘鍏ュ簱 if(agvWrkMast.getIoType() == 1 || agvWrkMast.getIoType() == 53 || agvWrkMast.getIoType() == 57 || agvWrkMast.getIoType() == 10){ //淇敼婧愮珯鐐圭姸鎬佷负O.绌猴紝浠ュ強瑙g粦鎵樼洏鏉$爜 - agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O",""); + agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",null); } //淇敼AGV宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负203.RCS鏀捐揣涓� - agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),203); - - + agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),204); } - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } }, /** * 涓婃姤鏀剧鐘舵�� */ - tote_unload{ + cancel{ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - //淇敼宸ヤ綔妗g姸鎬佷负204.鏀捐揣瀹屾垚 - agvWrkMastService.updateWrkStsByWrkNo(agvWrkMast.getWrkNo(),204); - } - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { } - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } }, - robot_reach{ + apply{ @Transactional public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - }, - weight{ - @Transactional - public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - }, - rfid{ - @Transactional - public void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { - - } - - public void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param) { } }; //浠诲姟鐘舵�佷负鎴愬姛 public abstract void success(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); - //浠诲姟鐘舵�佷负澶辫触 - public abstract void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); - //浠诲姟鐘舵�佷负鍙栨秷 - public abstract void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); - //浠诲姟鐘舵�佷负鎸傝捣 - public abstract void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); +// //浠诲姟鐘舵�佷负澶辫触 +// public abstract void fail(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); +// //浠诲姟鐘舵�佷负鍙栨秷 +// public abstract void cancel(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); +// //浠诲姟鐘舵�佷负鎸傝捣 +// public abstract void suspend(AgvWrkMast agvWrkMast, AgvTaskCallBackParam param); @Setter AgvBasDevpService agvBasDevpService; -- Gitblit v1.9.1