From fa095d4c1a440cf28a9ac82aaf9fe26984010670 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期一, 22 九月 2025 08:48:44 +0800
Subject: [PATCH] 丝印页面修改,通讯加null验证

---
 JiuMuMesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java |   44 +++++++++++++++++++++++++-------------------
 1 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java
index f3a78f2..2738ac4 100644
--- a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java
+++ b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/device/PlcParameterObject.java
@@ -155,26 +155,32 @@
      * @param plcValueArray PLC璇诲彇鍥炴潵鐨刡yte绫诲瀷鏁版嵁闆嗗悎
      */
     public void setPlcParameterList(byte[] plcValueArray) {
-        if (plcParameterMap != null) {
-            Collection<PlcParameterInfo> values=  plcParameterMap.values();
-            for (PlcParameterInfo plcParameterInfo :values) {
-                byte[] valueList = new byte[plcParameterInfo.getAddressLength()];
+        if (plcValueArray==null||!(plcValueArray.length>0)){
+            log.info("plcValueArray is null or empty");
+            return ;
+        }
+        if (plcParameterMap==null){
+            log.info("plcParameterMap is null or empty");
+            return ;
+        }
+        Collection<PlcParameterInfo> values=  plcParameterMap.values();
+        for (PlcParameterInfo plcParameterInfo :values) {
+            byte[] valueList = new byte[plcParameterInfo.getAddressLength()];
 //                System.out.println(plcParameterInfo.getAddressLength());
-                for (int i = 0; i < plcParameterInfo.getAddressLength(); i++) {
-                    Array.setByte(valueList, i, plcValueArray[plcParameterInfo.getAddressIndex() + i]);
-                }
-                if (plcParameterInfo.getAddressLength() == 2) {
-                    plcParameterInfo.setValue(String.valueOf(ShortUtil.toUInt16(valueList)));
-                } else if (plcParameterInfo.getAddressLength() == 4) {
-                    plcParameterInfo.setValue(String.valueOf(IntegerUtil.toUInt32(valueList)));
-                }else if(plcParameterInfo.getAddressLength()==256){
-                    StringConverter converter = new StringConverter();
-                    String s="";
-                    String extract1 = converter.extract(s.getClass(),valueList, 0, 0);
-                    plcParameterInfo.setValue(extract1);
-                }else {
-                    plcParameterInfo.setValue((byteToHexString(valueList)));
-                }
+            for (int i = 0; i < plcParameterInfo.getAddressLength(); i++) {
+                Array.setByte(valueList, i, plcValueArray[plcParameterInfo.getAddressIndex() + i]);
+            }
+            if (plcParameterInfo.getAddressLength() == 2) {
+                plcParameterInfo.setValue(String.valueOf(ShortUtil.toUInt16(valueList)));
+            } else if (plcParameterInfo.getAddressLength() == 4) {
+                plcParameterInfo.setValue(String.valueOf(IntegerUtil.toUInt32(valueList)));
+            }else if(plcParameterInfo.getAddressLength()==256){
+                StringConverter converter = new StringConverter();
+                String s="";
+                String extract1 = converter.extract(s.getClass(),valueList, 0, 0);
+                plcParameterInfo.setValue(extract1);
+            }else {
+                plcParameterInfo.setValue((byteToHexString(valueList)));
             }
         }
     }

--
Gitblit v1.8.0