From 10a65bdb100ea964d5eff3b67198c89c6c3ba9e7 Mon Sep 17 00:00:00 2001
From: bklLiudl <673013083@qq.com>
Date: 星期三, 11 九月 2024 16:15:05 +0800
Subject: [PATCH] Merge branch 'master' into liudl

---
 Admin.NET/WCS.Application/Hub/PlcHub.cs |   45 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 43 insertions(+), 2 deletions(-)

diff --git a/Admin.NET/WCS.Application/Hub/PlcHub.cs b/Admin.NET/WCS.Application/Hub/PlcHub.cs
index b6dbb86..2cf316f 100644
--- a/Admin.NET/WCS.Application/Hub/PlcHub.cs
+++ b/Admin.NET/WCS.Application/Hub/PlcHub.cs
@@ -10,10 +10,11 @@
 public class PlcHub : Hub<IPlcHub>
 {
     private readonly IHubContext<PlcHub, IPlcHub> _plcHubContext;
-
-    public PlcHub(IHubContext<PlcHub, IPlcHub> plcHubContext)
+    private readonly SysConfigService _sysConfigService;
+    public PlcHub(IHubContext<PlcHub, IPlcHub> plcHubContext, SysConfigService sysConfigService)
     {
         _plcHubContext = plcHubContext;
+        _sysConfigService = sysConfigService;
     }
     /// <summary>
     /// 涓嬪彂PLC杩炴帴鐘舵��
@@ -34,4 +35,44 @@
     //{
     //    await _plcHubContext.Clients.All.PublicStationStatus(context);
     //}
+
+    /// <summary>
+    /// 涓嬪彂鏈嶅姟鐘舵��
+    /// </summary>
+    public async Task UpdateService(PLCServiceModel context)
+    {
+        //杩愯鐘舵��
+        if (context.BoRunningState.HasValue)
+        {
+            PLCTaskAction.boRunningState = context.BoRunningState.Value;
+            if (context.BoRunningState.Value)
+                PLCTaskAction.Init();
+            else
+                PLCTaskAction.Stop();
+            await _sysConfigService.UpdateConfigValue("sys_RunningState", context.BoRunningState.Value);
+        }
+        //鑴辨満妯″紡
+        if (context.BoOffline.HasValue)
+        {
+            PLCTaskAction.boOffline = context.BoOffline.Value;
+            await _sysConfigService.UpdateConfigValue("sys_Offline", context.BoOffline.Value);
+        }
+        //鑷埛鏂�
+        if (context.BoRefresh.HasValue)
+        {
+            PLCTaskAction.boRefresh = context.BoRefresh.Value;
+            await _sysConfigService.UpdateConfigValue("sys_Refresh", context.BoRefresh.Value);
+        }
+        await _plcHubContext.Clients.All.UpdateService(new PLCServiceModel() { BoRunningState = PLCTaskAction.boRunningState, BoRefresh = PLCTaskAction.boRefresh, BoOffline = PLCTaskAction.boOffline });
+    }
 }
+public class PLCServiceModel
+{
+    public bool? BoRunningState { get; set; }
+
+
+    public bool? BoOffline { get; set; }
+
+
+    public bool? BoRefresh { get; set; }
+}
\ No newline at end of file

--
Gitblit v1.8.0