skyouc
2 天以前 093c43638d3f9aa64fc3b396a0a2452cc28abbe3
生成移库任务
7个文件已修改
43 ■■■■ 已修改文件
rsf-admin/src/i18n/zh.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/LocItemService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/LocItemServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-admin/src/i18n/zh.js
@@ -1125,6 +1125,7 @@
        batch: '批量操作',
        confirm: '确认',
        pick: '拣料',
        check: '盘点',
        bulkExport: "批量导出",
        selectSite: '选择站点',
        confirmSelect: '确认选择',
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);
    }
    /**
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("完成任务失败");
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", "库存更新完成"),
    ;
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);
}
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);
    }
}
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 (task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) {
                locWorking.setWorkQty(0.0);
                locWorking.setAnfme(taskItem.getAnfme());
            } else {
            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);