From 9c16d3614d9b88c637f967518a329f239fcd3aaf Mon Sep 17 00:00:00 2001
From: lss <316519258@qq.com>
Date: 星期五, 12 六月 2020 09:22:04 +0800
Subject: [PATCH] 2020.06.12

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlAlarmsLogic.cs |   97 ++++++++++++++++++++++++++++++------------------
 1 files changed, 60 insertions(+), 37 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlAlarmsLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlAlarmsLogic.cs
index 202c3c0..88b24d8 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlAlarmsLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlAlarmsLogic.cs
@@ -125,7 +125,7 @@
                 data.DeviceEpoint = device.DeviceEpoint;
                 data.DeviceName = device.DeviceName;
                 data.Time = DateTime.Now.ToString("HH:mm:ss");
-                data.RoomName = Common.Room.CurrentRoom.GetRoomNameByDevice(device);
+                data.RoomName = HdlRoomLogic.Current.GetRoomNameByDevice(device);
                 //鎶ヨ缁撴潫
                 data.AlarmMsg = msgInfo.AlarmMsg != string.Empty ? msgInfo.AlarmMsg : Language.StringByID(R.MyInternationalizationString.uAlarmFinish);
                 //鐢垫睜鎶ヨ
@@ -135,7 +135,7 @@
 
                 //闄愬埗瀹冪殑闀垮害
                 this.listSafetyAlarmInfo.Insert(0, data);
-                if (this.listSafetyAlarmInfo.Count > UserCenterResourse.Option.SafetyOnedayMaxAlarmMsgCount)
+                if (this.listSafetyAlarmInfo.Count > UserCenterResourse.ResidenceOption.SafetyOnedayMaxAlarmMsgCount)
                 {
                     this.listSafetyAlarmInfo.RemoveAt(this.listSafetyAlarmInfo.Count - 1);
                 }
@@ -211,7 +211,7 @@
 
                 //闄愬埗瀹冪殑闀垮害
                 this.listSafetyAlarmInfo.Insert(0, data);
-                if (this.listSafetyAlarmInfo.Count > UserCenterResourse.Option.SafetyOnedayMaxAlarmMsgCount)
+                if (this.listSafetyAlarmInfo.Count > UserCenterResourse.ResidenceOption.SafetyOnedayMaxAlarmMsgCount)
                 {
                     this.listSafetyAlarmInfo.RemoveAt(this.listSafetyAlarmInfo.Count - 1);
                 }
@@ -266,7 +266,7 @@
                     var listInfo = new List<SafeguardAlarmInfo>();
                     for (int j = 0; j < info.Count; j++)
                     {
-                        if (j == UserCenterResourse.Option.SafetyOnedayMaxAlarmMsgCount)
+                        if (j == UserCenterResourse.ResidenceOption.SafetyOnedayMaxAlarmMsgCount)
                         {
                             //姣忓ぉ鏈�澶氫笁鍗佹潯鏁版嵁
                             break;
@@ -275,7 +275,7 @@
                     }
                     dic[listFile[i]] = listInfo;
 
-                    if (dic.Count == UserCenterResourse.Option.SafetyMaxAlarmMsgDay)
+                    if (dic.Count == UserCenterResourse.ResidenceOption.SafetyMaxAlarmMsgDay)
                     {
                         //鍙涓夊ぉ鐨勯噺
                         break;
@@ -403,6 +403,34 @@
             return alarmInfo;
         }
 
+        /// <summary>
+        /// 鑾峰彇鍗曚釜Json鏁版嵁閲岄潰,鍖呭惈鐨勫叏閮ㄦ姤璀︿俊鎭潯鏁�
+        /// </summary>
+        /// <param name="alarmInfo"></param>
+        /// <returns></returns>
+        public List<string> GetSensorListAlarmMsg(SafeguardAlarmInfo alarmInfo)
+        {
+            var listMsg = new List<string>();
+            //涓�鏉′俊鎭噷闈紝瀹冨彲鑳藉寘鍚涓姤璀�
+            if (string.IsNullOrEmpty(alarmInfo.AlarmMsg) == false)
+            {
+                //鎶ヨ淇℃伅
+                listMsg.Add(alarmInfo.AlarmMsg);
+            }
+            if (alarmInfo.BatteryMsg != null)
+            {
+                //鐢垫睜鐢甸噺
+                listMsg.Add(alarmInfo.BatteryMsg);
+            }
+            if (alarmInfo.DemolishmentMsg != null)
+            {
+                //琚媶鎶ヨ
+                listMsg.Add(alarmInfo.DemolishmentMsg);
+            }
+
+            return listMsg;
+        }
+
         #endregion
 
 
@@ -437,11 +465,11 @@
                 msgInfo.DeviceEpoint = device.DeviceEpoint;
                 msgInfo.DeviceName = device.DeviceName;
                 msgInfo.Time = DateTime.Now.ToString("HH:mm:ss");
-                msgInfo.RoomName = Common.Room.CurrentRoom.GetRoomNameByDevice(device);
+                msgInfo.RoomName = HdlRoomLogic.Current.GetRoomNameByDevice(device);
 
                 //闄愬埗瀹冪殑闀垮害
                 this.listDoorLockAlarmInfo.Insert(0, msgInfo);
-                if (this.listDoorLockAlarmInfo.Count > UserCenterResourse.Option.DoorLockOnedayMaxAlarmMsgCount)
+                if (this.listDoorLockAlarmInfo.Count > UserCenterResourse.ResidenceOption.DoorLockOnedayMaxAlarmMsgCount)
                 {
                     this.listDoorLockAlarmInfo.RemoveAt(this.listDoorLockAlarmInfo.Count - 1);
                 }
@@ -481,7 +509,7 @@
                     var listInfo = new List<DeviceAlarmInfo>();
                     for (int j = 0; j < info.Count; j++)
                     {
-                        if (j == UserCenterResourse.Option.DoorLockOnedayMaxAlarmMsgCount)
+                        if (j == UserCenterResourse.ResidenceOption.DoorLockOnedayMaxAlarmMsgCount)
                         {
                             //姣忓ぉ鏈�澶氫笁鍗佹潯鏁版嵁
                             break;
@@ -490,7 +518,7 @@
                     }
                     dic[listFile[i]] = listInfo;
 
-                    if (dic.Count == UserCenterResourse.Option.DoorLockMaxAlarmMsgDay)
+                    if (dic.Count == UserCenterResourse.ResidenceOption.DoorLockMaxAlarmMsgDay)
                     {
                         //鍙涓夊ぉ鐨勯噺
                         break;
@@ -509,9 +537,9 @@
         /// </summary>
         /// <param name="jobject"></param>
         /// <returns></returns>
-        private DeviceAlarmInfo GetDoorLockAlarmInfo(Newtonsoft.Json.Linq.JObject jobject)
+        public DeviceAlarmInfo GetDoorLockAlarmInfo(Newtonsoft.Json.Linq.JObject jobject)
         {
-            var info = (DoorLockAlarmsResult)JsonConvert.DeserializeObject<DoorLockAlarmsResult>(jobject["Data"].ToString());
+            var info = JsonConvert.DeserializeObject<DoorLockAlarmsResult>(jobject["Data"].ToString());
             var alarmInfo = new DeviceAlarmInfo();
 
             if (info.Clusterid == 1)
@@ -549,19 +577,33 @@
                     //鏆村姏寮�闂�
                     alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg5);
                 }
-                else if (info.AlarmCode == 116)
+                else if (info.AlarmCode == 216)
                 {
-                    //甯稿紑妯″紡寮�鍚�
+                    //甯稿紑妯″紡寮�鍚�(闂ㄩ攣瑙﹀彂)
                     alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg6);
+                    alarmInfo.MsgDiv = 9000;
                 }
-                else if (info.AlarmCode == 117)
+                else if (info.AlarmCode == 217)
                 {
-                    //甯稿紑妯″紡缁撴潫
-                    alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg7);
+                    //甯稿紑妯″紡缁撴潫(闂ㄩ攣瑙﹀彂)
+                    alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg7);
+                    alarmInfo.MsgDiv = 9000;
+                }
+                else if (info.AlarmCode == 218)
+                {
+                    //甯稿紑妯″紡寮�鍚�(缃戝叧瑙﹀彂)
+                    alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg9);
+                    alarmInfo.MsgDiv = 9000;
+                }
+                else if (info.AlarmCode == 219)
+                {
+                    //甯稿紑妯″紡缁撴潫(缃戝叧瑙﹀彂)
+                    alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg10);
+                    alarmInfo.MsgDiv = 9000;
                 }
-                else if (info.AlarmCode == 132)
+                else if (info.AlarmCode == 232)
                 {
-                    //闂ㄩ搩瑙﹀彂
+                    //鏈変汉璁块棶
                     alarmInfo.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg8);
                 }
             }
@@ -586,25 +628,6 @@
             }
             oldDeviceAlarmFile = fileName;
             return fileName;
-        }
-
-        #endregion
-
-        #region 鈻� 缁撴瀯浣揰____________________________
-
-        /// <summary>
-        /// 闂ㄩ攣鐨勬姤璀︾粨鏋�
-        /// </summary>
-        private class DoorLockAlarmsResult
-        {
-            /// <summary>
-            /// 鎶ヨ绫诲瀷
-            /// </summary>
-            public int AlarmCode = -1;
-            /// <summary>
-            /// Clusterid
-            /// </summary>
-            public int Clusterid = -1;
         }
 
         #endregion

--
Gitblit v1.8.0