From 18b93d511dc764b469d7c4a7e755f7274f89cdb4 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 27 四月 2020 17:55:14 +0800
Subject: [PATCH] 2020-4-27-1

---
 ZigbeeApp/Shared/Common/House.cs |   65 +++++++++++++-------------------
 1 files changed, 27 insertions(+), 38 deletions(-)

diff --git a/ZigbeeApp/Shared/Common/House.cs b/ZigbeeApp/Shared/Common/House.cs
index 0f8ae04..0627613 100755
--- a/ZigbeeApp/Shared/Common/House.cs
+++ b/ZigbeeApp/Shared/Common/House.cs
@@ -23,17 +23,14 @@
                 return $"House_{Id}.json";
             }
         }
-
         /// <summary>
         /// 浣忓畢id--浣跨敤浜戠鎻愪緵鐨勪綇瀹呭敮涓�Id
         /// </summary>
         public string Id = string.Empty;
-
         /// <summary>
         /// 浣忓畢鍚嶇О
         /// </summary>
         public string Name = string.Empty;
-
         /// <summary>
         /// 鏄惁涓哄叾浠栦富鐢ㄦ埛鍒嗕韩杩囨潵鐨勪綇瀹�
         /// </summary>
@@ -42,7 +39,10 @@
         /// 褰撳墠浣忓畢鏄叾浠栦富甯愬彿鍒嗕韩杩囨潵鐨勪富甯愬彿鐨勫垎甯冨紡Id
         /// </summary>
         public string MainUserDistributedMark;
-
+        /// <summary>
+        /// 璇ヤ綇瀹呮槸鍚︽槸铏氭嫙鐨�,true鐨勮瘽浠h〃缃戝叧鍜岃澶囬兘鏄櫄鎷熺殑(榛樿涓篺alse)
+        /// </summary>
+        public bool IsVirtually = false;
         /// <summary>
         /// 浠呭瓙璐﹀彿鐧婚檰鐨勬椂鍊欎娇鐢�,褰撱�怚sOthreShare銆戜负"true"锛屽苟涓斻�怉ccountType銆戜负"1"鏃讹紝璇ヨ处鍙锋嫢鏈夌鐞嗗憳鏉冮檺
         /// </summary>
@@ -55,12 +55,14 @@
         /// 绾害
         /// </summary>
         public double Latitude = 0;
-
+        /// <summary>
+        /// 浣忓畢鎵�鍦ㄧ殑鍦扮悊浣嶇疆鐨勫悕绉�
+        /// </summary>
+        public string ResidenceAddressName = string.Empty;
         /// <summary>
         /// 鎴块棿鍒楄〃(鎴块棿鐨処D)
         /// </summary>
         public List<string> ListRooms = new List<string>();
-
         /// <summary>
         /// 妤煎眰瀛楀吀
         /// key:FloorId
@@ -71,27 +73,6 @@
         /// 褰撳墠妤煎眰Id
         /// </summary>
         public string CurrentFloorId = string.Empty;
-
-        /// <summary>
-        /// 鍏ㄥ眬鍦烘櫙璺緞鍒楄〃---澶囩敤
-        /// </summary>
-        public List<string> SceneFilePathList = new List<string> { };
-        /// <summary>
-        /// 璁惧璺緞鍒楄〃---澶囩敤
-        /// </summary>
-        public List<string> DeviceFilePathList = new List<string> { };
-        /// <summary>
-        /// 鍔熻兘璺緞鍒楄〃---澶囩敤
-        /// </summary>
-        public List<string> FunctionFilePathList = new List<string> { };
-        /// <summary>
-        /// 閫氱敤鏍囪瘑--澶囩敤
-        /// </summary>
-        public object Tag;
-        /// <summary>
-        /// 鏈熴�佹爧銆佸眰绛夊尯鍩�---澶囩敤
-        /// </summary>
-        public Dictionary<string, string> LocationInfoList = new Dictionary<string, string> { };
 
         #endregion
 
@@ -278,11 +259,7 @@
                     {
                         //娓呯┖褰撳墠浣忓畢鍒楄〃
                         Config.Instance.HomeFilePathList.Clear();
-                        if (Config.Instance.HomeId == string.Empty && responseDataObj.PageData.Count > 0)
-                        {
-                            //璧嬩竴涓垵濮嬪��
-                            Config.Instance.HomeId = responseDataObj.PageData[0].Id;
-                        }
+                        var listHouse = new List<House>();
                         foreach (var residence in responseDataObj.PageData)
                         {
                             Config.Instance.HomeFilePathList.Add($"House_{residence.Id}.json");
@@ -312,11 +289,23 @@
                             }
                             Global.CreateHomeDirectory(residence.Id);
                             house.Save(false);
+                            listHouse.Add(house);
                         }
-                        //鍖归厤褰撳墠浣忓畢
-                        if (Config.Instance.HomeFilePathList.Find((obj) => obj == $"House_{Config.Instance.HomeId}.json") == null)
+                        //濡傛灉鍒囨崲浜嗚处鍙�,鎴栬�呭師鏉ョ殑id涓嶅瓨鍦�,鍒欓噸缃綇瀹匢D
+                        if (UserCenterResourse.ResidenceOption.TheSameLoginAccount == false ||
+                            Config.Instance.HomeFilePathList.Find((obj) => obj == $"House_{Config.Instance.HomeId}.json") == null)
                         {
-                            Config.Instance.HomeId = GetHouseIdByFilePath(Config.Instance.HomeFilePathList[0]);
+                            Config.Instance.HomeId = listHouse[0].Id;
+                            foreach (var house in listHouse)
+                            {
+                                //鍒濆閫夋嫨瀹冭嚜宸辩殑浣忓畢
+                                if (house.IsOthreShare == false)
+                                {
+                                    Config.Instance.HomeId = house.Id;
+                                    Config.Instance.Home = House.GetHouseByHouseId(house.Id);
+                                    break;
+                                }
+                            }
                         }
                         Config.Instance.Save();
                     }
@@ -431,7 +420,7 @@
         {
             if (Config.Instance.Home.FloorDics.Count == 0)
             {
-                return null;
+                return string.Empty;
             }
 
             foreach (var floor in Config.Instance.Home.FloorDics)
@@ -440,8 +429,8 @@
                 {
                     return floor.Value;
                 }
-            }
-            return null;
+            }
+            return string.Empty;
         }
 
         /// <summary>

--
Gitblit v1.8.0