From 366ba040d2447bacd3455299425e3166f1f992bb Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期四, 20 十一月 2025 14:38:32 +0800
Subject: [PATCH] 添加大车、大理片笼以及多设备串行/并行执行写入基础逻辑
---
mes-processes/mes-plcSend/src/main/java/com/mes/service/PlcDynamicDataService.java | 63 ++++++-------------------------
1 files changed, 13 insertions(+), 50 deletions(-)
diff --git a/mes-processes/mes-plcSend/src/main/java/com/mes/service/PlcDynamicDataService.java b/mes-processes/mes-plcSend/src/main/java/com/mes/service/PlcDynamicDataService.java
index 12eeb8e..6d985f9 100644
--- a/mes-processes/mes-plcSend/src/main/java/com/mes/service/PlcDynamicDataService.java
+++ b/mes-processes/mes-plcSend/src/main/java/com/mes/service/PlcDynamicDataService.java
@@ -4,7 +4,6 @@
import com.github.xingshuangs.iot.common.enums.EDataType;
import com.github.xingshuangs.iot.protocol.s7.serializer.S7Parameter;
import com.mes.device.entity.DeviceConfig;
-import com.mes.entity.PlcAddress;
import com.mes.s7.enhanced.EnhancedS7Serializer;
import java.util.ArrayList;
@@ -13,60 +12,12 @@
/**
* PLC鍔ㄦ�佹暟鎹鍐欐湇鍔�
- * 鏍规嵁PlcAddress閰嶇疆鍔ㄦ�佹瀯寤哄弬鏁帮紝鏀寔浠绘剰瀛楁缁勫悎鐨凱LC鏁版嵁浜や簰
+ * 鏍规嵁DeviceConfig閰嶇疆鍔ㄦ�佹瀯寤哄弬鏁帮紝鏀寔浠绘剰瀛楁缁勫悎鐨凱LC鏁版嵁浜や簰
*
* @author huang
* @date 2025/11/05
*/
public interface PlcDynamicDataService {
-
- /**
- * 鏍规嵁PlcAddress閰嶇疆鍜屽瓧娈靛悕绉拌鍙朠LC鏁版嵁
- *
- * @param config PLC鍦板潃鏄犲皠閰嶇疆
- * @param fieldNames 瑕佽鍙栫殑瀛楁鍚嶇О鍒楄〃
- * @param s7Serializer S7搴忓垪鍖栧櫒
- * @return 瀛楁鍚�->鍊� 鐨凪ap
- */
- Map<String, Object> readPlcData(PlcAddress config, List<String> fieldNames, EnhancedS7Serializer s7Serializer);
-
- /**
- * 鏍规嵁PlcAddress閰嶇疆鍜屾暟鎹甅ap鍐欏叆PLC
- *
- * @param config PLC鍦板潃鏄犲皠閰嶇疆
- * @param dataMap 瀛楁鍚�->鍊� 鐨凪ap
- * @param s7Serializer S7搴忓垪鍖栧櫒
- */
- void writePlcData(PlcAddress config, Map<String, Object> dataMap, EnhancedS7Serializer s7Serializer);
-
- /**
- * 璇诲彇PLC鎵�鏈夊瓧娈�
- *
- * @param config PLC鍦板潃鏄犲皠閰嶇疆
- * @param s7Serializer S7搴忓垪鍖栧櫒
- * @return 鎵�鏈夊瓧娈电殑鍊�
- */
- Map<String, Object> readAllPlcData(PlcAddress config, EnhancedS7Serializer s7Serializer);
-
- /**
- * 璇诲彇鍗曚釜瀛楁
- *
- * @param config PLC鍦板潃鏄犲皠閰嶇疆
- * @param fieldName 瀛楁鍚�
- * @param s7Serializer S7搴忓垪鍖栧櫒
- * @return 瀛楁鍊�
- */
- Object readPlcField(PlcAddress config, String fieldName, EnhancedS7Serializer s7Serializer);
-
- /**
- * 鍐欏叆鍗曚釜瀛楁
- *
- * @param config PLC鍦板潃鏄犲皠閰嶇疆
- * @param fieldName 瀛楁鍚�
- * @param value 瀛楁鍊�
- * @param s7Serializer S7搴忓垪鍖栧櫒
- */
- void writePlcField(PlcAddress config, String fieldName, Object value, EnhancedS7Serializer s7Serializer);
/**
* 鏍规嵁DeviceConfig閰嶇疆鍜屽瓧娈靛悕绉拌鍙朠LC鏁版嵁
@@ -115,4 +66,16 @@
* @param s7Serializer S7搴忓垪鍖栧櫒
*/
void writePlcField(DeviceConfig device, String fieldName, Object value, EnhancedS7Serializer s7Serializer);
+
+ /**
+ * 鏍规嵁瀹炰綋绫诲拰DeviceConfig閰嶇疆鍐欏叆PLC鏁版嵁
+ * 瀹炰綋绫诲瓧娈典娇鐢ˊS7Variable娉ㄨВ锛宎ddress瀛楁涓哄瓧娈靛悕锛堝搴攃onfigJson涓殑paramKey锛�
+ * 鍋忕Щ閲忎粠configJson涓殑paramValue鑾峰彇
+ *
+ * @param <T> 瀹炰綋绫诲瀷
+ * @param device 璁惧閰嶇疆
+ * @param entity 瀹炰綋瀵硅薄
+ * @param s7Serializer S7搴忓垪鍖栧櫒
+ */
+ <T> void writePlcDataByEntity(DeviceConfig device, T entity, EnhancedS7Serializer s7Serializer);
}
--
Gitblit v1.8.0