From ff9ff27ce3da6f911576152a0d41e8830041f0a0 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期三, 21 五月 2025 10:12:14 +0800 Subject: [PATCH] 接口编写 --- src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java | 66 ++++++++++++++++++++++++-------- 1 files changed, 49 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java index b96533b..da5bdc5 100644 --- a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java @@ -1,6 +1,7 @@ package com.zy.asrs.task.handler; +import com.baomidou.mybatisplus.enums.SqlLike; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.core.exception.CoolException; @@ -155,7 +156,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvLocMast.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvLocMast.getBarcode().substring(0, 2))); + // 鐩爣妤煎眰 mast.setPauseMk(agvLocMast.getLocType3().toString()); @@ -191,10 +193,19 @@ return SUCCESS; } + private ReturnT<String> doAutoMove2(AgvWrkMast agvWrkMast) { Date now = new Date(); - //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 - AgvLocMast locMast = agvCommonService.getLocNo(3, agvWrkMast.getCrnNo(), false, true); + String barcode = agvWrkMast.getBarcode(); + AgvLocMast locMast; + if (Integer.parseInt(barcode.substring(0, 2)) == 31) { + //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 + locMast = agvCommonService.getLocByLocRule(6, 2, 1); + } else { + //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 + locMast = agvCommonService.getLocNo(3, agvWrkMast.getCrnNo(), false, true); + } + if (Cools.isEmpty(locMast)) { log.info("鏆傛棤搴撲綅"); return FAIL; @@ -250,7 +261,7 @@ } if (Cools.isEmpty(devpNo)) { - log.info("鏆傛棤绌洪棽鎺ラ┏浣�"); + //log.info("鏆傛棤绌洪棽鎺ラ┏浣�"); return FAIL; //throw new CoolException("鏆傛棤绌洪棽鎺ラ┏浣�"); } @@ -315,7 +326,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvLocMast.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvLocMast.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); @@ -416,7 +428,7 @@ } else if (agvLocMast.getFloor() == 1 && agvLocMast.getLev1() == 2) { floor = "02F1"; } - List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 109).like("source_loc_no", floor).or().eq("io_type", 113)); + List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 109).like("barcode", "30", SqlLike.RIGHT).like("source_loc_no", floor).or().eq("io_type", 113)); if (agvWrkMasts.size() >= 5) { //log.error("鏆傚仠鍥炴祦"); return FAIL; @@ -429,6 +441,20 @@ wrkSts = 21L; ioType = 109; } else { + try { + List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>().eq("loc_sts", "O").eq("loc_type1", 3).eq("lev1", 1).eq("floor", 1)); + int num = 20; + Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "LOC_3_NUM_RETURN")); + if (config != null && !Cools.isEmpty(config.getValue())) { + num = Integer.parseInt(config.getValue()); + } + if (agvLocMasts == null || agvLocMasts.size() < num) { + log.error("<搴撲綅涓嶈冻>" + num + "<搴撲綅涓嶈冻>"); + return FAIL; + } + } catch (Exception e) { + + } //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 locMast = agvCommonService.getLocNo(3, 1, true, true); locNo = locMast.getLocNo(); @@ -452,7 +478,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvLocMast.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvLocMast.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); @@ -493,9 +520,9 @@ } else if (agvLocMast.getFloor() == 2) { floor = "F2"; } - List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 109).like("source_loc_no", floor).or().eq("io_type", 113)); + List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 109).like("barcode", "31", SqlLike.RIGHT).like("source_loc_no", floor).or().eq("io_type", 113)); Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "RETURN_6_MAX")); - if (config == null && !Cools.isEmpty(config.getValue())) { + if (config != null && !Cools.isEmpty(config.getValue())) { if (agvWrkMasts.size() >= Integer.parseInt(config.getValue())) { return FAIL; } @@ -536,13 +563,14 @@ //璐ф灦缂栫爜 mast.setBarcode(agvLocMast.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvLocMast.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); mast.setModiUser(9527L); mast.setModiTime(now); - mast.setLogErrMemo("autoEmptyBack4"); + mast.setLogErrMemo("autoEmptyBackSiqi"); if (!agvWrkMastService.insertByIncrease(mast)) { throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); } @@ -577,7 +605,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvBasDevp.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvBasDevp.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); mast.setModiUser(9527L); @@ -634,7 +663,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvBasDevp.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvBasDevp.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); mast.setModiUser(9527L); @@ -689,7 +719,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvLocMast.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvLocMast.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); @@ -747,9 +778,9 @@ AgvLocMast LocMast; if (agvLocMast.getLev1() == 1) { //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅 - LocMast = agvCommonService.getLocByLocRule(3, 1, 2); + LocMast = agvCommonService.getLocByLocRule2(3, 1, 2); } else { - LocMast = agvCommonService.getLocByLocRule(3, 1, 1); + LocMast = agvCommonService.getLocByLocRule2(3, 1, 1); } List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 12)); if (agvWrkMasts.size() >= maxTansk) { @@ -771,7 +802,8 @@ //璐ф灦缂栫爜 mast.setBarcode(agvLocMast.getBarcode()); //璐ф灦绫诲瀷 - mast.setWhsType(30); + mast.setWhsType(Integer.parseInt(agvLocMast.getBarcode().substring(0, 2))); + mast.setAppeUser(9527L); mast.setAppeTime(now); -- Gitblit v1.9.1