From 4fb06a58ed5df46f29af1e9fa65cfd40335263ad Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 18 一月 2025 17:06:18 +0800 Subject: [PATCH] # 6. 大屏添加作业类型 (全盘,还是分拣 IOType) 10.平库出库时,当前平库ID是写死在Sql里,需修改 11.平库出库没有判断是否预约出库,且生成拣货单时没有锁定库存,需确认是否考虑回库问题 26. 已拣过货的任务明细,可以再次拣货,拣货明细需添加一个拣货状态 47. 确认发货前,需判断是否已绑定至集货区 48. CTU出库后,库位103不再删除原有库位信息 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskLogTimer.java | 82 ++++++++++++++-------------------------- 1 files changed, 29 insertions(+), 53 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskLogTimer.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskLogTimer.java index db0edcf..f86ad18 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskLogTimer.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskLogTimer.java @@ -73,61 +73,37 @@ if (taskDetls.isEmpty()) { throw new CoolException("浠诲姟鏄庣粏涓嶅瓨鍦�"); - } else { //XXX 鍏堟洿鏂拌鍗曪紝鍚庡垹闄や换鍔℃槑缁� - if (task.getTaskType() == 53L) { - List<Long> waveIds = taskDetls.stream().map(TaskDetl::getWaveId).collect(Collectors.toList()); - List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().in(Order::getWaveId, waveIds)); - orders.forEach(order -> { - - }); - } else { - - } - - - + } else { //浠诲姟绫诲瀷涓�53锛屾牴鎹甒aveId淇敼璁㈠崟鏄庣粏 for (TaskDetl taskDetl : taskDetls) { - if (task.getTaskType() == 53L) { - List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getWaveId, taskDetl.getWaveId())); - orders.forEach(order -> { - List<OrderDetl> detls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId())); - if (!detls.isEmpty()) { - detls.forEach(detl -> { - detl.setWorkQty(detl.getWorkQty() - taskDetl.getAnfme());//宸ヤ綔涓暟閲忓噺灏� - detl.setQty(detl.getQty() + taskDetl.getAnfme());//宸插畬鎴愭暟閲忓鍔� - detl.setUpdateTime(new Date()); - }); - } - }); - } else { - if (taskDetl.getDetlId() == null) { - continue; + if (taskDetl.getDetlId() == null) { + continue; + } + OrderDetl orderDetl = orderDetlService.getById(taskDetl.getDetlId()); + if (orderDetl == null) { + throw new CoolException("璁㈠崟鏄庣粏涓嶅瓨鍦�"); + } + orderDetl.setWorkQty(orderDetl.getWorkQty() - taskDetl.getAnfme());//宸ヤ綔涓暟閲忓噺灏� + orderDetl.setQty(orderDetl.getQty() + taskDetl.getAnfme());//宸插畬鎴愭暟閲忓鍔� + orderDetl.setUpdateTime(new Date()); + if (!orderDetlService.updateById(orderDetl)) { + throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触"); + } + //妫�娴嬭鍗曟槸鍚﹀畬鎴� + boolean checkOrderComplete = orderService.checkOrderComplete(orderDetl.getOrderId()); + + if (checkOrderComplete) { + //璁㈠崟宸茬粡瀹屾垚 + Order order = orderService.getById(orderDetl.getOrderId()); + if (order == null) { + throw new CoolException("璁㈠崟涓嶅瓨鍦�"); } - OrderDetl orderDetl = orderDetlService.getById(taskDetl.getDetlId()); - if (orderDetl == null) { - throw new CoolException("璁㈠崟鏄庣粏涓嶅瓨鍦�"); + order.setOrderSettle(OrderSettleType.COMPLETE.val()); + order.setUpdateTime(new Date()); + if (!orderService.updateById(order)) { + throw new CoolException("璁㈠崟鏇存柊澶辫触"); } - orderDetl.setWorkQty(orderDetl.getWorkQty() - taskDetl.getAnfme());//宸ヤ綔涓暟閲忓噺灏� - orderDetl.setQty(orderDetl.getQty() + taskDetl.getAnfme());//宸插畬鎴愭暟閲忓鍔� - orderDetl.setUpdateTime(new Date()); - if (!orderDetlService.updateById(orderDetl)) { - throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触"); - } - //妫�娴嬭鍗曟槸鍚﹀畬鎴� - boolean checkOrderComplete = orderService.checkOrderComplete(orderDetl.getOrderId()); - if (checkOrderComplete) { - //璁㈠崟宸茬粡瀹屾垚 - Order order = orderService.getById(orderDetl.getOrderId()); - if (order == null) { - throw new CoolException("璁㈠崟涓嶅瓨鍦�"); - } - order.setOrderSettle(OrderSettleType.COMPLETE.val()); - order.setUpdateTime(new Date()); - if (!orderService.updateById(order)) { - throw new CoolException("璁㈠崟鏇存柊澶辫触"); - } - } + } } } @@ -196,7 +172,7 @@ } Dict dict = dictService.getOne(new LambdaQueryWrapper<Dict>().eq(Dict::getFlag, "taskLogDiffDays").eq(Dict::getStatus, 1)); - if(dict == null) { + if (dict == null) { return; } for (Task task : list) { @@ -238,7 +214,7 @@ taskLog.setId(null); if (!taskLogService.save(taskLog)) { throw new CoolException("淇濆瓨浠诲姟鍘嗗彶妗eけ璐�"); - } else { //fixme 鍘嗗彶浠诲姟妗d繚瀛樺悗锛屼慨鏀硅鍗曠姸鎬佷俊鎭悗锛屽啀鍒犻櫎浠诲姟妗� + } else { //鏇存柊璁㈠崟淇℃伅 taskDetls.forEach(taskDetl -> { if (taskDetl.getDetlId() != null) { -- Gitblit v1.9.1