From 8212b1177f0191332e6c398306310b0ffe73d484 Mon Sep 17 00:00:00 2001 From: cpT <1@123> Date: 星期六, 28 六月 2025 16:50:43 +0800 Subject: [PATCH] #改造 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 51 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index 4c35af5..a0a4470 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -1774,6 +1774,52 @@ } return null; } + public boolean deviceDetection(RgvSlave.RgvStn inSta,Integer rgvNo) { + ArrayList<Integer> arrayList = new ArrayList<Integer>() {{ + add(1009); + add(1011); + add(1012); + add(1014); + add(1016); + }}; + try{ + + DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, inSta.getDevpPlcId()); + ArrayList<Integer> listW = new ArrayList<Integer>(); + ArrayList<Integer> listL = new ArrayList<Integer>(); + for (Integer staNo : arrayList){ + StaProtocol staProtocol = devpThread.getStation().get(staNo); + if (staProtocol == null) { + RgvErrCache.updateRgvErr(rgvNo,staNo+"绔欑偣鏁版嵁涓㈠け"); + return false; + } + // 鍒ゆ柇鏄惁婊¤冻鍙栬揣鏉′欢 + if (staProtocol.getWorkNo() != 0) { + if (!listW.contains(staProtocol.getWorkNo())) { + listW.add(staProtocol.getWorkNo()); + } + } + // 鍒ゆ柇鏄惁婊¤冻鍙栬揣鏉′欢 + if (staProtocol.isLoading()) { + if (!listL.contains(staProtocol.getStaNo())) { + listL.add(staProtocol.getStaNo()); + } + } + } + if (listW.size()>=3){ + RgvErrCache.updateRgvErr(rgvNo,"绛夊緟1012鎷i�夛紝闃叉鍫靛"); + return false; + } + if (listL.size()>=3){ + RgvErrCache.updateRgvErr(rgvNo,"绛夊緟1012鎷i�夛紝闃叉鍫靛"); + return false; + } + } catch (Exception e){ + RgvErrCache.updateRgvErr(rgvNo,"1012妫�娴嬪紓甯革細"+e.getMessage()); + return false; + } + return true; + } public boolean rgvOtherStatusEnable(RgvSlave slave) { RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(slave.getOtherId()); @@ -2164,6 +2210,11 @@ if (targetPointConvert == null) { return false; } + if (targetPointConvert == 1009){ + if (!deviceDetection(rgvStn, rgvSlave.getId())){ + return false; + } + } BasDevpPosition basDevpPositionSou = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStn.getStaNo())); BasDevpPosition basDevpPositionEnd = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", targetPointConvert)); -- Gitblit v1.9.1