自动化立体仓库 - WCS系统
Junjie
2023-11-30 32b4da424d646d1753f91208d12f22edceb75192
src/main/java/com/zy/asrs/controller/LiftController.java
@@ -19,6 +19,7 @@
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.LiftProtocolStatusType;
import com.zy.core.enums.NyLiftTaskModelType;
import com.zy.core.enums.RedisKeyType;
import com.zy.core.enums.SlaveType;
import com.zy.core.model.LiftSlave;
import com.zy.core.model.Task;
@@ -234,14 +235,14 @@
                    //移动托盘
                    int workNo = commonService.getWorkNo(3);//获取任务号
                    LiftStaProtocol sourceLiftSta = NyLiftUtils.getLiftStaByStaNo(param.getSourceStaNo());
                    LiftStaProtocol liftSta = NyLiftUtils.getLiftStaByStaNo(param.getStaNo());
                    if (sourceLiftSta == null || liftSta == null) {
                        throw new CoolException("源站或目标站不存在");
                    }
//                    LiftStaProtocol sourceLiftSta = NyLiftUtils.getLiftStaByStaNo(param.getSourceStaNo());
//                    LiftStaProtocol liftSta = NyLiftUtils.getLiftStaByStaNo(param.getStaNo());
//                    if (sourceLiftSta == null || liftSta == null) {
//                        throw new CoolException("源站或目标站不存在");
//                    }
                    //获取提升机命令
                    NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_TRAY.id, sourceLiftSta.getStaNo(), liftSta.getStaNo(), workNo);
                    NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_TRAY.id, param.getSourceStaNo(), param.getStaNo(), workNo);
                    ArrayList<NyLiftCommand> commands = new ArrayList<>();
                    commands.add(liftCommand);
@@ -258,6 +259,10 @@
                    } else {
                        throw new CoolException("命令下发失败");
                    }
                } else if (param.getLiftTaskMode() == 0) {
                    //提升机复位
                    liftProtocol.setToken(0);
                    liftProtocol.setProtocolStatusType(LiftProtocolStatusType.IDLE);
                } else {
                    throw new CoolException("未知命令");
                }
@@ -295,7 +300,7 @@
    @RequestMapping(value = "/command/query")
    public R liftCommandQuery(@RequestParam("wrkNo") Integer wrkNo) {
        Object o = redisUtil.get("lift_wrk_no_" + wrkNo);
        Object o = redisUtil.get(RedisKeyType.LIFT.key + wrkNo);
        if (o == null) {
            return R.error();
        }
@@ -307,13 +312,13 @@
    @RequestMapping(value = "/command/rollback")
    public R liftCommandRollback(@RequestParam("wrkNo") Integer wrkNo
            , @RequestParam("commandStep") Integer commandStep) {
        Object o = redisUtil.get("lift_wrk_no_" + wrkNo);
        Object o = redisUtil.get(RedisKeyType.LIFT.key + wrkNo);
        if (o == null) {
            return R.error();
        }
        LiftRedisCommand redisCommand = JSON.parseObject(o.toString(), LiftRedisCommand.class);
        redisCommand.setCommandStep(commandStep);
        redisUtil.set("lift_wrk_no_" + wrkNo, JSON.toJSONString(redisCommand));
        redisUtil.set(RedisKeyType.LIFT.key + wrkNo, JSON.toJSONString(redisCommand));
        return R.ok();
    }
@@ -322,7 +327,7 @@
    public R liftCommandCompleteSwitch(@RequestParam("wrkNo") Integer wrkNo
            , @RequestParam("commandStep") Integer commandStep
            , @RequestParam("complete") Integer complete) {
        Object o = redisUtil.get("lift_wrk_no_" + wrkNo);
        Object o = redisUtil.get(RedisKeyType.LIFT.key + wrkNo);
        if (o == null) {
            return R.error();
        }
@@ -331,14 +336,14 @@
        List<NyLiftCommand> commands = assignCommand.getCommands();
        NyLiftCommand command = commands.get(commandStep);
        command.setComplete(complete != 0);
        redisUtil.set("lift_wrk_no_" + wrkNo, JSON.toJSONString(redisCommand));
        redisUtil.set(RedisKeyType.LIFT.key + wrkNo, JSON.toJSONString(redisCommand));
        return R.ok();
    }
    //重启任务(命令)
    @RequestMapping(value = "/command/restart")
    public R liftCommandCompleteSwitch(@RequestParam("wrkNo") Integer wrkNo) {
        Object o = redisUtil.get("lift_wrk_no_" + wrkNo);
        Object o = redisUtil.get(RedisKeyType.LIFT.key + wrkNo);
        if (o == null) {
            return R.error();
        }
@@ -364,11 +369,11 @@
    //删除任务(命令)
    @RequestMapping(value = "/command/del")
    public R liftCommandDel(@RequestParam("wrkNo") Integer wrkNo) {
        Object o = redisUtil.get("lift_wrk_no_" + wrkNo);
        Object o = redisUtil.get(RedisKeyType.LIFT.key + wrkNo);
        if (o == null) {
            return R.error();
        }
        redisUtil.del("lift_wrk_no_" + wrkNo);
        redisUtil.del(RedisKeyType.LIFT.key + wrkNo);
        return R.ok();
    }