From 314e894c0d6ce2739344dcd1c94ae7770868a0f1 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期三, 28 五月 2025 14:51:16 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/utils/ForkLiftUtils.java | 93 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 92 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/zy/common/utils/ForkLiftUtils.java b/src/main/java/com/zy/common/utils/ForkLiftUtils.java index adc109d..a7dbe75 100644 --- a/src/main/java/com/zy/common/utils/ForkLiftUtils.java +++ b/src/main/java/com/zy/common/utils/ForkLiftUtils.java @@ -24,6 +24,48 @@ */ public class ForkLiftUtils { + //鑾峰彇鎻愬崌鏈烘墍鏈夌珯鐐� + public static List<Integer> getLiftAllStaNo(Integer liftNo) { + List<Integer> list = new ArrayList<>(); + ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, liftNo); + if (forkLiftThread == null) { + return list; + } + + for (ForkLiftStaProtocol forkLiftStaProtocol : forkLiftThread.getForkLiftStaProtocols()) { + list.add(forkLiftStaProtocol.getStaNo()); + } + + return list; + } + + //鑾峰彇鎻愬崌鏈烘墍缁戝畾鐨勮緭閫佺嚎鎵�鏈夌珯鐐� + public static List<Integer> getConveyorBindLiftAllStaNo(Integer liftNo) { + List<Integer> list = new ArrayList<>(); + ConfigService configService = SpringUtils.getBean(ConfigService.class); + if (configService == null) { + return list; + } + + Config conveyorLiftBindConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "conveyorLiftBind")); + if(conveyorLiftBindConfig == null) { + return list; + } + + List<JSONObject> val = JSON.parseArray(conveyorLiftBindConfig.getValue(), JSONObject.class); + if (val.isEmpty()) { + return list; + } + + for (JSONObject data : val) { + if(data.getInteger("liftNo").equals(liftNo)) { + list.add(data.getInteger("staNo")); + } + } + + return list; + } + //鑾峰彇鎻愬崌鏈虹珯鐐� public static ForkLiftStaProtocol getLiftStaByStaNo(Integer staNo) { SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); @@ -94,7 +136,7 @@ } for (JSONObject data : list) { - if(data.getInteger("staNo") == staNo) { + if(data.getInteger("staNo").equals(staNo)) { return data.getInteger("liftNo"); } } @@ -149,4 +191,53 @@ return false; } + //璇锋眰涓婄骇绯荤粺锛屾槸鍚﹀厑璁稿叆搴� + //鏌ヨ鏄惁鏈夊叆搴撴潈闄� + public static boolean queryInMission(Integer sourceStaNo, Integer liftNo, String superTaskNo) { + ConfigService configService = SpringUtils.getBean(ConfigService.class); + if (configService == null) { + return false; + } + + Config queryInMissionPathEnableConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "queryInMissionPathEnable")); + if (queryInMissionPathEnableConfig != null) { + String queryInMissionPathEnable = queryInMissionPathEnableConfig.getValue(); + if (!queryInMissionPathEnable.equals("Y")) { + return true;//鍏抽棴鏌ヨ鍏ュ簱鏉冮檺鍔熻兘 + } + } + + Config superSystemUriConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "superSystemUri")); + if (superSystemUriConfig == null) { + return false; + } + String superSystemUri = superSystemUriConfig.getValue(); + + Config queryInMissionPathConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "queryInMissionPath")); + if (queryInMissionPathConfig == null) { + return false; + } + String missionPath = queryInMissionPathConfig.getValue(); + + try { + HashMap<String, Object> data = new HashMap<>(); + data.put("staNo", sourceStaNo); + data.put("liftNo", liftNo); + data.put("superTaskNo", superTaskNo); + + String response = new HttpHandler.Builder() + .setUri(superSystemUri) + .setPath(missionPath) + .setJson(JSON.toJSONString(data)) + .build() + .doPost(); + if (response.equals("ok")) { + return true;//鏈夊叆搴撴潈闄� + } + } catch (Exception e) { + e.printStackTrace(); + } + return false; + } + } -- Gitblit v1.9.1