From 74be59f7ae8fe0a4435dc0b532e9a5ba32ab56de Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 11 四月 2024 22:13:04 +0800 Subject: [PATCH] Merge branch 'Four-Way-Rack' of http://47.97.1.152:5880/r/zy-asrs-master into Four-Way-Rack --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java | 21 +++++++++++++++------ 1 files changed, 15 insertions(+), 6 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java index 515b53e..f3e2a32 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/action/ShuttleAction.java @@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zy.asrs.wcs.common.ExecuteSupport; import com.zy.asrs.wcs.core.entity.BasShuttle; import com.zy.asrs.wcs.core.entity.Loc; import com.zy.asrs.wcs.core.entity.Task; @@ -11,6 +12,7 @@ import com.zy.asrs.wcs.core.model.command.ShuttleCommand; import com.zy.asrs.wcs.core.model.command.ShuttleRedisCommand; import com.zy.asrs.wcs.core.model.enums.ShuttleCommandModeType; +import com.zy.asrs.wcs.core.model.enums.ShuttleTaskModeType; import com.zy.asrs.wcs.core.service.BasShuttleService; import com.zy.asrs.wcs.core.service.LocService; import com.zy.asrs.wcs.core.utils.NavigateMapUtils; @@ -64,12 +66,17 @@ redisCommand.setAssignCommand(assignCommand);//鍛戒护 //浠诲姟鏁版嵁淇濆瓨鍒皉edis if (redisUtil.set(DeviceRedisConstant.SHUTTLE_WORK_FLAG + assignCommand.getTaskNo(), JSON.toJSONString(redisCommand))) { - //涓嬪彂琛岄┒璺緞 - boolean result = shuttleThread.movePath(assignCommand.getNodes(), assignCommand.getTaskNo().intValue()); - if (!result) { - return false; + if (assignCommand.getTaskMode() == ShuttleTaskModeType.PAK_IN.id + || assignCommand.getTaskMode() == ShuttleTaskModeType.PAK_OUT.id + || assignCommand.getTaskMode() == ShuttleTaskModeType.MOVE_LOC_NO.id + || assignCommand.getTaskMode() == ShuttleTaskModeType.SHUTTLE_MOVE_LOC_NO.id) { + //涓嬪彂琛岄┒璺緞 + boolean result = shuttleThread.movePath(assignCommand.getNodes(), assignCommand.getTaskNo()); + if (!result) { + return false; + } } - shuttleProtocol.setTaskNo(assignCommand.getTaskNo().intValue()); + shuttleProtocol.setTaskNo(assignCommand.getTaskNo()); return true; } return false; @@ -96,7 +103,9 @@ } //鍒ゆ柇璁惧鏄惁绌洪棽 - if (!shuttleThread.isIdle()) { + if (!shuttleThread.isIdle(() -> { + return shuttleProtocol.getTaskNo().equals(taskNo); + })) { return false; } -- Gitblit v1.9.1