From af5d5be655d00d2b3bd6e4a6202955de45a56439 Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期四, 27 六月 2024 13:19:24 +0800
Subject: [PATCH] 增加大屏线程
---
hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcBitObject.java | 74 ++++++++++++++-----------------------
1 files changed, 28 insertions(+), 46 deletions(-)
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcBitObject.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcBitObject.java
index e9eb1f7..9f7cd3f 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcBitObject.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/device/PlcBitObject.java
@@ -1,9 +1,6 @@
package com.mes.device;
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
public class PlcBitObject {
@@ -11,7 +8,8 @@
private String plcAddressBegin;
// 鏁版嵁鍦板潃闀垮害锛氱涓�鍙傛暟鍒版渶鍚庝竴涓弬鏁扮殑闀垮害
private int plcAddressLength;
- private ArrayList<PlcBitInfo> plcBitList;
+ //private ArrayList<PlcBitInfo> plcBitList;
+ private LinkedHashMap<String,PlcBitInfo> plcBitMap;
/**
* @return 鏁版嵁鍖哄紑濮嬪湴鍧�
@@ -44,49 +42,40 @@
/**
* @return 鑾峰彇鍙傛暟瀹炰緥闆嗗悎
*/
- public ArrayList<PlcBitInfo> getBitList() {
- return plcBitList;
+ public LinkedHashMap<String,PlcBitInfo> getBitMap() {
+ return plcBitMap;
}
/**
* 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
- *
+ *
* @param codeid 鍙傛暟鏍囪瘑
* @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
*/
public PlcBitInfo getPlcBit(String codeid) {
- if (plcBitList != null) {
- for (PlcBitInfo plcbitInfo : plcBitList) {
+ if (plcBitMap != null) {
+ /*for (PlcBitInfo plcbitInfo : plcBitList) {
if (plcbitInfo.getCodeId().equals(codeid))
return plcbitInfo;
- }
- return null;
+ }*/
+ return plcBitMap.get(codeid);
} else
+ {
return null;
+ }
}
/**
* 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
- *
- * @param codeid 鍙傛暟鏍囪瘑
+ *
+ * @param codeids 鍙傛暟鏍囪瘑
* @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
*/
public List<Boolean> getPlcBitValues(List<String> codeids) {
List<Boolean> arrayList = new ArrayList<>();
- if (plcBitList != null) {
- Map<String, Boolean> resultMap = new LinkedHashMap<>(); // 浣跨敤 LinkedHashMap 淇濈暀鎻掑叆椤哄簭
- for (PlcBitInfo plcBitInfo : plcBitList) {
- if (codeids.contains(plcBitInfo.getCodeId().toString())) {
- resultMap.put(plcBitInfo.getCodeId().toString(), plcBitInfo.getValue());
- }
- }
+ if (plcBitMap != null) {
for (String codeId : codeids) { // 鎸夌収浼犲叆鍙傛暟鐨勯『搴忛亶鍘�
- Boolean value = resultMap.get(codeId);
- if (value != null) {
- arrayList.add(value);
- } else {
- arrayList.add(null); // 濡傛灉鎵句笉鍒板搴旂殑鍊硷紝娣诲姞 null
- }
+ arrayList.add(plcBitMap.get(codeId).getValue());
}
}
return arrayList;
@@ -96,15 +85,7 @@
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);
- }
- }
- }
+ addressList.add(plcBitMap.get(codeId).getAddress());
}
return addressList;
}
@@ -112,31 +93,32 @@
/**
* 娣诲姞鍙傛暟瀹炰緥
- *
+ *
* @param param 鍙傛暟瀹炰緥
*/
public void addPlcBit(PlcBitInfo param) {
- if (plcBitList != null)
- plcBitList.add(param);
+ if (plcBitMap != null) {
+ plcBitMap.put(param.getCodeId(), param);
+ }
else {
- plcBitList = new ArrayList<PlcBitInfo>();
- plcBitList.add(param);
+ plcBitMap = new LinkedHashMap<String,PlcBitInfo>();
+ plcBitMap.put(param.getCodeId(),param);
}
}
/**
* 鏍规嵁PLC杩斿洖鐨勬暟鎹� 缁欏弬鏁板疄渚嬭祴鍊�
- *
+ *
* @param plcValueArray PLC璇诲彇鍥炴潵鐨刡yte绫诲瀷鏁版嵁闆嗗悎
*/
public void setPlcBitList(List<Boolean> plcValueArray) {
- if (plcBitList != null) {
- for (PlcBitInfo plcbitInfo : plcBitList) {
+ if (plcBitMap != null) {
+ Collection<PlcBitInfo> values=plcBitMap.values();
+ for (PlcBitInfo plcbitInfo : values) {
plcbitInfo.setValue(plcValueArray.get(plcbitInfo.getAddressIndex()));
}
}
}
-
-
+
}
\ No newline at end of file
--
Gitblit v1.8.0