From b7fdd14f4fa28abfdce506fe2ad8f9b4446151c8 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期三, 25 九月 2024 15:34:51 +0800
Subject: [PATCH] 修改问题
---
Admin.NET/WCS.Application/Hub/PlcHub.cs | 68 ++++++++++++++++++++++++++++++++-
1 files changed, 65 insertions(+), 3 deletions(-)
diff --git a/Admin.NET/WCS.Application/Hub/PlcHub.cs b/Admin.NET/WCS.Application/Hub/PlcHub.cs
index de41681..1075892 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杩炴帴鐘舵��
@@ -48,14 +49,71 @@
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 _plcHubContext.Clients.All.UpdateService(new PLCServiceModel() { BoRunningState = PLCTaskAction.boRunningState, BoRefresh = PLCTaskAction.boRefresh, BoOffline = PLCTaskAction.boOffline });
+ await _sysConfigService.UpdateConfigValue("sys_Refresh", context.BoRefresh.Value);
+ }
+ //婕旂ず妯″紡
+ if (context.BoDemo.HasValue)
+ {
+ PLCTaskAction.boDemo = context.BoDemo.Value;
+
+ //PLC杩炴帴
+ var plcStackeConn = PLCTaskAction.listPlcConn.First(m => m.PlcIP == "10.18.51.120");
+ if (plcStackeConn.Connected)
+ {
+ //鍐欏叆娴佺▼瀛�
+ var ret = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Bit, "DB119", "0", PLCTaskAction.boDemo == true ? "1" : "0");
+ if (ret.IsSucceed)
+ {
+ await _sysConfigService.UpdateConfigValue("sys_demo", context.BoDemo.Value);
+ }
+ else
+ {
+ PLCTaskAction.boDemo = !PLCTaskAction.boDemo;
+ }
+ }
+ else
+ {
+ PLCTaskAction.boDemo = !PLCTaskAction.boDemo;
+ }
+ }
+ //婊氱瓛鍙嶈浆
+ if (context.BoDrumReversal.HasValue)
+ {
+ PLCTaskAction.boDrumReversal = context.BoDrumReversal.Value;
+
+ //PLC杩炴帴
+ var plcStackeConn = PLCTaskAction.listPlcConn.First(m => m.PlcIP == "10.18.51.120");
+ if (plcStackeConn.Connected)
+ {
+ //鍐欏叆娴佺▼瀛�
+ var ret = plcStackeConn.SetPlcDBValue(PLCDataTypeEnum.Bit, "DB119", "0.1", PLCTaskAction.boDemo == true ? "1" : "0");
+ if (ret.IsSucceed)
+ {
+ await _sysConfigService.UpdateConfigValue("sys_DrumReversal", context.BoDrumReversal.Value);
+ }
+ else
+ {
+ PLCTaskAction.boDrumReversal = !PLCTaskAction.boDrumReversal;
+ }
+ }
+ else
+ {
+ PLCTaskAction.boDrumReversal = !PLCTaskAction.boDrumReversal;
+ }
+ }
+ await _plcHubContext.Clients.All.UpdateService(new PLCServiceModel() { BoRunningState = PLCTaskAction.boRunningState, BoRefresh = PLCTaskAction.boRefresh, BoOffline = PLCTaskAction.boOffline, BoDemo = PLCTaskAction.boDemo, BoDrumReversal = PLCTaskAction.boDrumReversal });
}
}
public class PLCServiceModel
@@ -67,4 +125,8 @@
public bool? BoRefresh { get; set; }
+
+ public bool? BoDemo { get; set; }
+
+ public bool? BoDrumReversal { get; set; }
}
\ No newline at end of file
--
Gitblit v1.8.0