From 1dcc7b63a20daad7c7060f18878d8e8dbaad02de Mon Sep 17 00:00:00 2001
From: qiuyao <qiuyao@hnkhzn.com>
Date: 星期一, 28 四月 2025 16:41:31 +0800
Subject: [PATCH] 解决冲突

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/AlarmResetHsyServer.cs |  103 +++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 98 insertions(+), 5 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/AlarmResetHsyServer.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/AlarmResetHsyServer.cs"
index 9de2dd3..cb644ff 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/AlarmResetHsyServer.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/AlarmResetHsyServer.cs"
@@ -1,4 +1,8 @@
-锘縰sing System;
+锘縰sing HslCommunication.WebSocket;
+using Newtonsoft.Json;
+using SqlSugar;
+using System;
+using System.Collections;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -6,6 +10,7 @@
 using WIDESEAWCS_Core;
 using WIDESEAWCS_Core.BaseRepository;
 using WIDESEAWCS_Core.BaseServices;
+using WIDESEAWCS_DTO.Telescopic;
 using WIDESEAWCS_ITaskInfoService;
 using WIDESEAWCS_Model.Models;
 
@@ -14,9 +19,10 @@
     public class AlarmResetHsyServer : ServiceBase<Dt_AlarmResetHsy, IRepository<Dt_AlarmResetHsy>>, IAlarmResetHsyServer
     {
         public IRepository<Dt_AlarmResetHsy> Repository => BaseDal;
-        public AlarmResetHsyServer(IRepository<Dt_AlarmResetHsy> BaseDal) : base(BaseDal)
+        private readonly WebSocketServer _webSocketServer;
+        public AlarmResetHsyServer(IRepository<Dt_AlarmResetHsy> BaseDal, WebSocketServer webSocketServer) : base(BaseDal)
         {
-
+            _webSocketServer = webSocketServer; 
         }
 
 
@@ -34,11 +40,98 @@
                  AlarmTime=DateTime.Now,
 
             };
+            BaseDal.AddData(alarm);
 
-
-            return base.AddData(alarm);
+            return new WebResponseContent { Status=true, Data = alarm };
         }
 
        
+        public WebResponseContent GetWebSocketInfo()
+        {
+            try
+            {
+
+
+
+
+                // 鏌ヨ骞舵帓搴忥紝纭繚 ResetStatus 涓� true 鐨勮褰曟帓鍦ㄥ墠闈紝骞舵寜 CreateDate 闄嶅簭鎺掑垪
+                // var query = Db.Queryable<Dt_AlarmResetHsy>()
+                // .OrderBy(x => new { ResetStatus = SqlFunc.IsNull(x.ResetStatus, false), x.CreateDate }, OrderByType.Desc); // 鎸� ResetStatus 涓� true 鎺掑湪鍓嶏紝骞舵寜 CreateDate 闄嶅簭
+
+                var query = BaseDal.QueryData().OrderByDescending(x => x.ResetStatus). ThenByDescending(x => x.CreateDate);  // 鍐嶆寜 CreateDate 闄嶅簭;
+
+                // 濡傛灉闇�瑕佹牴鎹叾浠栧瓧娈佃繘琛岃繃婊ゆ垨妯$硦鏌ヨ锛屽彲浠ュ湪姝ゆ坊鍔�
+
+
+                return new WebResponseContent
+                {
+                    Status = true,
+                    Message = "鏌ヨ鎴愬姛",
+                    Data = query
+                };
+            }
+            catch (Exception ex)
+            {
+                // 寮傚父鎹曡幏鍜岄敊璇繑鍥�
+                return new WebResponseContent { Status = false, Message = "閿欒锛�" + ex.Message };
+            }
+        }
+
+
+        /// <summary>
+        /// 灏嗚〃涓姸鎬佸叏閮ㄤ负true鐨勬敼涓篺alse
+        /// </summary>
+        /// <param name="status"></param>
+        /// <returns></returns>
+        public WebResponseContent BecomeTrue()
+        {
+            var query=BaseDal.QueryData(x=>x.ResetStatus==true).ToList();
+            // 濡傛灉娌℃湁鎵惧埌绗﹀悎鏉′欢鐨勬暟鎹�
+            if (query.Count == 0)
+            {
+                return new WebResponseContent { Status = false, Message = "娌℃湁瑕佸浣嶆暟鎹�" };
+            }
+            foreach (var item in query)
+            {
+                item.ResetStatus = false;
+                item.ResetTime = DateTime.Now;
+            }
+
+            // 鎵ц鎵归噺鏇存柊鎿嶄綔
+            var updateResult = BaseDal.UpdateData(query);
+
+            // 妫�鏌ユ洿鏂版槸鍚︽垚鍔�
+            if (updateResult)
+            {
+                return new WebResponseContent { Status = true, Message = "鏁版嵁宸叉垚鍔熷浣�", Data = query };
+            }
+            else
+            {
+                return new WebResponseContent { Status = false, Message = "澶嶄綅鎿嶄綔澶辫触" };
+            }
+
+
+        }
+
+        public WebResponseContent UpstreamInspectionRoad(UpstreamIDTO upstreamIDTO)
+        {
+            try
+            {
+                // 灏� upstreamIDTO 杞垚 JSON 瀛楃涓�
+                var json = JsonConvert.SerializeObject(upstreamIDTO);
+                
+                // 鎺ㄩ�佸埌鎵�鏈� WebSocket 瀹㈡埛绔�
+                _webSocketServer.PublishAllClientPayload(json);
+
+                return new WebResponseContent { Status = true, Message = "鎺ㄩ�佹垚鍔�" };
+            }
+            catch (Exception ex)
+            {
+                // 鍑虹幇寮傚父锛岃繑鍥炲け璐�
+                return new WebResponseContent { Status = false, Message = "鎺ㄩ�佸け璐ワ細" + ex.Message };
+            }
+        }
+
+     
     }
 }

--
Gitblit v1.9.3