From 7990946c72ea48638718cf638c1fb743b239f93e Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期六, 19 四月 2025 20:00:55 +0800 Subject: [PATCH] 999 --- src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java | 124 ++++++++++++++++------------------------- 1 files changed, 48 insertions(+), 76 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java index 53a225c..e627e66 100644 --- a/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java @@ -142,20 +142,19 @@ if (devpThread == null) { return false; } - int lev = Utils.getLev(wrkMast.getLocNo()); - StaProtocol staProtocol2 = devpThread.getStation().get(lev == 1 ? 1014 : 1025); - if (!staProtocol2.isOutEnable()) { - log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025); - News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025); - return false; - } - - StaProtocol staProtocol = devpThread.getStation().get(lev == 1 ? 1015 : 1026); - if (staProtocol.isLoading()) { - log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿", wrkMast.getWrkNo(), wrkMast.getSourceStaNo()); - News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿", wrkMast.getWrkNo(), wrkMast.getSourceStaNo()); - return false; + WrkMast wrkMast1 = wrkMastService.selectByWorkNo(wrkMast.getMainWrkNo()); + if (wrkMast1 != null) { + StaProtocol staProtocol2 = devpThread.getStation().get(wrkMast1.getStaNo()); + if (!staProtocol2.isOutEnable()) { + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�111", wrkMast.getWrkNo(), wrkMast1.getStaNo()); + return false; + } + StaProtocol staProtocol = devpThread.getStation().get(wrkMast1.getStaNo() + 1); + if (staProtocol.isLoading()) { + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿111", wrkMast.getWrkNo(), wrkMast1.getStaNo() + 1); + return false; + } } if (shuttleProtocol.getCurrentLocNo().equals(wrkMast.getSourceLocNo())) { @@ -294,62 +293,28 @@ LiftThread liftThread = null; LiftProtocol liftProtocol = null; - if (wrkMast.getLiftNo() == null) { - //鑾峰彇绌挎杞︽渶杩戜笖绌洪棽鐨勬彁鍗囨満 - liftThread = LiftUtils.getRecentLift(shuttleProtocol.getCurrentLocNo()); - if (liftThread == null) { - News.info("{}鍙峰皬杞︼紝{}鐩爣搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo()); - return false;//娌℃湁鍙敤涓旂┖闂茬殑鎻愬崌鏈� - } - liftProtocol = liftThread.getStatus(); - //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夊皬杞� - if (liftProtocol.getHasCar()) { - News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); - return false; - } - //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夋墭鐩� - if (liftProtocol.getHasTray()) { - News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); - return false; - } + //鑾峰彇绌挎杞︽渶杩戜笖绌洪棽鐨勬彁鍗囨満 + liftThread = LiftUtils.getRecentLift(shuttleProtocol.getCurrentLocNo()); + if (liftThread == null) { + News.info("{}鍙峰皬杞︼紝{}鐩爣搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo()); + return false;//娌℃湁鍙敤涓旂┖闂茬殑鎻愬崌鏈� + } - if (liftProtocol == null) { - News.info("{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", wrkMast.getLiftNo()); - return false; - } - //鍒ゆ柇鎻愬崌鏈烘槸鍚︽湁鍏朵粬浠诲姟(璇ヤ换鍔¢渶瑕佹崲灞傚繀椤绘彁鍓嶇嫭鍗犳彁鍗囨満) - WrkMast liftWrkMast = wrkMastService.selectLiftWrkMastAndWrkNo(wrkMast.getLiftNo(), wrkMast.getWrkNo(), wrkMast.getMainWrkNo()); - if (liftWrkMast != null) { - News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); - return false;//褰撳墠鎻愬崌鏈哄瓨鍦ㄦ湭瀹屾垚浠诲姟锛岀瓑寰呬笅涓�娆¤疆璇� - } - wrkMast.setModiTime(now); - wrkMast.setLiftNo(1); - wrkMast.setSystemMsg("");//娓呯┖娑堟伅 - wrkMastService.updateById(wrkMast); + liftProtocol = liftThread.getStatus(); + //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夊皬杞� + if (liftProtocol.getHasCar()) { + News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); return false; - } else { - liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, wrkMast.getLiftNo()); - if (liftThread == null) { - News.info("{}鍙锋彁鍗囨満涓嶅瓨鍦�", wrkMast.getLiftNo()); - return false; - } - - liftProtocol = liftThread.getStatus(); - if (liftProtocol == null) { - News.info("{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", wrkMast.getLiftNo()); - return false; - } } - //鍒ゆ柇鎻愬崌鏈烘槸鍚︽湁鍏朵粬浠诲姟 - WrkMast liftWrkMast = wrkMastService.selectLiftWrkMastAndWrkNo(wrkMast.getLiftNo(), wrkMast.getWrkNo(), wrkMast.getMainWrkNo()); - if (liftWrkMast != null) { - News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); - return false;//褰撳墠鎻愬崌鏈哄瓨鍦ㄦ湭瀹屾垚浠诲姟锛岀瓑寰呬笅涓�娆¤疆璇� + //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夋墭鐩� + if (liftProtocol.getHasTray()) { + News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); + return false; } + if (!liftThread.isIdle()) { News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満蹇欑涓紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); @@ -391,9 +356,17 @@ //鎻愪氦鍒扮嚎绋嬪幓宸ヤ綔 LiftAssignCommand assignCommand = new LiftAssignCommand(); assignCommand.setCommands(commands); - assignCommand.setLiftNo(wrkMast.getLiftNo().shortValue()); + assignCommand.setLiftNo((short) 1); assignCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); assignCommand.setTaskMode(LiftCommandModeType.MOVE.id.shortValue()); + + + //鍒ゆ柇鎻愬崌鏈烘槸鍚︽湁鍏朵粬浠诲姟 + WrkMast liftWrkMast = wrkMastService.selectLiftWrkMastAndWrkNo(wrkMast.getLiftNo(), wrkMast.getWrkNo(), wrkMast.getMainWrkNo()); + if (liftWrkMast != null) { + News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); + return false;//褰撳墠鎻愬崌鏈哄瓨鍦ㄦ湭瀹屾垚浠诲姟锛岀瓑寰呬笅涓�娆¤疆璇� + } wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_4.sts);//灏忚溅绉诲姩鍒版彁鍗囨満涓� 灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴� ==> 鎻愬崌鏈鸿嚦灏忚溅灞� wrkMast.setLiftNo(liftProtocol.getLiftNo());//鎻愬墠閿佸畾鎻愬崌鏈� @@ -856,19 +829,18 @@ if (devpThread == null) { return false; } - int lev = Utils.getLev(wrkMast.getLocNo()); - StaProtocol staProtocol2 = devpThread.getStation().get(lev == 1 ? 1014 : 1025); - - if (!staProtocol2.isOutEnable()) { - log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025); - News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025); - return false; - } - StaProtocol staProtocol = devpThread.getStation().get(lev == 1 ? 1015 : 1026); - if (staProtocol.isLoading()) { - log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿", wrkMast.getWrkNo(), wrkMast.getSourceStaNo()); - News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿", wrkMast.getWrkNo(), wrkMast.getSourceStaNo()); - return false; + WrkMast wrkMast1 = wrkMastService.selectByWorkNo(wrkMast.getMainWrkNo()); + if (wrkMast1 != null) { + StaProtocol staProtocol2 = devpThread.getStation().get(wrkMast1.getStaNo()); + if (!staProtocol2.isOutEnable()) { + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�222", wrkMast.getWrkNo(), wrkMast1.getStaNo()); + return false; + } + StaProtocol staProtocol = devpThread.getStation().get(wrkMast1.getStaNo() + 1); + if (staProtocol.isLoading()) { + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿222", wrkMast.getWrkNo(), wrkMast1.getStaNo()); + return false; + } } if (shuttleProtocol.getCurrentLocNo().equals(wrkMast.getSourceLocNo())) { -- Gitblit v1.9.1