自动化立体仓库 - WMS系统
lty
2025-07-02 6c15007b12d36d8f6d3e3f8127aa85a21aeb32c4
src/main/java/com/zy/asrs/controller/WorkController.java
@@ -80,73 +80,73 @@
        return R.ok("入库启动成功").add(workService.startupFullPutStore(fullStoreParam,getUserId()));
    }
//    @RequestMapping("/plate/out/start")
//    @ManagerAuth(memo = "出库作业")
//    public R fullStoreTakeStart(@RequestBody StockOutParam param) {
//        workService.startupFullTakeStore(param, getUserId());
//        return R.ok("出库启动成功");
//    }
    @RequestMapping("/plate/out/start")
    @ManagerAuth(memo = "出库作业")
    public R fullStoreTakeStart(@RequestBody StockOutFloorParam param) {
        if (param.getFloor() != null) {
            List<Integer> siteIdList = new ArrayList<>();
            // 第一步:根据楼层选择站点集合
            switch (param.getFloor()) {
                case 1: // 一楼(东区)
                    siteIdList = Arrays.asList(121, 124, 125, 126);
                    break;
                case 2: // 二楼(东区)
                    siteIdList = Arrays.asList(221, 224, 226, 229);
                    break;
                case 3: // 四楼(东区)
                    siteIdList = Arrays.asList(411, 412, 413, 414);
                    break;
                case 4: // 一楼(西区)
                    siteIdList = Arrays.asList(103); // 只有一个站点
                    break;
                case 5: // 二楼(西区)
                    siteIdList = Arrays.asList(201, 204, 206, 209);
                    break;
                case 6: // 四楼(西区)
                    siteIdList = Arrays.asList(401, 402, 403, 404);
                    break;
                default:
                    break;
            }
            // 第二步:根据 locNo 的排号,给每个 locDetl 设置 siteId
            if (param.getLocDetls() != null) {
                for (StockOutFloorParam.LocDetl locDetl : param.getLocDetls()) {
                    String locNo = locDetl.getLocNo(); // 如:0312001
                    if (locNo != null && locNo.length() >= 2) {
                        String rowStr = locNo.substring(0, 2); // 前两位为排号
                        int row = Integer.parseInt(rowStr);
                        Integer siteId = null;
                        // 站点分布规则
                        if (row == 1 || row == 2) {
                            siteId = siteIdList.size() > 0 ? siteIdList.get(0) : null;
                        } else if (row == 3 || row == 4) {
                            siteId = siteIdList.size() > 1 ? siteIdList.get(1) : null;
                        } else if (row == 5 || row == 6) {
                            siteId = siteIdList.size() > 2 ? siteIdList.get(2) : null;
                        } else if (row == 7 || row == 8) {
                            siteId = siteIdList.size() > 3 ? siteIdList.get(3) : null;
                        }
                        // 设置 siteId
                        locDetl.setSiteId(siteId);
                    }
                }
            }
        }
    public R fullStoreTakeStart(@RequestBody StockOutParam param) {
        workService.startupFullTakeStore(param, getUserId());
        return R.ok("出库启动成功");
    }
//    @RequestMapping("/plate/out/start")
//    @ManagerAuth(memo = "出库作业")
//    public R fullStoreTakeStart(@RequestBody StockOutFloorParam param) {
//        if (param.getFloor() != null) {
//            List<Integer> siteIdList = new ArrayList<>();
//
//            // 第一步:根据楼层选择站点集合
//            switch (param.getFloor()) {
//                case 1: // 一楼(东区)
//                    siteIdList = Arrays.asList(121, 124, 125, 126);
//                    break;
//                case 2: // 二楼(东区)
//                    siteIdList = Arrays.asList(221, 224, 226, 229);
//                    break;
//                case 3: // 四楼(东区)
//                    siteIdList = Arrays.asList(411, 412, 413, 414);
//                    break;
//                case 4: // 一楼(西区)
//                    siteIdList = Arrays.asList(103); // 只有一个站点
//                    break;
//                case 5: // 二楼(西区)
//                    siteIdList = Arrays.asList(201, 204, 206, 209);
//                    break;
//                case 6: // 四楼(西区)
//                    siteIdList = Arrays.asList(401, 402, 403, 404);
//                    break;
//                default:
//                    break;
//            }
//
//            // 第二步:根据 locNo 的排号,给每个 locDetl 设置 siteId
//            if (param.getLocDetls() != null) {
//                for (StockOutFloorParam.LocDetl locDetl : param.getLocDetls()) {
//                    String locNo = locDetl.getLocNo(); // 如:0312001
//                    if (locNo != null && locNo.length() >= 2) {
//                        String rowStr = locNo.substring(0, 2); // 前两位为排号
//                        int row = Integer.parseInt(rowStr);
//
//                        Integer siteId = null;
//
//                        // 站点分布规则
//                        if (row == 1 || row == 2) {
//                            siteId = siteIdList.size() > 0 ? siteIdList.get(0) : null;
//                        } else if (row == 3 || row == 4) {
//                            siteId = siteIdList.size() > 1 ? siteIdList.get(1) : null;
//                        } else if (row == 5 || row == 6) {
//                            siteId = siteIdList.size() > 2 ? siteIdList.get(2) : null;
//                        } else if (row == 7 || row == 8) {
//                            siteId = siteIdList.size() > 3 ? siteIdList.get(3) : null;
//                        }
//
//                        // 设置 siteId
//                        locDetl.setSiteId(siteId);
//                    }
//                }
//            }
//        }
//        workService.startupFullTakeStore(param, getUserId());
//        return R.ok("出库启动成功");
//    }
    @RequestMapping("/empty/plate/in/start")
    @ManagerAuth(memo = "空板入库")
@@ -161,75 +161,75 @@
        return R.ok("出库启动成功");
    }
//    @RequestMapping("/locCheck/out/start")
//    @ManagerAuth(memo = "盘点出库")
//    public R locCheckOutStart(@RequestBody StockOutParam param) {
//
//        workService.locCheckOut(param, getUserId());
//        return R.ok("出库启动成功");
//    }
    @RequestMapping("/locCheck/out/start")
    @ManagerAuth(memo = "盘点出库")
    public R locCheckOutStart(@RequestBody StockOutFloorParam param) {
        if (param.getFloor() != null) {
            List<Integer> siteIdList = new ArrayList<>();
    public R locCheckOutStart(@RequestBody StockOutParam param) {
            // 第一步:根据楼层选择站点集合
            switch (param.getFloor()) {
                case 1: // 一楼(东区)
                    siteIdList = Arrays.asList(121, 124, 125, 126);
                    break;
                case 2: // 二楼(东区)
                    siteIdList = Arrays.asList(221, 224, 226, 229);
                    break;
                case 3: // 四楼(东区)
                    siteIdList = Arrays.asList(411, 412, 413, 414);
                    break;
                case 4: // 一楼(西区)
                    siteIdList = Arrays.asList(103); // 只有一个站点
                    break;
                case 5: // 二楼(西区)
                    siteIdList = Arrays.asList(201, 204, 206, 209);
                    break;
                case 6: // 四楼(西区)
                    siteIdList = Arrays.asList(401, 402, 403, 404);
                    break;
                default:
                    break;
            }
            // 第二步:根据 locNo 的排号,给每个 locDetl 设置 siteId
            if (param.getLocDetls() != null) {
                for (StockOutFloorParam.LocDetl locDetl : param.getLocDetls()) {
                    String locNo = locDetl.getLocNo(); // 如:0312001
                    if (locNo != null && locNo.length() >= 2) {
                        String rowStr = locNo.substring(0, 2); // 前两位为排号
                        int row = Integer.parseInt(rowStr);
                        Integer siteId = null;
                        // 站点分布规则
                        if (row == 1 || row == 2) {
                            siteId = siteIdList.size() > 0 ? siteIdList.get(0) : null;
                        } else if (row == 3 || row == 4) {
                            siteId = siteIdList.size() > 1 ? siteIdList.get(1) : null;
                        } else if (row == 5 || row == 6) {
                            siteId = siteIdList.size() > 2 ? siteIdList.get(2) : null;
                        } else if (row == 7 || row == 8) {
                            siteId = siteIdList.size() > 3 ? siteIdList.get(3) : null;
                        }
                        // 设置 siteId
                        locDetl.setSiteId(siteId);
                    }
                }
            }
        }
        workService.locCheckOut(param, getUserId());
        return R.ok("出库启动成功");
    }
//    @RequestMapping("/locCheck/out/start")
//    @ManagerAuth(memo = "盘点出库")
//    public R locCheckOutStart(@RequestBody StockOutFloorParam param) {
//        if (param.getFloor() != null) {
//            List<Integer> siteIdList = new ArrayList<>();
//
//            // 第一步:根据楼层选择站点集合
//            switch (param.getFloor()) {
//                case 1: // 一楼(东区)
//                    siteIdList = Arrays.asList(121, 124, 125, 126);
//                    break;
//                case 2: // 二楼(东区)
//                    siteIdList = Arrays.asList(221, 224, 226, 229);
//                    break;
//                case 3: // 四楼(东区)
//                    siteIdList = Arrays.asList(411, 412, 413, 414);
//                    break;
//                case 4: // 一楼(西区)
//                    siteIdList = Arrays.asList(103); // 只有一个站点
//                    break;
//                case 5: // 二楼(西区)
//                    siteIdList = Arrays.asList(201, 204, 206, 209);
//                    break;
//                case 6: // 四楼(西区)
//                    siteIdList = Arrays.asList(401, 402, 403, 404);
//                    break;
//                default:
//                    break;
//            }
//
//            // 第二步:根据 locNo 的排号,给每个 locDetl 设置 siteId
//            if (param.getLocDetls() != null) {
//                for (StockOutFloorParam.LocDetl locDetl : param.getLocDetls()) {
//                    String locNo = locDetl.getLocNo(); // 如:0312001
//                    if (locNo != null && locNo.length() >= 2) {
//                        String rowStr = locNo.substring(0, 2); // 前两位为排号
//                        int row = Integer.parseInt(rowStr);
//
//                        Integer siteId = null;
//
//                        // 站点分布规则
//                        if (row == 1 || row == 2) {
//                            siteId = siteIdList.size() > 0 ? siteIdList.get(0) : null;
//                        } else if (row == 3 || row == 4) {
//                            siteId = siteIdList.size() > 1 ? siteIdList.get(1) : null;
//                        } else if (row == 5 || row == 6) {
//                            siteId = siteIdList.size() > 2 ? siteIdList.get(2) : null;
//                        } else if (row == 7 || row == 8) {
//                            siteId = siteIdList.size() > 3 ? siteIdList.get(3) : null;
//                        }
//
//                        // 设置 siteId
//                        locDetl.setSiteId(siteId);
//                    }
//                }
//            }
//        }
//        workService.locCheckOut(param, getUserId());
//        return R.ok("出库启动成功");
//    }
    @RequestMapping("/loc/move/start")
    @ManagerAuth(memo = "库位移转")
    public R locMoveStart(@RequestParam String sourceLocNo,