自动化立体仓库 - WMS系统
zhangc
2025-02-27 d0d64cf47ce37027307ceb64dc72e3ae36796a92
src/main/java/com/zy/asrs/task/AutoMoveScheduler.java
@@ -218,7 +218,7 @@
        // 查询 不为1楼的空货架
        List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>()
                // TODO 四期
                .eq("loc_sts", "D").eq("loc_type1", 3).ne("floor", 1).ne("lev1", 1));
                .eq("loc_sts", "D").eq("loc_type1", 3).andNew().ne("floor", 1).or().ne("lev1", 1));
        if (agvLocMasts.isEmpty()) {
            return;
        }
@@ -335,7 +335,7 @@
    }
    /**
     * 自动移库
     * 跨层自动移库
     */
    @Scheduled(cron = "0/2 * * * * ? ")
    private void autoEmptyBack7() throws ParseException {
@@ -382,7 +382,7 @@
    /**
     * 自动移库,四期
     * 打标记的库位进行自动移库,四期
     * 在库位不够的情况下,箱壳入库别的楼层库位的时候,晚上进行跨层移库
     */
    @Scheduled(cron = "0/2 * * * * ? ")
@@ -406,23 +406,32 @@
            long time3 = time - time1;
            if (time3 > 0 && time3 < (1000 * 60 * 10)) {
            if (time3 > 0) {
                List<AgvWrkMast> agvWrkMasts = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>().eq("io_type", 12));
                if (agvWrkMasts != null && maxTansk <= agvWrkMasts.size()) {
                    return;
                }
                List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>().eq("floor", 1).eq("loc_sts", "F").eq("loc_type1", 3).eq("ctn_no", "1"));
                List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>().eq("floor", 1).eq("loc_sts", "F").eq("loc_type1", 3).isNotNull("ctn_no"));
                if (agvLocMasts.isEmpty()) {
                    return;
                }
                for (AgvLocMast agvLocMast : agvLocMasts) {
                    try {
                        autoMoveHandler.autoTransfersV2(agvLocMast, maxTansk);
                    } catch (Exception e) {
                        log.error("库位号" + agvLocMast.getLocNo() + "四期定时移库任务 吸塑 --> 吸塑,处理失败:===》异常原因:" + e.getMessage());
                    if (agvLocMast.getLev1() == 1 && agvLocMast.getFloor() == 1 && !Cools.isEmpty(agvLocMast.getCtnNo()) && agvLocMast.getCtnNo().toString().equals("2")) {
                        try {
                            autoMoveHandler.autoTransfersV2(agvLocMast, maxTansk);
                        } catch (Exception e) {
                            log.error("库位号" + agvLocMast.getLocNo() + "四期定时移库任务 吸塑 --> 吸塑,处理失败:===》异常原因:" + e.getMessage());
                        }
                    } else if (agvLocMast.getLev1() == 2 && agvLocMast.getFloor() == 1 && !Cools.isEmpty(agvLocMast.getCtnNo()) && agvLocMast.getCtnNo().toString().equals("1")) {
                        try {
                            autoMoveHandler.autoTransfersV2(agvLocMast, maxTansk);
                        } catch (Exception e) {
                            log.error("库位号" + agvLocMast.getLocNo() + "四期定时移库任务 吸塑 --> 吸塑,处理失败:===》异常原因:" + e.getMessage());
                        }
                    }
                }
            }
        }