From 093c43638d3f9aa64fc3b396a0a2452cc28abbe3 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期五, 23 五月 2025 18:59:39 +0800 Subject: [PATCH] 生成移库任务 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java | 13 +++++++++---- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java | 25 +++++++++++++++++++++++-- rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java | 4 ++-- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java | 2 +- rsf-admin/src/i18n/zh.js | 1 + rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java | 2 +- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java | 2 +- 7 files changed, 38 insertions(+), 11 deletions(-) diff --git a/rsf-admin/src/i18n/zh.js b/rsf-admin/src/i18n/zh.js index 3de4811..5606f1f 100644 --- a/rsf-admin/src/i18n/zh.js +++ b/rsf-admin/src/i18n/zh.js @@ -1125,6 +1125,7 @@ batch: '鎵归噺鎿嶄綔', confirm: '纭', pick: '鎷f枡', + check: '鐩樼偣', bulkExport: "鎵归噺瀵煎嚭", selectSite: '閫夋嫨绔欑偣', confirmSelect: '纭閫夋嫨', diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java index ac258a8..5f8890f 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java @@ -101,7 +101,7 @@ if (Objects.isNull(map)) { return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - return locItemService.gentMoveTask(map); + return locItemService.genMoveTask(map); } /** diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java index 1068c34..5c172a4 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java @@ -137,7 +137,7 @@ .in(Task::getTaskStatus, longs)); for (Task task : tasks) { - task.setTaskStatus(task.getTaskType() < (short) 100 ? TaskStsType.COMPLETE_IN.id : TaskStsType.COMPLETE_OUT.id); + task.setTaskStatus(task.getTaskType() < 100 ? TaskStsType.COMPLETE_IN.id : TaskStsType.COMPLETE_OUT.id); } if (!taskService.updateBatchById(tasks)) { return R.error("瀹屾垚浠诲姟澶辫触"); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java index d07868f..b0db724 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java @@ -39,9 +39,9 @@ GENERATE_WAVE_SEED("197", "绛夊緟瀹瑰櫒鍒拌揪"), - WAVE_SEED("198", "鎾涓�/鐩樼偣涓�"), + WAVE_SEED("199", "鎾涓�/鐩樼偣涓�"), - COMPLETE_OUT("199", "鍑哄簱瀹屾垚"), + COMPLETE_OUT("198", "鍑哄簱瀹屾垚"), UPDATED_OUT("200", "搴撳瓨鏇存柊瀹屾垚"), ; diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java index 64e47dd..1aaf06c 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java @@ -10,6 +10,6 @@ R generateTask(Map<String, Object> map); - R gentMoveTask(Map<String, Object> map); + R genMoveTask(Map<String, Object> map); } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java index d07ce0b..b0584d9 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java @@ -164,7 +164,7 @@ */ @Override @Transactional(rollbackFor = Exception.class) - public R gentMoveTask(Map<String, Object> map) { + public R genMoveTask(Map<String, Object> map) { if (Objects.isNull(map.get("targetLoc")) && StringUtils.isNotBlank(map.get("targetLoc").toString())) { throw new CoolException("鐩爣搴撲綅涓嶈兘涓虹┖锛�1"); } @@ -193,10 +193,31 @@ task.setOrgLoc(orgLoc.getCode()) .setTaskCode(ruleCode) .setTaskType(TaskType.TASK_TYPE_LOC_MOVE.type) + .setTargLoc(targetLoc.getCode()) + .setTaskStatus(TaskStsType.GENERATE_IN.id) .setBarcode(orgLoc.getBarcode()); + List<LocItem> locItems = locItemService.list(new LambdaQueryWrapper<LocItem>().eq(LocItem::getLocId, orgLoc.getId())); + if (locItems.isEmpty()) { + throw new CoolException("搴撲綅鏄庣粏涓嶅瓨鍦紒锛�"); + } - return null; + List<TaskItem> taskItems = new ArrayList<>(); + for (LocItem item : locItems) { + TaskItem taskItem = new TaskItem(); + BeanUtils.copyProperties(item, taskItem); + taskItem.setTaskId(task.getId()) + .setAnfme(item.getAnfme()) + .setBatch(item.getBatch()) + .setOrderType(OrderType.ORDER_IN.type) + .setWkType(Short.parseShort(OrderWorkType.ORDER_WORK_TYPE_OTHER_IN.type)); + taskItems.add(taskItem); + } + if (!taskItemService.saveBatch(taskItems)) { + throw new CoolException("浠诲姟鏄庣粏鐢熸垚澶辫触锛侊紒"); + } + + return R.ok(task); } } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java index cc1dd47..d6484af 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java @@ -465,12 +465,17 @@ if (Objects.isNull(locWorking)) { throw new CoolException("鏁版嵁閿欒锛屼綔涓氫腑搴撳瓨鏁版嵁涓㈠け锛侊紒"); } - if (locWorking.getAnfme().compareTo(taskItem.getAnfme()) >= 0) { - locWorking.setAnfme(Math.round((locWorking.getAnfme() - taskItem.getAnfme()) * 10000) / 10000.0); + if (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) { + locWorking.setWorkQty(0.0); + locWorking.setAnfme(taskItem.getAnfme()); } else { - continue; + if (locWorking.getAnfme().compareTo(taskItem.getAnfme()) >= 0) { + locWorking.setWorkQty(0.0); + locWorking.setAnfme(Math.round((locWorking.getAnfme() - taskItem.getAnfme()) * 10000) / 10000.0); + } else { + continue; + } } - BeanUtils.copyProperties(locWorking, locItem); locItem.setLocCode(loc.getCode()).setLocId(loc.getId()).setId(null); items.add(locItem); -- Gitblit v1.9.1