From 47eb81eebc9a87af5f64dd765dc1a1267317d9a8 Mon Sep 17 00:00:00 2001
From: yantian yue <306727702@qq.com>
Date: 星期二, 24 十月 2023 16:21:55 +0800
Subject: [PATCH] OPCUA更新

---
 guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/cert/MethodName.java      |   12 +++++++++++-
 guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientRunner.java  |    2 +-
 guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientHandler.java |    5 ++++-
 guns-vip-main/src/main/resources/opcua.properties                             |    5 +++--
 guns-vip-main/src/main/webapp/assets/modular/bs/opcuaConf/opcuaConf.js        |   12 ++++++++++--
 guns-vip-main/src/main/webapp/pages/modular/bs/opcuaConf/opcuaConf.html       |   10 ++++++++++
 6 files changed, 39 insertions(+), 7 deletions(-)

diff --git a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/cert/MethodName.java b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/cert/MethodName.java
index 7320044..ed6c92e 100644
--- a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/cert/MethodName.java
+++ b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/cert/MethodName.java
@@ -1,5 +1,7 @@
 package cn.stylefeng.guns.opcua.cert;
 
+import cn.stylefeng.guns.opcua.client.ClientHandler;
+import cn.stylefeng.guns.opcua.entity.NodeEntity;
 import lombok.extern.slf4j.Slf4j;
 
 @Slf4j
@@ -8,7 +10,15 @@
         log.info("str={},鍝嶅簲鏂规硶:{}", name,"A");
     }
     public void b(String name){
-        log.info("str={},鍝嶅簲鏂规硶:{}", name,"B");
+        try {
+            NodeEntity node = NodeEntity.builder().index(2).identifier("my.device.x2")
+                    .value("99").type("int").build();
+            ClientHandler clientHandler=new ClientHandler();
+            String out=clientHandler.write(node);
+            log.info(out);
+        } catch (Exception e) {
+             e.printStackTrace();
+        }
     }
     public void c(String name){
         log.info("str={},鍝嶅簲鏂规硶:{}", name,"C");
diff --git a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientHandler.java b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientHandler.java
index b7a43c8..5877f51 100644
--- a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientHandler.java
+++ b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientHandler.java
@@ -42,7 +42,7 @@
 public class ClientHandler {
 
 	// 瀹㈡埛绔疄渚�
-	private OpcUaClient client = null;
+	public static OpcUaClient client = null;
 
 	public List<OpcuaConfResult> b = null;
 
@@ -224,6 +224,9 @@
 		case "boolean":
 			value = new Variant(Boolean.parseBoolean(node.getValue().toString()));
 			break;
+		case "long":
+			value = new Variant(Long.parseLong(node.getValue().toString()));
+			break;
 		}
 		DataValue dataValue = new DataValue(value, null, null);
 
diff --git a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientRunner.java b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientRunner.java
index eb3fc05..5c042f6 100644
--- a/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientRunner.java
+++ b/guns-vip-main/src/main/java/cn/stylefeng/guns/opcua/client/ClientRunner.java
@@ -116,7 +116,7 @@
 				// opc ua鑷畾涔夌殑鍚嶇О
 				.setApplicationName(LocalizedText.english("plc"))
 				// 鍦板潃
-				.setApplicationUri("opc.tcp://127.0.0.1:49320")
+				.setApplicationUri(properties.getEndpointUrl())
 				.setCertificate(loader.getClientCertificate()).setKeyPair(loader.getClientKeyPair())
 				// 瀹夊叏绛栫暐绛夐厤缃�
 				//.setEndpoint(endpoint).setIdentityProvider(new UsernameProvider("OPCUA", "yyt@8888888888"))
diff --git a/guns-vip-main/src/main/resources/opcua.properties b/guns-vip-main/src/main/resources/opcua.properties
index e7ce955..1956bbc 100644
--- a/guns-vip-main/src/main/resources/opcua.properties
+++ b/guns-vip-main/src/main/resources/opcua.properties
@@ -1,8 +1,9 @@
-#opcua?????
+#opcua server
 opcua.server.endpoint.url=opc.tcp://127.0.0.1:49320
 opcua.server.idp.username=administrator
 opcua.server.idp.password=yyt@8888888888
-#opcua?????
+
+#opcua client
 opcua.client.app.name=plc
 opcua.client.app.uri=urn:Yyt_PC:UnifiedAutomation:UaExpert
 opcua.client.cert.path=C:/Users/30672/Desktop
diff --git a/guns-vip-main/src/main/webapp/assets/modular/bs/opcuaConf/opcuaConf.js b/guns-vip-main/src/main/webapp/assets/modular/bs/opcuaConf/opcuaConf.js
index 0c7c943..2956c47 100644
--- a/guns-vip-main/src/main/webapp/assets/modular/bs/opcuaConf/opcuaConf.js
+++ b/guns-vip-main/src/main/webapp/assets/modular/bs/opcuaConf/opcuaConf.js
@@ -24,7 +24,14 @@
             {field: 'length', sort: true, title: '闀垮害'},
             {field: 'sysTypes', sort: true, title: '绫诲瀷'},
             {field: 'functionality', sort: true, title: '鍔熻兘璇存槑'},
-            {field: 'subscribe', sort: true, title: '鏄惁璁㈤槄'},
+            {field: 'subscribe', align: "center", title: '鏄惁璁㈤槄', templet: function (d) {
+                if (d.subscribe === '1') {
+                        return "鍚敤";
+                    } else {
+                        return "绂佺敤";
+                    }
+                }
+            },
             {field: 'rModule', sort: true, title: '璁㈤槄鍝嶅簲妯″潡'},
             {field: 'rFunction', sort: true, title: '璁㈤槄鍝嶅簲鍑芥暟'},
             {field: 'remarks', sort: true, title: '澶囨敞'},
@@ -39,13 +46,14 @@
         var queryData = {};
 
         queryData['node'] = $('#node').val();
+        queryData['subscribe'] = $('#subscribe').val();
 
         table.reload(OpcuaConf.tableId, {
             where: queryData, page: {curr: 1}
         });
     };
 
-    /**
+     /**
      * 璺宠浆鍒版坊鍔犻〉闈�
      */
     OpcuaConf.jumpAddPage = function () {
diff --git a/guns-vip-main/src/main/webapp/pages/modular/bs/opcuaConf/opcuaConf.html b/guns-vip-main/src/main/webapp/pages/modular/bs/opcuaConf/opcuaConf.html
index f8db3bd..cd4b581 100644
--- a/guns-vip-main/src/main/webapp/pages/modular/bs/opcuaConf/opcuaConf.html
+++ b/guns-vip-main/src/main/webapp/pages/modular/bs/opcuaConf/opcuaConf.html
@@ -18,6 +18,16 @@
                                 <input id="node" class="layui-input" type="text" placeholder="鑺傜偣"/>
                             </div>
                             <div class="layui-inline">
+                                鏄惁璁㈤槄:
+                            </div>
+                            <div class="layui-inline">
+                                <select name="subscribe" id="subscribe">
+                                    <option value="">璇烽�夋嫨鐘舵��</option>
+                                    <option value="1">鍚敤</option>
+                                    <option value="0">绂佺敤</option>
+                                </select>
+                            </div>
+                            <div class="layui-inline">
                                 <button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>鎼滅储</button>
                                 <button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>娣诲姞</button>
                                 <button id="btnExp" class="layui-btn icon-btn"><i class="layui-icon">&#xe67d;</i>瀵煎嚭</button>

--
Gitblit v1.9.3