From ce43df438a4bbef5b9ffaed0a33a97db6e88fbf1 Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期二, 14 一月 2025 14:57:07 +0800 Subject: [PATCH] 优化异常处理及订单同步逻辑 --- src/main/java/com/zy/asrs/controller/AgvLocMastController.java | 48 ++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 44 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvLocMastController.java b/src/main/java/com/zy/asrs/controller/AgvLocMastController.java index 9070c6a..8b9dfd1 100644 --- a/src/main/java/com/zy/asrs/controller/AgvLocMastController.java +++ b/src/main/java/com/zy/asrs/controller/AgvLocMastController.java @@ -48,7 +48,7 @@ @RequestParam Map<String, Object> param){ excludeTrash(param); EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>(); - convert(param, wrapper); + convert1(param, wrapper); if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} return R.ok(agvLockMastService.selectPage(new Page<>(curr, limit), wrapper.eq("status",0))); } @@ -81,6 +81,29 @@ if (locMast.getLocSts().equals("F") && (oldLocMast.getLocSts().equals("D") || oldLocMast.getLocSts().equals("O"))) { return R.error("褰撳墠鎿嶄綔宸茶闃绘锛岃鑱旂郴绠$悊鍛�"); } + int br = 0; + if (locMast.getLocSts() == "O" || locMast.getLocSts() == "X"){ + switch (locMast.getBarcode().substring(0,2)) { + case "10": + br = 1; + break; + case "20": + br = 2; + break; + case "21": + br = 4; + break; + case "30": + br = 3; + break; + case "40": + br = 5; + break; + } + if (oldLocMast.getLocType1() != br) { + return R.error("璐ф灦鍜屽簱浣嶇被鍨嬩笉鍖归厤锛�"); + } + } Date now = new Date(); // 鏈夌墿鏂欐椂淇敼涓虹┖搴撲綅鎴栬�呯┖鏉垮簱浣嶏紝鍒欏垹闄ゅ簱瀛樻槑缁� if (oldLocMast.getLocSts().equals("R") || oldLocMast.getLocSts().equals("F") || oldLocMast.getLocSts().equals("S")) { @@ -104,6 +127,9 @@ } if (!agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no", locMast.getLocNo()))) { throw new CoolException("鏈嶅姟鍣ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + } + if (locMast.getLocSts().equals("O")) { + locMast.setBarcode(""); } } } @@ -153,11 +179,13 @@ @ManagerAuth(memo = "鍒濆鍖栧簱浣�") public R init(LocMastInitParam param) { //娓呯┖鍘熸湁搴撲綅 - agvLockMastService.clearLoc(); +// agvLockMastService.clearLoc(); + //鍒濆鍖栦竴妤煎簱浣� + agvLockMastService.initLocFloor1(); //鍒濆鍖栦簩妤煎簱浣� - agvLockMastService.initLocFloor2(); +// agvLockMastService.initLocFloor2(); //鍒濆鍖栦笁妤肩珯鐐� - //agvLockMastService.initLocFloor3(); +// agvLockMastService.initLocFloor3(); return R.ok(); } @@ -180,4 +208,16 @@ } } } + private <T> void convert1(Map<String, Object> map, EntityWrapper<T> wrapper){ + for (Map.Entry<String, Object> entry : map.entrySet()){ + String val = String.valueOf(entry.getValue()); + if (val.contains(RANGE_TIME_LINK)){ + String[] dates = val.split(RANGE_TIME_LINK); + wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); + wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); + } else { + wrapper.eq(entry.getKey(), val); + } + } + } } -- Gitblit v1.9.1