From dce6c3481a37216292724013ff9d2b75ceb82f86 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期三, 10 六月 2020 15:47:28 +0800
Subject: [PATCH] 添加小度的代码

---
 ZigbeeApp/Shared/Phone/ZigBee/Device/ZbGateway.cs |   61 ++++++++++++------------------
 1 files changed, 24 insertions(+), 37 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/ZbGateway.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/ZbGateway.cs
index f8b36df..e7b139f 100755
--- a/ZigbeeApp/Shared/Phone/ZigBee/Device/ZbGateway.cs
+++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/ZbGateway.cs
@@ -31,19 +31,7 @@
         {
             get
             {
-                return GateWayList.Find((obj) => { return obj.getGatewayBaseInfo.HomeId == Shared.Common.Config.Instance.HomeId && obj.getGatewayBaseInfo.IsMainGateWay; });
-            }
-        }
-
-        /// <summary>
-        /// 涓荤綉鍏�
-        /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public bool IsMainGateWay
-        {
-            get
-            {
-                return getGatewayBaseInfo != null && getGatewayBaseInfo.IsMainGateWay;
+                return GateWayList.Find((obj) => { return obj.HomeId == Shared.Common.Config.Instance.HomeId && obj.IsMainGateWay; });
             }
         }
 
@@ -68,7 +56,7 @@
         {
             get
             {
-                var fileName = "Gateway_" + DeviceType.ZbGateway.ToString() + "_" + this.getGatewayBaseInfo?.gwID;
+                var fileName = "Gateway_" + DeviceType.ZbGateway.ToString() + "_" + this.GwId;
                 return fileName;
             }
         }
@@ -551,7 +539,6 @@
         {
             await System.Threading.Tasks.Task.Run(async () =>
             {
-                CommonDevice commonDev = null;
                 Action<string, string> action1 = (topic, message) => { };
                 Actions += action1;
                 var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 94 } };
@@ -2652,12 +2639,12 @@
                                 await initGateWayBaseInfomation();
 
                                 //娌℃湁涓荤綉鍏虫椂涓诲姩璇诲彇锛岃幏鍙栦富缃戝叧淇℃伅
-                                var gateWayList = GateWayList.FindAll(obj => obj.getGatewayBaseInfo.HomeId == Shared.Common.Config.Instance.HomeId);
-                                if (gateWayList.Find(obj => obj.getGatewayBaseInfo.IsMainGateWay == true) == null)
+                                var gateWayList = GateWayList.FindAll(obj => obj.HomeId == Shared.Common.Config.Instance.HomeId);
+                                if (gateWayList.Find(obj => obj.IsMainGateWay == true) == null)
                                 {
                                     if (gateWayList.Count == 1)
                                     {
-                                        gateWayList[0].getGatewayBaseInfo.IsMainGateWay = true;
+                                        gateWayList[0].IsMainGateWay = true;
                                     }
                                     else
                                     {
@@ -2673,13 +2660,13 @@
                                             {
                                                 for (int j = 0; j < gateWayList.Count; j++)
                                                 {
-                                                    if (gateWayList[i].getGatewayBaseInfo.gwID == info.getGwData.GwId)
+                                                    if (gateWayList[i].GwId == info.getGwData.GwId)
                                                     {
-                                                        gateWayList[i].getGatewayBaseInfo.IsMainGateWay = true;
+                                                        gateWayList[i].IsMainGateWay = true;
                                                     }
                                                     else
                                                     {
-                                                        gateWayList[i].getGatewayBaseInfo.IsMainGateWay = false;
+                                                        gateWayList[i].IsMainGateWay = false;
                                                     }
                                                 }
                                                 break;
@@ -2858,11 +2845,11 @@
         {
             try
             {
-                if (this.getGatewayBaseInfo?.gwID == null || !GateWayBaseInfomations.ContainsKey(this.getGatewayBaseInfo?.gwID))
+                if (this.GwId == string.Empty || !GateWayBaseInfomations.ContainsKey(this.GwId))
                 {
                     return;
                 }
-                var gateWayBaseInfomation = GateWayBaseInfomations[this.getGatewayBaseInfo?.gwID];
+                var gateWayBaseInfomation = GateWayBaseInfomations[this.GwId];
                 message = SecuritySet.AesEncryptBytes(message, gateWayBaseInfomation.AesKey);
                 var topicEncStr = $"/ClientToZigbeeGateWay/{gateWayBaseInfomation.MacMark}/Common/{topicName}";
                 //(6)鏋勫缓Mqtt闇�瑕佸彂甯冪殑鏁版嵁鍖�,鍙戝竷缁欎簯绔殑MqttBroker
@@ -3155,7 +3142,7 @@
                 //鍏ㄥ眬鎺ユ敹缃戝叧鎺ㄩ�佺殑鐨勯�昏緫(涓轰簡鎵ц閫熷害,灏藉彲鑳界殑鍒姞鑰楁椂鐨勬搷浣�)
                 Shared.Phone.UserCenter.HdlGatewayReceiveLogic.Current.GatewayOverallMsgReceive(gatewayID, topic, reportStatus, message);
 
-                var gwa = GateWayList.Find(obj => obj.getGatewayBaseInfo.gwID == gatewayID);
+                var gwa = GateWayList.Find(obj => obj.GwId == gatewayID);
                 if (gwa == null)
                 {
                     return;
@@ -3193,16 +3180,16 @@
                         var gwData = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.GetGwData>(jobject["Data"].ToString());
                         if (gwData != null)
                         {
-                            var gwList = GateWayList.FindAll(obj => obj.getGatewayBaseInfo.HomeId == Shared.Common.Config.Instance.HomeId);
+                            var gwList = GateWayList.FindAll(obj => obj.HomeId == Shared.Common.Config.Instance.HomeId);
                             for (int i = 0; i < gwList.Count; i++)
                             {
-                                if (gwList[i].getGatewayBaseInfo.gwID == gatewayID)
+                                if (gwList[i].GwId == gatewayID)
                                 {
-                                    gwList[i].getGatewayBaseInfo.IsMainGateWay = true;
+                                    gwList[i].IsMainGateWay = true;
                                 }
                                 else
                                 {
-                                    gwList[i].getGatewayBaseInfo.IsMainGateWay = false;
+                                    gwList[i].IsMainGateWay = false;
                                 }
                             }
                         }
@@ -3237,7 +3224,7 @@
                     switch ((DeviceType)(deviceID))
                     {
                         case DeviceType.DoorLock:
-                            var doorLock = new DoorLock() { DeviceID = jobject.Value<int>("Device_ID"), DeviceAddr = jobject.Value<string>("DeviceAddr"), DeviceEpoint = jobject.Value<int>("Epoint"), CurrentGateWayId = gwa.getGatewayBaseInfo.gwID };
+                            var doorLock = new DoorLock() { DeviceID = jobject.Value<int>("Device_ID"), DeviceAddr = jobject.Value<string>("DeviceAddr"), DeviceEpoint = jobject.Value<int>("Epoint"), CurrentGateWayId = gwa.GwId };
                             var OperatingEventNotificationDatad = Newtonsoft.Json.JsonConvert.DeserializeObject<ZigBee.Device.DoorLock.DoorLockOperatingEventNotificationCommand>(jobject["Data"].ToString());
                             if (OperatingEventNotificationDatad != null)
                             {
@@ -3260,7 +3247,7 @@
                     switch ((DeviceType)(deviceID))
                     {
                         case DeviceType.DoorLock:
-                            var doorLock = new DoorLock() { DeviceID = jobject.Value<int>("Device_ID"), DeviceAddr = jobject.Value<string>("DeviceAddr"), DeviceEpoint = jobject.Value<int>("Epoint"), CurrentGateWayId = gwa.getGatewayBaseInfo.gwID };
+                            var doorLock = new DoorLock() { DeviceID = jobject.Value<int>("Device_ID"), DeviceAddr = jobject.Value<string>("DeviceAddr"), DeviceEpoint = jobject.Value<int>("Epoint"), CurrentGateWayId = gwa.GwId };
                             var ProgrammingEventNotificationData = Newtonsoft.Json.JsonConvert.DeserializeObject<ZigBee.Device.DoorLock.DoorLockProgrammingEventNotificationCommand>(jobject["Data"].ToString());
                             if (ProgrammingEventNotificationData != null)
                             {
@@ -3362,7 +3349,7 @@
                 #region 闃插尯琚Е鍙戞椂鎶ュ憡
                 else if (topic == gatewayID + "/" + "Security/ZoneTriggerReport")
                 {
-                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.getGatewayBaseInfo.gwID };
+                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.GwId };
                     ias.zoneTriggerReportData = Newtonsoft.Json.JsonConvert.DeserializeObject<Safeguard.ZoneTriggerReportData>(jobject["Data"].ToString());
 
                     if (ias.zoneTriggerReportData == null)
@@ -3380,7 +3367,7 @@
                 #region 閫昏緫琚皟鐢ㄥ弽棣�
                 else if (topic == gatewayID + "/" + "Logic/Execute_Respon")
                 {
-                    //var logic = new Logic() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.getGatewayBaseInfo.gwID };
+                    //var logic = new Logic() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.GwId };
                     //logic.logicExecuteRespo = Newtonsoft.Json.JsonConvert.DeserializeObject<Logic.ExecuteResponse>(jobject["Data"].ToString());
 
                     //if (logic.logicExecuteRespo == null)
@@ -3398,7 +3385,7 @@
                 #region 鏃堕棿鐐规潯浠舵帹杩熸墽琛�
                 else if (topic == gatewayID + "/" + "Logic/TimingWillArrive")
                 {
-                    //var logic = new Logic() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.getGatewayBaseInfo.gwID };
+                    //var logic = new Logic() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.GwId };
                     //logic.timingWillArriveData = Newtonsoft.Json.JsonConvert.DeserializeObject<Logic.TimingWillArriveData>(jobject["Data"].ToString());
 
                     //if (logic.timingWillArriveData == null)
@@ -3416,7 +3403,7 @@
                 #region 妯″紡瀹夐槻鍔ㄤ綔琚渶缁堟縺娲绘椂鍙戦�佹姤璀︿俊鎭�
                 else if (topic == gatewayID + "/" + "Security/ModeTriggerReport")
                 {
-                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.getGatewayBaseInfo.gwID };
+                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.GwId };
                     ias.modeTriggerReportData = Newtonsoft.Json.JsonConvert.DeserializeObject<Safeguard.ModeTriggerReportData>(jobject["Data"].ToString());
                     if (ias.modeTriggerReportData == null)
                     {
@@ -3433,7 +3420,7 @@
                 #region 閫氳繃澶栭儴鏂瑰紡甯冮槻鎾ら槻鎴愬姛鏃舵姤鍛婃伅
                 else if (topic == gatewayID + "/" + "Security/EnOrWithdrawSucceedReport")
                 {
-                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.getGatewayBaseInfo.gwID };
+                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.GwId };
                     ias.enOrWithdrawSucceedReportData = Newtonsoft.Json.JsonConvert.DeserializeObject<Safeguard.EnOrWithdrawSucceedReportData>(jobject["Data"].ToString());
                     if (ias.enOrWithdrawSucceedReportData == null)
                     {
@@ -3450,7 +3437,7 @@
                 #region 鑳佽揩瀵嗙爜鎾ら槻鏃剁煭淇℃帹閫�
                 else if (topic == gatewayID + "/" + "Security/PushTargetInfo")
                 {
-                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.getGatewayBaseInfo.gwID };
+                    var ias = new Safeguard() { DataID = jobject.Value<int>("Data_ID"), GateWayId = gwa.GwId };
                     ias.coercedPWDWithdrawReportData = Newtonsoft.Json.JsonConvert.DeserializeObject<Safeguard.CoercedPWDWithdrawReportData>(jobject["Data"].ToString());
                     if (ias.coercedPWDWithdrawReportData == null)
                     {
@@ -3513,7 +3500,7 @@
 #if DEBUG
             if (flage == true)
             {
-                if (msg.Contains("DeviceStatusReport") == false)
+                //if (msg.Contains("DeviceStatusReport") == false)
                 {
                     System.Console.WriteLine(msg + "  " + System.DateTime.Now.ToLongTimeString() + " " + System.DateTime.Now.Millisecond);
                 }

--
Gitblit v1.8.0