From dc3483f84d517bfa2cbcc96a0c965f26d63aa3c3 Mon Sep 17 00:00:00 2001 From: zc <zc@123> Date: 星期三, 07 五月 2025 14:01:51 +0800 Subject: [PATCH] 解决提升机在本层,而没有锁提升机的问题 --- src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java | 10 +++++----- src/main/java/com/zy/asrs/service/impl/TransportLiftInServiceImpl.java | 1 + src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java | 39 ++++++++++++++++++++------------------- src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java | 1 + src/main/java/com/zy/asrs/service/impl/TransportLiftOutServiceImpl.java | 1 + src/main/resources/application.yml | 2 +- 6 files changed, 29 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java index 1629e74..174618d 100644 --- a/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java @@ -383,6 +383,7 @@ //鎻愬崌鏈哄湪灏忚溅妤煎眰 wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_6.sts);//灏忚溅绉诲姩鍒版彁鍗囨満涓� 灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� wrkMast.setModiTime(now); + wrkMast.setLiftNo(1); wrkMastService.updateById(wrkMast); return false; } 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 56da49f..2956c01 100644 --- a/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java @@ -219,13 +219,13 @@ //鑾峰彇绌挎杞︽渶杩戜笖绌洪棽鐨勬彁鍗囨満 LiftThread liftThread = LiftUtils.getRecentLift(shuttleProtocol.getCurrentLocNo()); if (liftThread == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}鍙峰皬杞︼紝{}灏忚溅搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}鍙峰皬杞︼紝{}灏忚溅搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo()); return false;//娌℃湁鍙敤涓旂┖闂茬殑鎻愬崌鏈� } LiftProtocol liftProtocol = liftThread.getStatus(); if (liftProtocol == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", wrkMast.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", wrkMast.getLiftNo()); return false; } @@ -284,13 +284,13 @@ //鑾峰彇鍥涘悜绌挎杞︾嚎绋� ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, wrkMast.getShuttleNo()); if (shuttleThread == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅绾跨▼涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅绾跨▼涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); return false; } ShuttleProtocol shuttleProtocol = shuttleThread.getStatus(); if (shuttleProtocol == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅瀵硅薄涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅瀵硅薄涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); return false; } @@ -301,38 +301,38 @@ //鑾峰彇绌挎杞︽渶杩戜笖绌洪棽鐨勬彁鍗囨満 liftThread = LiftUtils.getRecentLift(shuttleProtocol.getCurrentLocNo()); if (liftThread == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}鍙峰皬杞︼紝{}鐩爣搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}鍙峰皬杞︼紝{}鐩爣搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo()); return false;//娌℃湁鍙敤涓旂┖闂茬殑鎻愬崌鏈� } liftProtocol = liftThread.getStatus(); //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夊皬杞� if (liftProtocol.getHasCar()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); return false; } //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夋墭鐩� if (liftProtocol.getHasTray()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); return false; } if (!liftThread.isIdle()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満蹇欑涓紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満蹇欑涓紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); return false; } //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夊皬杞� if (liftProtocol.getHasCar()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); return false;//鎻愬崌鏈哄唴鏃犲皬杞� } //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夋墭鐩� if (liftProtocol.getHasTray()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); return false;//鎻愬崌鏈哄唴鏃犲皬杞� } @@ -341,6 +341,7 @@ //鎻愬崌鏈哄湪灏忚溅妤煎眰 wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_5.sts);//灏忚溅绉诲姩鍒版彁鍗囨満涓� 灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� wrkMast.setModiTime(now); + wrkMast.setLiftNo(1); wrkMastService.updateById(wrkMast); return false; } @@ -367,7 +368,7 @@ //鍒ゆ柇鎻愬崌鏈烘槸鍚︽湁鍏朵粬浠诲姟 WrkMast liftWrkMast = wrkMastService.selectLiftWrkMastAndWrkNo(wrkMast.getLiftNo(), wrkMast.getWrkNo(), wrkMast.getMainWrkNo()); if (liftWrkMast != null) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getLiftNo()); return false;//褰撳墠鎻愬崌鏈哄瓨鍦ㄦ湭瀹屾垚浠诲姟锛岀瓑寰呬笅涓�娆¤疆璇� } @@ -399,44 +400,44 @@ //鑾峰彇鍥涘悜绌挎杞︾嚎绋� ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, wrkMast.getShuttleNo()); if (shuttleThread == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅绾跨▼涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getShuttleNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅绾跨▼涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getShuttleNo()); return false; } ShuttleProtocol shuttleProtocol = shuttleThread.getStatus(); if (shuttleProtocol == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅瀵硅薄涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getShuttleNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙峰皬杞︼紝灏忚溅瀵硅薄涓嶅瓨鍦紝绂佹娲惧彂", wrkMast.getWrkNo(), wrkMast.getShuttleNo()); return false; } - LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, 1); + LiftThread liftThread = LiftUtils.getRecentLift(shuttleProtocol.getCurrentLocNo()); LiftProtocol liftProtocol = liftThread.getStatus(); if (liftProtocol == null) { - News.taskInfo(wrkMast.getWrkNo(),"{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", 1); + News.taskInfo(wrkMast.getWrkNo(), "{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", 1); return false; } //鍒ゆ柇鎻愬崌鏈烘槸鍚︽湁鍏朵粬浠诲姟 WrkMast liftWrkMast = wrkMastService.selectLiftWrkMastAndWrkNo(wrkMast.getLiftNo(), wrkMast.getWrkNo(), wrkMast.getMainWrkNo()); if (liftWrkMast != null) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), 1); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), 1); return false;//褰撳墠鎻愬崌鏈哄瓨鍦ㄦ湭瀹屾垚浠诲姟锛岀瓑寰呬笅涓�娆¤疆璇� } if (!liftThread.isIdle()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満蹇欑涓紝绂佹娲惧彂", wrkMast.getWrkNo(), 1); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満蹇欑涓紝绂佹娲惧彂", wrkMast.getWrkNo(), 1); return false; } //灏忚溅澶勪簬绌洪棽鐘舵�� if (!shuttleThread.isIdle()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}灏忚溅锛屽皬杞﹀繖纰屼腑锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}灏忚溅锛屽皬杞﹀繖纰屼腑锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo()); return false; } //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夊皬杞� if (liftProtocol.getHasCar()) { - News.taskInfo(wrkMast.getWrkNo(),"{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo()); return false;//鎻愬崌鏈哄唴鏃犲皬杞� } diff --git a/src/main/java/com/zy/asrs/service/impl/TransportLiftInServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TransportLiftInServiceImpl.java index 8b3e275..f29cf9a 100644 --- a/src/main/java/com/zy/asrs/service/impl/TransportLiftInServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/TransportLiftInServiceImpl.java @@ -263,6 +263,7 @@ //鎻愬崌鏈哄湪灏忚溅妤煎眰 wrkMast.setWrkSts(WrkStsType.MOVE_LIFT_TO_SHUTTLE_COMPLETE_TRANSPORT_LIFT.sts);//灏忚溅绉诲姩鍒版彁鍗囨満涓� 灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� wrkMast.setModiTime(now); + wrkMast.setLiftNo(liftProtocol.getLiftNo());//鎻愬墠閿佸畾鎻愬崌鏈� wrkMastService.updateById(wrkMast); return false; } diff --git a/src/main/java/com/zy/asrs/service/impl/TransportLiftOutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TransportLiftOutServiceImpl.java index 8f1d367..00ab94f 100644 --- a/src/main/java/com/zy/asrs/service/impl/TransportLiftOutServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/TransportLiftOutServiceImpl.java @@ -308,6 +308,7 @@ //鎻愬崌鏈哄湪灏忚溅妤煎眰 wrkMast.setWrkSts(WrkStsType.MOVE_LIFT_TO_SHUTTLE_COMPLETE_TRANSPORT_LIFT_OUT.sts);//灏忚溅绉诲姩鍒版彁鍗囨満涓� 灏忚溅绉诲姩鑷崇珯鐐瑰畬鎴� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� wrkMast.setModiTime(now); + wrkMast.setLiftNo(liftProtocol.getLiftNo());//鎻愬墠閿佸畾鎻愬崌鏈� wrkMastService.updateById(wrkMast); return false; } diff --git a/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java b/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java index 68a2f30..b743284 100644 --- a/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java +++ b/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java @@ -423,11 +423,11 @@ //妫�娴嬬洰鏍囨ゼ灞傝溅鏁伴噺鏄惁灏忎簬鍏佽鐨勬渶澶ф暟閲� - boolean checkDispatchMaxNum = checkDispatchMaxNum(lev); - if (!checkDispatchMaxNum) { - News.info("{}浠诲姟锛寋}灞傦紝宸茬粡杈惧埌褰撳墠妤煎眰璋冨害杞﹁締鏈�澶у��", wrkMast1.getWrkNo(), lev); - return false; - } +// boolean checkDispatchMaxNum = checkDispatchMaxNum(lev); +// if (!checkDispatchMaxNum) { +// News.info("{}浠诲姟锛寋}灞傦紝宸茬粡杈惧埌褰撳墠妤煎眰璋冨害杞﹁締鏈�澶у��", wrkMast1.getWrkNo(), lev); +// return false; +// } for (ShuttleThread shuttleThread : diffLev) { ShuttleProtocol shuttleProtocol = shuttleThread.getStatus(); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 93cf05c..b5fe763 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -11,7 +11,7 @@ validation-timeout: 3000 connection-test-query: select 1 driver-class-name: com.mysql.jdbc.Driver - url: jdbc:mysql://192.168.10.201:3306/fyxc_shuttle?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + url: jdbc:mysql://127.0.0.1:3306/fyxc_shuttle?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: root mvc: -- Gitblit v1.9.1