From b03799a01cbadde1eed0b053bfec000fe63efb8f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期五, 28 十月 2022 13:35:22 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   29 ++++++++++++++++++++++++++++-
 1 files changed, 28 insertions(+), 1 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 8435624..b9a00cc 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2458,6 +2458,7 @@
     /**
      * 灏忚溅鐢甸噺妫�娴� ===>> 鍙戣捣鍏呯數
      */
+    @SuppressWarnings("serial")
     public synchronized void loopSteCharge() {
         SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
         for (SteSlave ste : slaveProperties.getSte()) {
@@ -2484,7 +2485,33 @@
 
                 if (wrkCharge == null && steProtocol.getChargeStatus() == 0) {
                     // 瀵绘壘绌洪棽鍏呯數妗�
-                    SteChargeType steCharge = devpThread.getIdleChargeLocNo();
+                    SteChargeType steCharge = null;
+                    do {
+                        String locNo;
+                        if (!devpThread.charge0) {
+                            locNo = SteChargeType.FIRST.locNo;
+                            if (basSteService.hasCarOfLocNo(locNo) == null) {
+                                steCharge = SteChargeType.FIRST;
+                                break;
+                            }
+                        }
+                        if (!devpThread.charge1) {
+                            locNo = SteChargeType.SECOND.locNo;
+                            if (basSteService.hasCarOfLocNo(locNo) == null) {
+                                steCharge = SteChargeType.SECOND;
+                                break;
+                            }
+                        }
+                        if (!devpThread.charge2) {
+                            locNo = SteChargeType.THIRD.locNo;
+                            if (basSteService.hasCarOfLocNo(locNo) == null) {
+                                steCharge = SteChargeType.THIRD;
+                                break;
+                            }
+                        }
+                        break;
+                    } while (false);
+
                     if (steCharge == null) {
                         log.warn("{}鍙峰皬杞︺�愮數閲忥細{}銆戝厖鐢靛け璐ワ紝鍘熷洜锛氭病鏈夌┖闂插厖鐢垫々銆�", ste.getId(), steProtocol.getCharge());
                         continue;

--
Gitblit v1.9.1