skyouc
2 天以前 4f9902403a176d8e97def29caaf525dde3585393
盘点差异单功能优化
3个文件已修改
28 ■■■■■ 已修改文件
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderWorkType.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/OrderWorkType.java
@@ -52,6 +52,8 @@
            return OrderWorkType.ORDER_WORK_TYPE_OTHER.type;
        }else if (desc.equals(OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.desc)) {
            return OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.type;
        } else if (desc.equals(OrderWorkType.ORDER_WORK_TYPE_STOCK_CHECK.desc)) {
            return OrderWorkType.ORDER_WORK_TYPE_STOCK_CHECK.type;
        }
        return null;
    }
@@ -77,6 +79,8 @@
            return OrderWorkType.ORDER_WORK_TYPE_OTHER.desc;
        } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.type)) {
            return OrderWorkType.ORDER_WORK_TYPE_STOCK_OUT.desc;
        } else if (type.equals(OrderWorkType.ORDER_WORK_TYPE_STOCK_CHECK.type)) {
            return OrderWorkType.ORDER_WORK_TYPE_STOCK_CHECK.desc;
        }
        return null;
    }
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
@@ -319,6 +319,7 @@
                            .setMatnrCode(checkParam.getMatnrCode())
                            .setPlatOrderCode(checkParam.getPlatOrderCode())
                            .setPlatWorkCode(checkParam.getPlatWorkCode())
                            .setUnit(checkParam.getStockUnit())
                            .setSpec(checkParam.getSpec())
                            .setModel(checkParam.getModel())
                            .setFieldsIndex(checkParam.getFieldsIndex())
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -1037,10 +1037,14 @@
        List<LocItemWorking> workings = new ArrayList<>();
        List<TaskItem> items = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId()));
        items.forEach(taskItem -> {
            if (taskItem.getAnfme() > 0) {
            LocItemWorking itemWorking = new LocItemWorking();
            BeanUtils.copyProperties(taskItem, itemWorking);
            itemWorking.setTaskId(task.getId()).setLocId(loc1.getId()).setLocCode(loc1.getCode());
                itemWorking.setTaskId(task.getId())
                        .setLocId(loc1.getId())
                        .setLocCode(loc1.getCode());
            workings.add(itemWorking);
            }
        });
        if (!locItemWorkingService.saveBatch(workings)) {
@@ -1389,14 +1393,29 @@
        List<LocItem> locItems = new ArrayList<>();
        items.forEach(taskItem -> {
            Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, task.getTargLoc()), false);
            if (Objects.isNull(loc)) {
                throw new CoolException("库位不存在!!");
            }
            LocItem item = new LocItem();
            LocItem locItem = locItemService.getOne(new LambdaQueryWrapper<LocItem>()
                    .eq(LocItem::getMatnrId, taskItem.getMatnrId())
                    .eq(LocItem::getLocId, loc.getId())
                    .eq(StringUtils.isNoneBlank(taskItem.getBatch()), LocItem::getBatch, taskItem.getBatch())
                    .eq(StringUtils.isNoneBlank(taskItem.getFieldsIndex()), LocItem::getFieldsIndex, taskItem.getFieldsIndex()));
            if (Objects.isNull(locItem)) {
            BeanUtils.copyProperties(taskItem, item);
            item.setLocCode(loc.getCode()).setId(null)
                item.setLocCode(loc.getCode())
                        .setId(null)
                    .setLocId(loc.getId())
                    .setUpdateBy(loginUserId)
                    .setWkType(taskItem.getWkType())
                    .setType(taskItem.getOrderType());
            locItems.add(item);
            } else {
                locItem.setAnfme(Math.round((locItem.getAnfme() + taskItem.getAnfme()) * 10000) / 10000.0)
                        .setUpdateTime(new Date());
                locItems.add(locItem);
            }
        });
        if (!locItemService.saveBatch(locItems)) {
            throw new CoolException("库位明细更新失败!!");