From ff2b6e2329ae2c5d3fede2f9413170fd6e87c46c Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期五, 08 十二月 2023 09:27:52 +0800 Subject: [PATCH] #输送线读取 --- src/main/java/com/zy/common/utils/NyLiftUtils.java | 96 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 95 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/zy/common/utils/NyLiftUtils.java b/src/main/java/com/zy/common/utils/NyLiftUtils.java index 1794678..b5baaaa 100644 --- a/src/main/java/com/zy/common/utils/NyLiftUtils.java +++ b/src/main/java/com/zy/common/utils/NyLiftUtils.java @@ -1,6 +1,19 @@ package com.zy.common.utils; +import com.core.common.SpringUtils; +import com.zy.asrs.utils.Utils; +import com.zy.common.model.NavigateNode; +import com.zy.core.cache.SlaveConnection; +import com.zy.core.enums.SlaveType; +import com.zy.core.model.LiftSlave; import com.zy.core.model.command.NyLiftCommand; +import com.zy.core.model.protocol.LiftStaProtocol; +import com.zy.core.properties.SlaveProperties; +import com.zy.core.thread.LiftThread; + +import javax.swing.*; +import java.util.ArrayList; +import java.util.List; /** * 鐗涚溂鎻愬崌鏈哄伐鍏风被 @@ -10,7 +23,7 @@ /** * 鑾峰彇鎻愬崌鏈哄懡浠� */ - public NyLiftCommand getLiftCommand(Integer liftNo, Integer taskModel, Integer sourceSta, Integer targetSta, Integer taskNo) { + public static NyLiftCommand getLiftCommand(Integer liftNo, Integer taskModel, Integer sourceSta, Integer targetSta, Integer taskNo) { NyLiftCommand command = new NyLiftCommand(); command.setLiftNo(liftNo.shortValue()); command.setTaskNo(taskNo.shortValue()); @@ -20,4 +33,85 @@ return command; } + /** + * 鑾峰彇鎻愬崌鏈哄浣嶅懡浠� + */ + public static NyLiftCommand getLiftResetCommand(Integer liftNo) { + NyLiftCommand command = new NyLiftCommand(); + command.setLiftNo(liftNo.shortValue()); + command.setTaskNo((short) 0); + command.setTaskModel((short) 0); + command.setSourceSta((short) 0); + command.setTargetSta((short) 0); + return command; + } + + //鑾峰彇鎻愬崌鏈虹珯鐐� + public static LiftStaProtocol getLiftStaByStaNo(Integer staNo) { + SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); + for (LiftSlave liftSlave : slaveProperties.getLift()) { + LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, liftSlave.getId()); + if (liftThread == null) { + return null; + } + + for (LiftStaProtocol liftStaProtocol : liftThread.getLiftStaProtocols()) { + if (liftStaProtocol.getStaNo().equals(staNo)) { + return liftStaProtocol; + } + } + } + + return null; + } + + //鑾峰彇鎻愬崌鏈虹珯鐐� + public static LiftStaProtocol getLiftStaByStaNo(Integer liftNo, Integer staNo) { + LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, liftNo); + if (liftThread == null) { + return null; + } + + for (LiftStaProtocol liftStaProtocol : liftThread.getLiftStaProtocols()) { + if (liftStaProtocol.getStaNo().equals(staNo)) { + return liftStaProtocol; + } + } + + return null; + } + + //鑾峰彇鎻愬崌鏈虹珯鐐� + public static LiftStaProtocol getLiftStaByLev(Integer liftNo, Integer lev) { + LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, liftNo); + if (liftThread == null) { + return null; + } + + for (LiftStaProtocol liftStaProtocol : liftThread.getLiftStaProtocols()) { + if (liftStaProtocol.getLev().equals(lev)) { + return liftStaProtocol; + } + } + + return null; + } + + //鑾峰彇鎻愬崌鏈鸿緭閫佺珯鍙婂叾鍓嶄竴绔欒妭鐐� + public static List<NavigateNode> getLiftStaNodes(Integer staNo) { + List<NavigateNode> targetNodes = new ArrayList<>(); + //鑾峰彇鐩爣绔� + LiftStaProtocol targetLiftSta = NyLiftUtils.getLiftStaByStaNo(staNo); + if (targetLiftSta == null) { + return null;//鎵句笉鍒扮珯鐐� + } + NavigateNode targetNode = NavigatePositionConvert.locNoToNode(targetLiftSta.getLocNo());//鐩爣鑺傜偣 + String targetLastLocNo = Utils.getLocNo(Utils.getRow(targetLiftSta.getLocNo()) - 1, Utils.getBay(targetLiftSta.getLocNo()), Utils.getLev(targetLiftSta.getLocNo()));//鐩爣鑺傜偣鍓嶄竴绔� + NavigateNode targetLastNode = NavigatePositionConvert.locNoToNode(targetLastLocNo);//鐩爣鑺傜偣鍓嶄竴绔� + targetNodes.add(targetNode); + targetNodes.add(targetLastNode); + + return targetNodes; + } + } -- Gitblit v1.9.1