| src/main/java/com/zy/core/model/StationObjModel.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/plugin/XiaosongProcess.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/core/model/StationObjModel.java
@@ -19,8 +19,13 @@ private Integer barcodeIdx; //站点绑定双工位堆垛机工位 private Integer dualCrnExecuteStation; private StationObjModel barcodeStation; private StationObjModel backStation; private StationObjModel dualCrnSlaveStation; } src/main/java/com/zy/core/plugin/XiaosongProcess.java
@@ -26,6 +26,7 @@ import com.zy.core.plugin.api.MainProcessPluginApi; import com.zy.core.thread.StationThread; import com.zy.core.utils.CrnOperateProcessUtils; import com.zy.core.utils.DualCrnOperateProcessUtils; import com.zy.core.utils.StationOperateProcessUtils; import com.zy.core.utils.WmsOperateUtils; import lombok.extern.slf4j.Slf4j; @@ -54,6 +55,8 @@ private RedisUtil redisUtil; @Autowired private WmsOperateUtils wmsOperateUtils; @Autowired private DualCrnOperateProcessUtils dualCrnOperateProcessUtils; @Override public void run() { @@ -72,6 +75,14 @@ stationOperateProcessUtils.stationOutExecute(); //检测输送站点出库任务执行完成 stationOperateProcessUtils.stationOutExecuteFinish(); //检测输送站点是否运行堵塞 stationOperateProcessUtils.checkStationRunBlock(); // 执行双工位堆垛机任务 dualCrnOperateProcessUtils.dualCrnIoExecute(); // 双工位堆垛机任务执行完成 dualCrnOperateProcessUtils.dualCrnIoExecuteFinish(); } /** src/main/java/com/zy/core/utils/DualCrnOperateProcessUtils.java
@@ -248,11 +248,6 @@ } Integer crnNo = basDualCrnp.getCrnNo(); int station = calcStation(dualCrnProtocol, "in"); if (station == 0) { News.info("双工位堆垛机:{} 无可用工位", basDualCrnp.getCrnNo()); return false; } if (wrkMast.getWrkSts() != WrkStsType.INBOUND_DEVICE_RUN.sts) { return false; @@ -311,6 +306,33 @@ inStationObjModel = stationObjModel; break; } StationObjModel dualCrnSlaveStationObjModel = stationObjModel.getDualCrnSlaveStation(); if (dualCrnSlaveStationObjModel == null) { continue; } StationProtocol slaveStationProtocol = stationProtocolMap.get(dualCrnSlaveStationObjModel.getStationId()); if (slaveStationProtocol == null) { continue; } if (!slaveStationProtocol.isAutoing()) { continue; } if (!slaveStationProtocol.isLoading()) { continue; } if (slaveStationProtocol.getTaskNo() <= 0) { continue; } if (slaveStationProtocol.getTaskNo().equals(wrkMast.getWrkNo())) { inStationObjModel = dualCrnSlaveStationObjModel; break; } } if (inStationObjModel == null) { @@ -318,6 +340,7 @@ return false; } Integer station = inStationObjModel.getDualCrnExecuteStation(); String sourceLocNo = Utils.getLocNo(inStationObjModel.getDeviceRow(), inStationObjModel.getDeviceBay(), inStationObjModel.getDeviceLev()); List<DualCrnCommand> commandList = new ArrayList<>();