From 5568f7c7aa0c6c0cf6370ed7ad22617de3c4f05c Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期二, 16 四月 2024 15:24:30 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java | 51 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 42 insertions(+), 9 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java index 4c7572c..461c4e2 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java @@ -15,11 +15,11 @@ import com.zy.asrs.wcs.core.model.NavigateNode; 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.ShuttleRunDirection; +import com.zy.asrs.wcs.core.model.enums.*; import com.zy.asrs.wcs.core.service.BasShuttleService; import com.zy.asrs.wcs.core.service.LocService; import com.zy.asrs.wcs.core.utils.NavigateUtils; +import com.zy.asrs.wcs.core.utils.Utils; import com.zy.asrs.wcs.rcs.News; import com.zy.asrs.wcs.rcs.cache.OutputQueue; import com.zy.asrs.wcs.rcs.constant.DeviceRedisConstant; @@ -208,6 +208,9 @@ @Override public ShuttleProtocol getStatus() { + if (this.shuttleProtocol == null) { + return null; + } return this.shuttleProtocol.clone(); } @@ -274,7 +277,7 @@ param.put("messageName", "runRoute"); param.put("msgTime", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); param.put("deviceNo", device.getDeviceNo()); - param.put("taskId", generateDeviceTaskNo(taskNo)); + param.put("taskId", taskNo); param.put("nodeNum", nodes.size()); param.put("modes", modes); String response = new HttpHandler.Builder() @@ -527,12 +530,42 @@ } @Override - public int generateDeviceTaskNo(int taskNo) { - int no = taskNo % 255; - if (no <= 1) { - no = 2; + public int generateDeviceTaskNo(int taskNo, MotionCtgType motionCtgType) { + int deviceTaskNo = taskNo; + try { + deviceTaskNo = Utils.getTaskNo("SURAY_SHUTTLE"); + } catch (Exception e) { + return taskNo; } - return no; + + switch (Objects.requireNonNull(MotionCtgType.get(String.valueOf(motionCtgType)))){ + case SHUTTLE_MOVE://绌挎杞︾Щ鍔� + case SHUTTLE_MOVE_LIFT_PALLET://绌挎杞﹂《鍗囧苟绉诲姩 + case SHUTTLE_MOVE_DOWN_PALLET://绌挎杞︾Щ鍔ㄥ苟鎵樼洏涓嬮檷 + case SHUTTLE_MOVE_FROM_LIFT://鍑烘彁鍗囨満 + case SHUTTLE_MOVE_TO_LIFT://杩涙彁鍗囨満 + return deviceTaskNo; + default: + return taskNo; + } + } + + @Override + public synchronized boolean setProtocolStatus(ShuttleProtocolStatusType status) { + this.shuttleProtocol.setProtocolStatus(status); + return true; + } + + @Override + public synchronized boolean setSyncTaskNo(Integer taskNo) { + this.shuttleProtocol.setSyncTaskNo(taskNo); + return true; + } + + @Override + public synchronized boolean setPakMk(boolean pakMk) { + this.shuttleProtocol.setPakMk(pakMk); + return true; } @Override @@ -541,7 +574,7 @@ body.put("messageName", "runOrder"); body.put("msgTime", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); body.put("deviceNo", Integer.parseInt(this.device.getDeviceNo())); - body.put("taskId", generateDeviceTaskNo(taskNo)); + body.put("taskId", taskNo); LocService locService = SpringUtils.getBean(LocService.class); Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>() -- Gitblit v1.9.1