From 875a183c5d5a12a4ba5c8d37559295ac1ce6cce3 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 09 七月 2025 21:13:11 +0800 Subject: [PATCH] 播种流程优化 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java | 85 ++++++++++++++++++++++-------------------- 1 files changed, 44 insertions(+), 41 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java index 26cfdd1..654aad2 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java @@ -84,7 +84,7 @@ if (task == null) { return R.error("浠诲姟涓嶅瓨鍦紒锛�"); } - log.info("瀹瑰櫒鍒拌揪鎺ユ敹锛屼换鍔″彿锛歿}锛屽綋鍓嶇姸鎬侊細{}锛屼笂鎶ョ姸鎬侊細{}",task.getTaskNo(),task.getTaskSts$(),TaskStsType.WCS_CONTAINER_RECEIVE.desc); + log.info("瀹瑰櫒鍒拌揪鎺ユ敹锛屼换鍔″彿锛歿}锛屽綋鍓嶇姸鎬侊細{}锛屼笂鎶ョ姸鎬侊細{}, 鎺ユ敹鍙傛暟锛歿}",task.getTaskNo(),task.getTaskSts$(),TaskStsType.WCS_CONTAINER_RECEIVE.desc, JSONObject.toJSONString(arrivedParam)); taskType = task.getTaskType() > 100 ? "outStock":"inStock"; @@ -107,32 +107,36 @@ if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT_ARRIVED.id || task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT_TASK_DONE.id ) { // 鍒拌揪鎷i�変綅锛屾帶鍒舵挱绉嶅浜伅 - List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getBarcode, task.getBarcode())); - if(cacheSites.size() == 0) { + CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>() + .eq(CacheSite::getChannel, task.getTargetSite()) + .isNull(CacheSite::getOrderId).orderByAsc(CacheSite::getId)); +// List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>() +// .eq(CacheSite::getBarcode, task.getBarcode())); + if(Objects.isNull(cacheSite)) { log.error("鏉$爜锛歿}锛屾湭鎵惧埌鎾澧欎寒鐏�",task.getBarcode()); throw new CoolException("鏈壘鍒版挱绉嶅"); } - for (CacheSite cacheSite:cacheSites) { - // 鑾峰彇浠诲姟鏄庣粏鏁伴噺 - List<TaskDetl> taskDetlByTaskId = taskDetlService.getTaskDetlByTaskId(task.getId()); - int sum = (int)taskDetlByTaskId.stream().mapToDouble(TaskDetl::getAnfme).sum(); - SlapLightControlParam slapLightControlParam = new SlapLightControlParam(); - slapLightControlParam - .setControllerCode(cacheSite.getMemo()) - .setTagCode(cacheSite.getSiteNo()) - .setColor("GREEN") - .setIndex(cacheSite.getIndex()) - .setMode("LIGHT") - .setDisplay(sum + ""); - // 鍙戣捣浜伅璇锋眰 - log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅涓嬪彂",task.getTaskNo(), JSONObject.toJSONString(slapLightControlParam)); - CommonReponse response = HttpEssUtils.post("鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅", HttpEssUtils.PLT_SEND_COMMAND, slapLightControlParam); - if (response.getCode().equals(0)) { - log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅鎴愬姛",task.getTaskNo(),cacheSite.getSiteNo()); - } else { - log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅澶辫触",task.getTaskNo(),cacheSite.getSiteNo()); - } - } + + // 鑾峰彇浠诲姟鏄庣粏鏁伴噺 + List<TaskDetl> taskDetlByTaskId = taskDetlService.getTaskDetlByTaskId(task.getId()); + int sum = (int)taskDetlByTaskId.stream().mapToDouble(TaskDetl::getAnfme).sum(); + SlapLightControlParam slapLightControlParam = new SlapLightControlParam(); + slapLightControlParam + .setControllerCode(cacheSite.getMemo()) + .setTagCode(cacheSite.getSiteNo()) + .setColor("GREEN") + .setIndex(cacheSite.getIndex()) + .setMode("LIGHT") + .setDisplay(sum + ""); + // 鍙戣捣浜伅璇锋眰 + log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅涓嬪彂",task.getTaskNo(), JSONObject.toJSONString(slapLightControlParam)); + CommonReponse response = HttpEssUtils.post("鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅", HttpEssUtils.PLT_SEND_COMMAND, slapLightControlParam); + if (response.getCode().equals(0)) { + log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅鎴愬姛",task.getTaskNo(),cacheSite.getSiteNo()); + } else { + log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅澶辫触",task.getTaskNo(),cacheSite.getSiteNo()); + } + boolean update = taskService.update(new LambdaUpdateWrapper<Task>() .set(Task::getTaskSts, TaskStsType.WAVE_SEED.id) .set(Task::getOriginSite, arrivedParam.getSlotCode()) @@ -140,7 +144,6 @@ if (!update) { throw new CoolException("瀹瑰櫒鍒拌揪浠诲姟鏇存柊澶辫触锛侊紒"); } - } else if(task.getTaskSts().equals(TaskStsType.UPDATED_OUT.id)) { ConveyorStarParam conveyorStarParam = new ConveyorStarParam(); conveyorStarParam.setSlotCode(task.getOriginSite()) @@ -347,7 +350,7 @@ public R slapLightLogic(Map<String, Object> request) { String taskNo = request.get("taskNo").toString(); String orderNo = request.get("orderNo").toString(); - + String siteNo = Objects.isNull(request.get("siteNo")) ? null : request.get("siteNo").toString(); List<CacheSite> performs = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, orderNo)); if (Objects.isNull(performs.stream().findFirst().get().getPlatformId())) { throw new CoolException("璇锋墦鍗版槑缁嗭紝骞剁粦瀹氱洰鏍囬泦璐у尯"); @@ -376,21 +379,21 @@ // }).collect(Collectors.toList()); //鍒ゆ柇鏁伴噺鏄惁涓庤鍗曟槑缁嗙殑闇�姹傞噺鐩稿悓锛岀浉鍚屽垯璁㈠崟瀹屾垚 - if (one.getPickStatus() == OrderPickStatus.ORDER_PICK_STATUS_DONE.val) { - //鎾瀹屾垚锛岄噴鏀剧粦瀹氱珯鐐� - List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, orderNo)); - for (CacheSite cacheSite : cacheSites) { - if (!cacheSite.getSiteStatus().equals(CacheSiteStatusType.O.id)) { - cacheSite.setSiteStatus(CacheSiteStatusType.O.id); - cacheSite.setOrderId(null); - cacheSite.setBarcode(null); - cacheSite.setOrderNo(null); - cacheSite.setPlatformId(null); - cacheSite.setPlatformNo(null); - cacheSite.setUpdateTime(new Date()); - if (!cacheSiteService.updateById(cacheSite)) { - throw new CoolException("鎾绔欑偣鏇存柊澶辫触"); - } + //鎾瀹屾垚锛岄噴鏀剧粦瀹氱珯鐐� + List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>() + .eq(!Objects.isNull(siteNo), CacheSite::getSiteNo, siteNo) + .eq(CacheSite::getOrderNo, orderNo)); + for (CacheSite cacheSite : cacheSites) { + if (!cacheSite.getSiteStatus().equals(CacheSiteStatusType.O.id)) { + cacheSite.setSiteStatus(CacheSiteStatusType.O.id); + cacheSite.setOrderId(null); + cacheSite.setBarcode(null); + cacheSite.setOrderNo(null); + cacheSite.setPlatformId(null); + cacheSite.setPlatformNo(null); + cacheSite.setUpdateTime(new Date()); + if (!cacheSiteService.updateById(cacheSite)) { + throw new CoolException("鎾绔欑偣鏇存柊澶辫触"); } } } -- Gitblit v1.9.1