From c541e23b13fbd0c9a22ef325f2f9aff56329ff25 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 06 五月 2024 08:19:33 +0800
Subject: [PATCH] 修改数据库连接

---
 springboot-vue3/src/main/java/com/example/springboot/entity/device/PlcBitObject.java |   40 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 35 insertions(+), 5 deletions(-)

diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/device/PlcBitObject.java b/springboot-vue3/src/main/java/com/example/springboot/entity/device/PlcBitObject.java
index 643664b..df222d5 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/entity/device/PlcBitObject.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/device/PlcBitObject.java
@@ -2,7 +2,9 @@
 
 import java.lang.reflect.Array;
 import java.util.ArrayList;
+import java.util.LinkedHashMap;
 import java.util.List;
+import java.util.Map;
 
 public class PlcBitObject {
 
@@ -71,16 +73,44 @@
      * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
      */
     public List<Boolean> getPlcBitValues(List<String> codeids) {
-        List<Boolean> arrayList = new ArrayList();
+        List<Boolean> arrayList = new ArrayList<>();
         if (plcBitList != null) {
-            for (PlcBitInfo plcbitInfo : plcBitList) {
-                if (codeids.contains(plcbitInfo.getCodeId().toString()))
-                    arrayList.add(plcbitInfo.getValue());
+            Map<String, Boolean> resultMap = new LinkedHashMap<>(); // 浣跨敤 LinkedHashMap 淇濈暀鎻掑叆椤哄簭
+            for (PlcBitInfo plcBitInfo : plcBitList) {
+                if (codeids.contains(plcBitInfo.getCodeId().toString())) {
+                    resultMap.put(plcBitInfo.getCodeId().toString(), plcBitInfo.getValue());
+                }
+            }
+            for (String codeId : codeids) { // 鎸夌収浼犲叆鍙傛暟鐨勯『搴忛亶鍘�
+                Boolean value = resultMap.get(codeId);
+                if (value != null) {
+                    arrayList.add(value);
+                } else {
+                    arrayList.add(null); // 濡傛灉鎵句笉鍒板搴旂殑鍊硷紝娣诲姞 null
+                }
             }
         }
         return arrayList;
     }
-     
+
+
+    public List<String> getAddressListByCodeId(List<String> codeIdList) {
+        List<String> addressList = new ArrayList<>();
+        for (String codeId : codeIdList) {
+            for (PlcBitInfo plcBitInfo : plcBitList) {
+                if (plcBitInfo.getCodeId().equals(codeId)) {
+                    int index = plcBitInfo.getAddressIndex();
+                    String address = plcBitInfo.getAddress(index);
+                    if (address != null) {
+                        addressList.add(address);
+                    }
+                }
+            }
+        }
+        return addressList;
+    }
+
+
     /**
      * 娣诲姞鍙傛暟瀹炰緥
      * 

--
Gitblit v1.8.0