From 4f58ba24b9a7e24dc38aa8eb9ca0b92c83e161ac Mon Sep 17 00:00:00 2001
From: yantian yue <306727702@qq.com>
Date: 星期五, 20 十月 2023 15:48:14 +0800
Subject: [PATCH] OPCUA更新

---
 guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/init/OpcusConfigInit.java |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/init/OpcusConfigInit.java b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/init/OpcusConfigInit.java
new file mode 100644
index 0000000..d676e28
--- /dev/null
+++ b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/init/OpcusConfigInit.java
@@ -0,0 +1,48 @@
+package cn.stylefeng.guns.opcua.init;
+
+import cn.stylefeng.guns.opcua.client.ClientHandler;
+import cn.stylefeng.guns.opcua.controller.OpcuaConfController;
+import cn.stylefeng.guns.opcua.entity.NodeEntity;
+import cn.stylefeng.guns.opcua.model.params.OpcuaConfParam;
+import cn.stylefeng.guns.opcua.model.result.OpcuaConfResult;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+@Component
+@Slf4j
+public class OpcusConfigInit implements CommandLineRunner {
+
+    @Autowired
+    private ClientHandler clientHandler;
+
+    @Autowired
+    private OpcuaConfController opcuaConfController;
+
+    @Override
+    public void run(String... args) throws Exception {
+        try {
+            OpcuaConfParam opcuaConfParam=new OpcuaConfParam();
+            opcuaConfParam.setSubscribe(1); //璁剧疆鏌ヨ鏉′欢锛屾槸鍚﹁闃呯姸鎬佷负1鐨勬墍鏈夋暟鎹�.
+            List<OpcuaConfResult> nodeslist=opcuaConfController.mylist(opcuaConfParam);
+             clientHandler.connect();
+            if (nodeslist != null && nodeslist.size() > 0) {
+                for (OpcuaConfResult opcuaConfResult : nodeslist) {
+                   List<NodeEntity> nodes = Stream.of(opcuaConfResult.getNode())
+                            .map(id -> NodeEntity.builder().index(2).identifier(id).build()).collect(Collectors.toList());
+                    clientHandler.subscribe(nodes);
+                }
+                log.info("鍒濆鍖朞PC璁㈤槄" + nodeslist.size() + "鏉★紒");
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.info("楠氳揣锛屾垜鍚姩澶辫触浜嗭紒");
+        }
+        log.info("楠氳揣锛屾垜鍚姩鎴愬姛浜嗭紒");
+    }
+}

--
Gitblit v1.9.3