From e84b6c48322a84e1e1404a39f6bab8568a4cdd09 Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期二, 03 九月 2024 13:19:52 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 42 insertions(+), 10 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 6c1417e..c8b1273 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java @@ -388,6 +388,20 @@ public String handControlLocMove(LocMoveParam param, Long userId) { String fl = String.valueOf(param.getFloor()); short floor =(short)Integer.parseInt(fl.substring(0, 1)); + switch (param.getFloor()) { + case "1F01": + floor = 1; + break; + case "1F02": + floor = 4; + break; + case "2F": + floor = 2; + break; + case "3F": + floor = 3; + break; + } Integer ioType = 0; AgvLocMast agvLocMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", param.getLocNo())); if (Cools.isEmpty(agvLocMast)) { @@ -405,17 +419,21 @@ } } else { if (agvLocMast.getFloor() != floor) { -// if (floor==1 && agvLocMast.getFloor()!=1){ -// ioType = 121; -// }else { - if (agvLocMast.getFloor() == 1) { - throw new CoolException("褰撳墠搴撲綅璇烽�夋嫨璋冩嫧鍗曡皟鎷紒"); + if (agvLocMast.getFloor() == 1 && (floor == 2 || floor == 3)) { + throw new CoolException("褰撳墠搴撲綅璇烽�夋嫨璋冩嫧鍗曡皟鎷紒"); + } else { + ioType = 12; + } + } else { + if (agvLocMast.getFloor() == 1) { + if (agvLocMast.getLev1() == 1 && floor == 1) { + ioType = 11; } else { ioType = 12; } -// } - } else { - ioType = 11; + } else { + ioType = 11; + } } } Date now = new Date(); @@ -425,7 +443,21 @@ throw new CoolException("褰撳墠"+agvLocMast.getBarcode()+"璐ф灦鐮佸凡鍦ㄥ伐浣滄。涓�"); } //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 - AgvLocMast locMast = agvCommonService.getLocNo(agvLocMast.getLocType1(),floor,false,false); + AgvLocMast locMast = null; + if (floor == 1) { + locMast = agvCommonService.getLocNo(agvLocMast.getLocType1(),floor,true,false); + } else { + locMast = agvCommonService.getLocNo(agvLocMast.getLocType1(),floor,false,false); + } + + // 鐩爣妤煎眰鍘� 鍚稿2妤� + if (floor == 4) { + if (locMast.getLev1() == 1) { + throw new CoolException("鍚稿涓�妤兼病鏈夌┖搴撲綅鍙互绉诲簱锛�"); + } + + } + if (Cools.isEmpty(locMast)) { throw new CoolException("褰撳墠妤煎眰娌℃湁绌哄簱浣�"); } @@ -480,7 +512,7 @@ } // 濡傛灉褰撳墠浠诲姟鏄澹充簩涓夋ゼ鍥為��涓�妤肩殑 鍥炴粴璋冩嫧鍗� - if (ioType == 12 && locMast.getFloor() == 1) { + 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())); -- Gitblit v1.9.1