a9a915e7042ab588dfeb0f8ac290fc8ce26a0f29..3d1ed275f9d9915a69b790e05610aba6ee6287e6
2025-05-09 Junjie
#
3d1ed2 对比 | 目录
2025-05-09 Junjie
#
87aee9 对比 | 目录
2025-05-09 Junjie
#
41dbf4 对比 | 目录
2025-05-09 Junjie
#
e25dbf 对比 | 目录
2025-05-09 Junjie
#
9e133d 对比 | 目录
2025-05-09 Junjie
#
706e56 对比 | 目录
2025-05-09 Junjie
#
54f467 对比 | 目录
2025-05-09 Junjie
#
40b4ec 对比 | 目录
2025-05-09 Junjie
#
be5681 对比 | 目录
2025-05-09 Junjie
#
e331a1 对比 | 目录
2025-05-09 Junjie
#
21466c 对比 | 目录
2025-05-09 Junjie
#
cd4493 对比 | 目录
9个文件已修改
1个文件已添加
45 ■■■■ 已修改文件
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/MainProcess.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/enums/ForkLiftProtocolStatusType.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/enums/RedisKeyType.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/impl/NyShuttleThread.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/sql/20250509105930.nb3 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/sql/出库任务预调度提升机sql 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/forklift.html 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1883,7 +1883,7 @@
    public void outTaskPreviewDispatchForkLift() {
        List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
                .in("wrk_sts"
                        , WrkStsType.OUTBOUND_SHUTTLE_RUN.sts
                        , WrkStsType.OUTBOUND_SHUTTLE_RUN_COMPLETE.sts
                ));
        for (WrkMast wrkMast : wrkMasts) {
            if(wrkMast.getShuttleNo() == null){
@@ -1922,6 +1922,12 @@
                continue;
            }
            //存在调度锁
            Object object = redisUtil.get(RedisKeyType.OUT_TASK_PREVIEW_DISPATCH_FORKLIFT.key + forkLiftProtocol.getLiftNo());
            if (object != null) {
                continue;
            }
            //判断提升机是否有其他任务
            WrkMast liftWrkMast = wrkMastService.selectLiftWrkMast(wrkMast.getLiftNo());
            if (liftWrkMast != null) {
@@ -1933,7 +1939,7 @@
            }
            //提升机不在出库层
            if (forkLiftProtocol.getLev() != Utils.getLev(wrkMast.getSourceLocNo())) {
            if (forkLiftProtocol.getLev().equals(Utils.getLev(wrkMast.getSourceLocNo()))) {
                continue;
            }
@@ -1953,6 +1959,8 @@
            assignCommand.setTaskMode(ForkLiftTaskModeType.MOVE.id.shortValue());
            forkLiftAction.assignWork(forkLiftProtocol.getLiftNo(), assignCommand);
            redisUtil.set(RedisKeyType.OUT_TASK_PREVIEW_DISPATCH_FORKLIFT.key + forkLiftProtocol.getLiftNo(), "lock", 30);//30秒不再调度
        }
    }
src/main/java/com/zy/core/MainProcess.java
@@ -43,6 +43,10 @@
                    //初始化实时地图
                    mainService.initRealtimeBasMap();
                    //出库任务预调度提升机
                    mainService.outTaskPreviewDispatchForkLift();
                    // å…¥åº“  ===>>  å››å‘穿梭车入库作业下发
                    mainService.shuttleInExecute();
                    // å‡ºåº“  ===>>  å››å‘穿梭车出库作业下发
@@ -65,9 +69,6 @@
                    //自动切换出入库模式
                    mainService.autoSwitchForkLiftIOMode();
                    //出库任务预调度提升机
                    mainService.outTaskPreviewDispatchForkLift();
                    // é—´éš”
                    Thread.sleep(200);
src/main/java/com/zy/core/enums/ForkLiftProtocolStatusType.java
@@ -5,6 +5,7 @@
    IDLE(0, "空闲"),
    PICK_UP(1, "取货中"),
    PUT_DOWN(2, "放货中"),
    MOVING(3, "移动中"),
    WAITING(98, "等待确认"),
    ERROR(99, "故障"),
    ;
src/main/java/com/zy/core/enums/RedisKeyType.java
@@ -12,6 +12,7 @@
    QUEUE_FORK_LIFT("queue_fork_lift_"),
    QUEUE_TASK("queue_task_"),
    FORK_LIFT_PUT_COMPLETE("fork_lift_put_complete_"),
    OUT_TASK_PREVIEW_DISPATCH_FORKLIFT("out_task_preview_dispatch_forklift_"),
    ;
    public String key;
src/main/java/com/zy/core/thread/impl/LfdZyForkLiftMasterThread.java
@@ -36,7 +36,7 @@
        ArrayList<HashMap<String, Object>> addressList = new ArrayList<>();
        HashMap<String, Object> lift1 = new HashMap<>();
        lift1.put("status", new DbData("DB101.0", (short) 16));//提升机数据
        lift1.put("status", new DbData("DB101.0", (short) 18));//提升机数据
        lift1.put("staStatusTray", new DbData("DB102.0", (short) 14));//站点数据
        lift1.put("staStatusCar", new DbData("DB102.50", (short) 14));//站点数据
        lift1.put("write", new DbData("DB103.0", null));//写入数据
@@ -45,7 +45,7 @@
        lift1.put("switchIOMode", new DbData("DB103.12", null));//出入库模式
        HashMap<String, Object> lift2 = new HashMap<>();
        lift2.put("status", new DbData("DB104.0", (short) 16));//提升机数据
        lift2.put("status", new DbData("DB104.0", (short) 18));//提升机数据
        lift2.put("staStatusTray", new DbData("DB105.0", (short) 14));//站点数据
        lift2.put("staStatusCar", new DbData("DB105.50", (short) 14));//站点数据
        lift2.put("write", new DbData("DB106.0", null));//写入数据
src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java
@@ -312,8 +312,7 @@
        short[] array = new short[4];
        array[0] = command.getTaskNo();//任务号
        array[1] = command.getMode();//任务模式
        array[2] = command.getPick();//取货数据
        array[3] = command.getPut();//放货数据
        array[2] = command.getPut();//放货数据
        OperateResult result = this.masterThread.write(this.slave.getId(), "write", array);
        if (result.IsSuccess) {
            OperateResult result2 = this.masterThread.write(this.slave.getId(), "writeConfirm", command.getConfirm());
src/main/java/com/zy/core/thread/impl/NyShuttleThread.java
@@ -721,6 +721,19 @@
            }
        }
        //***************判断是否满充校准***************
        Config shuttleMaxPowerVerifyConfig = configService.selectOne(new EntityWrapper<Config>()
                .eq("code", "shuttleMaxPowerVerify")
                .eq("status", 1));
        if (shuttleMaxPowerVerifyConfig != null) {
            if (shuttleMaxPowerVerifyConfig.getValue().equals("true")) {
                if (this.shuttleProtocol.getBatteryVoltage() < 5630) {
                    return false;//电压不够继续充电
                }
            }
        }
        //***************判断是否满充校准***************
        if (this.shuttleProtocol.getHasCharge() == null) {
            return false;
        }
src/main/resources/sql/20250509105930.nb3
Binary files differ
src/main/resources/sql/³ö¿âÈÎÎñÔ¤µ÷¶ÈÌáÉý»úsql
@@ -1 +1 @@
INSERT INTO `asr_wrk_lastno` (`wrk_mk`, `wrk_no`, `modi_user`, `modi_time`, `appe_user`, `appe_time`, `s_no`, `e_no`, `memo_m`) VALUES (98, 35001, 9527, '2025-04-24 14:57:34', 9527, '2025-04-24 14:57:39', 35001, 40000, NULL);
INSERT INTO `asr_wrk_lastno` (`wrk_mk`, `wrk_no`, `modi_user`, `modi_time`, `appe_user`, `appe_time`, `s_no`, `e_no`, `memo_m`) VALUES (98, 8001, 9527, '2025-04-24 14:57:34', 9527, '2025-04-24 14:57:39', 8001, 1000, NULL);
src/main/webapp/views/forklift.html
@@ -36,6 +36,7 @@
                        <th>放货数据</th>
                        <th>出入库模式</th>
                        <th>故障码</th>
                        <th>层</th>
                    </tr>
                    </thead>
                    <tbody>
@@ -238,6 +239,7 @@
                        setVal(tr.children("td").eq(7), table[i-1].put);
                        setVal(tr.children("td").eq(8), table[i-1].iOMode$);
                        setVal(tr.children("td").eq(9), table[i-1].errorCode$);
                        setVal(tr.children("td").eq(10), table[i-1].lev);
                    }
                } else if (res.code === 403){
                    window.location.href = baseUrl+"/login";