From b9c76ce85e533250cd36de670146530f970859e7 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期五, 01 八月 2025 11:29:49 +0800
Subject: [PATCH] 修改伸缩杆接口

---
 项目代码/后端/后台管理/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SSG/AlarmResetJob.cs |   57 ++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 40 insertions(+), 17 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SSG/AlarmResetJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SSG/AlarmResetJob.cs"
index d15134d..486d13f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SSG/AlarmResetJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\345\220\216\347\253\257/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_Tasks/SSG/AlarmResetJob.cs"
@@ -34,6 +34,22 @@
             _UserService = UserService;
         }
 
+        // 澧炴坊鐨勫瓧鍏歌窡韪姤璀︿负姣忎釜瑁呯疆 Quartz 榛樿姣忔璋冨害浠诲姟鏃朵細閲嶆柊鍒涘缓
+        private static readonly Dictionary<string, bool> _leftAlarmStates = new Dictionary<string, bool>() //鍔犻攣
+        {
+            ["M109"] = false,//浼烘湇鎶ヨ
+            ["M111"] = false,//鍏朵粬鎶ヨ
+            ["M110"] = false,//鎬ュ仠鎶ヨ
+            ["M120"] = false,//闅滅鎶ヨ
+        };
+        private static readonly Dictionary<string, bool> _rightAlarmStates = new Dictionary<string, bool>()
+        {
+            ["M109"] = false,//浼烘湇鎶ヨ
+            ["M111"] = false,//鍏朵粬鎶ヨ
+            ["M110"] = false,//鎬ュ仠鎶ヨ
+            ["M120"] = false,//闅滅鎶ヨ
+        };
+
         public Task Execute(IJobExecutionContext context)
         {
             try
@@ -41,14 +57,14 @@
 
                 //鑾峰彇璁惧鍙�
                 // 鑾峰彇鍏ㄩ儴璁惧閰嶇疆
-                OtherDevice serialPortDevice = (OtherDevice)context.JobDetail.JobDataMap.Get("JobParams");
+                //OtherDevice serialPortDevice = (OtherDevice)context.JobDetail.JobDataMap.Get("JobParams");
 
-                if (serialPortDevice!=null)
-                {
-                    HandleAlarm(serialPortDevice);
-                }
-               
+                //if (serialPortDevice != null)
+                //{
+                //    HandleAlarm(serialPortDevice);
+                //}
 
+                //鍙
                 var alarmInfo = _alarmResetHsyServer.GetWebSocketInfo();
                 _webSocketServer.PublishAllClientPayload(JsonConvert.SerializeObject(alarmInfo));
 
@@ -65,16 +81,18 @@
         {
             try
             {
-                var stuck = device.Communicator.Read<bool>("M109"); //浼哥缉鏉嗘姤璀�//榛樿鏄痜alse
+                var stuck = device.Communicator.Read<bool>("M109"); //浼哥缉鏉嗕己鏈嶆姤璀�//榛樿鏄痜alse
                 var other = device.Communicator.Read<bool>("M111"); //鍏朵粬鎶ヨ //榛樿鏄痜alse
+                var scram = device.Communicator.Read<bool>("M110");//鎬ュ仠鎶ヨ//榛樿鏄痜alse
+                var stop = device.Communicator.Read<bool>("M120");//閬囧埌闅滅鍋滄鎶ヨ
 
                 Console.WriteLine($"{device.DeviceName}:鍗′綇鎶ヨ鐨勯粯璁ゅ�间负{stuck}锛屽叾浠栨姤璀︾殑榛樿鍊间负{other}");
 
                 // 鏍规嵁璁惧浠g爜鑾峰彇浣嶇疆鍜岄儴闂↖D
                 var (location, deptId) = device.DeviceCode switch
                 {
-                    "SSG001" => ("杞ㄩ亾涓�-宸�", 1),
-                    "SSG002" => ("杞ㄩ亾涓�-鍙�", 1),
+                    "SSG001" => ("妫�8閬撳乏渚ц鎯曟満鏋�", 1),
+                    "SSG002" => ("妫�8閬撳彸渚ц鎯曟満鏋�", 1),
                     "SSG003" => ("杞ㄩ亾浜�-宸�", 2),
                     "SSG004" => ("杞ㄩ亾浜�-鍙�", 2),
                     "SSG005" => ("杞ㄩ亾涓�-宸�", 3),
@@ -82,7 +100,7 @@
                     "SSG007" => ("杞ㄩ亾鍥�-宸�", 4),
                     "SSG008" => ("杞ㄩ亾鍥�-鍙�", 4),
                     "SSG009" => ("杞ㄩ亾浜�-宸�", 5),
-                    "SSG0010" => ("杞ㄩ亾浜�-鍙�", 5),
+                    "SSG0010" => ("杞ㄩ亾浜�-鍙�",5),
                     _ => ($"鏈煡璁惧({device.DeviceCode})", 0) // 鏈煡璁惧榛樿閮ㄩ棬ID涓�0
                 };
 
@@ -93,20 +111,25 @@
                     return;
                 }
 
-                if (stuck && !other)
+                if (stuck && !_leftAlarmStates["M109"])
                 {
-                    var alarm = _alarmResetHsyServer.AddAlarmHsy(deptId, $"{location}:浼哥缉鏉嗗崱浣忔姤璀�", stuck);
-                    Console.WriteLine($"{location}:浼哥缉鏉嗗崱浣忔姤璀�", stuck);
+                    var alarm = _alarmResetHsyServer.AddAlarmHsy(deptId, $"{location}:鍗′綇鎶ヨ", stuck);
+                    Console.WriteLine($"{location}:鍗′綇鎶ヨ", stuck);
                 }
-                else if (!stuck && other)
+               
+                if (other)
                 {
                     var alarm = _alarmResetHsyServer.AddAlarmHsy(deptId, $"{location}锛氬叾浠栨姤璀�", other);
                     Console.WriteLine($"{location}锛氬叾浠栨姤璀�", other);
                 }
-                else if (stuck && other)
+              
+                 if (scram)
                 {
-                    var alarm = _alarmResetHsyServer.AddAlarmHsy(deptId, $"{location}锛氫几缂╂潌鍗′綇鎶ヨ鍜屽叾浠栨姤璀�", other);
-                    Console.WriteLine($"{location}锛氫几缂╂潌鍗′綇鎶ヨ鍜屽叾浠栨姤璀�", other);
+                    var alarm = _alarmResetHsyServer.AddAlarmHsy(deptId, $"{location}:鎬ュ仠鎶ヨ", scram);
+                }
+                if (stop)
+                {
+                    var alarm = _alarmResetHsyServer.AddAlarmHsy(deptId, "{location}:閬囧埌闅滅鎶ヨ", stop);
                 }
             }
             catch (Exception ex)

--
Gitblit v1.9.3