From f14dcfd967404e197e7ec995ca8d6f2b090d3b7d Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期五, 11 九月 2020 09:16:59 +0800
Subject: [PATCH] 优化多功能面板:绑定温湿度传感器目标,和设备列表回路显示。优化数据矫正功能温湿度度不设置的情况。优化门锁时间设置最后一天和最后最后一个月的时间显示等 细节

---
 ZigbeeApp/Shared/Common/House.cs |  205 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 205 insertions(+), 0 deletions(-)

diff --git a/ZigbeeApp/Shared/Common/House.cs b/ZigbeeApp/Shared/Common/House.cs
new file mode 100755
index 0000000..ae86e44
--- /dev/null
+++ b/ZigbeeApp/Shared/Common/House.cs
@@ -0,0 +1,205 @@
+锘縰sing System;
+using System.Collections.Generic;
+using Shared.Phone.UserCenter;
+
+namespace Shared.Common
+{
+    /// <summary>
+    /// 浣忓畢鏂囦欢
+    /// </summary>
+    [System.Serializable]
+    public class House
+    {
+        #region 鈼� 鍙橀噺____________________________
+        /// <summary>
+        /// 浣忓畢鏂囦欢
+        /// </summary>
+        /// <value>The file path.</value>
+        [Newtonsoft.Json.JsonIgnore]
+        public string FileName
+        {
+            get
+            {
+                return $"House_{Id}.json";
+            }
+        }
+        /// <summary>
+        /// 浣忓畢id--浣跨敤浜戠鎻愪緵鐨勪綇瀹呭敮涓�Id
+        /// </summary>
+        public string Id = string.Empty;
+        /// <summary>
+        /// 浣忓畢鍚嶇О
+        /// </summary>
+        public string Name = string.Empty;
+        /// <summary>
+        /// 鏄惁涓哄叾浠栦富鐢ㄦ埛鍒嗕韩杩囨潵鐨勪綇瀹�
+        /// </summary>
+        public bool IsOthreShare;
+        /// <summary>
+        /// 褰撳墠浣忓畢鏄叾浠栦富甯愬彿鍒嗕韩杩囨潵鐨勪富甯愬彿鐨勫垎甯冨紡Id
+        /// </summary>
+        public string MainUserDistributedMark;
+        /// <summary>
+        /// 璇ヤ綇瀹呮槸鍚︽槸铏氭嫙鐨�,true鐨勮瘽浠h〃缃戝叧鍜岃澶囬兘鏄櫄鎷熺殑(榛樿涓篺alse)
+        /// </summary>
+        public bool IsVirtually = false;
+        /// <summary>
+        /// 浠呭瓙璐﹀彿鐧婚檰鐨勬椂鍊欎娇鐢�,褰撱�怚sOthreShare銆戜负"true"锛屽苟涓斻�怉ccountType銆戜负"1"鏃讹紝璇ヨ处鍙锋嫢鏈夌鐞嗗憳鏉冮檺
+        /// </summary>
+        public int AccountType;
+        /// <summary>
+        /// 缁忓害
+        /// </summary>
+        public double Longitude = 0;
+        /// <summary>
+        /// 绾害
+        /// </summary>
+        public double Latitude = 0;
+        /// <summary>
+        /// 浣忓畢鎵�鍦ㄧ殑鍦扮悊浣嶇疆鐨勫悕绉�
+        /// </summary>
+        public string ResidenceAddressName = string.Empty;
+        /// <summary>
+        /// 妤煎眰瀛楀吀
+        /// key:FloorId
+        /// value:FloorName
+        /// </summary>
+        public Dictionary<string,string> FloorDics = new Dictionary<string,string> { };
+        /// <summary>
+        /// -1:鏈厤缃�(闇�瑕侀噸鏂伴�夋嫨) 1:鏃犳ā鏉挎湁璁惧  2:鏈夋ā鏉挎湁璁惧  3:鏃犳ā鏉挎棤璁惧(璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        public int TemplateMode = -1;
+        /// <summary>
+        /// 璇ヤ綇瀹呮槸鍚︽槸灞曠ず妯℃澘(姝ゅ彉閲忔槸缁欐煡鐪嬫ā鏉挎暟鎹椂浣跨敤鐨�,璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public bool IsShowTemplate = false;
+        /// <summary>
+        /// 褰撳墠浣忓畢閫夋嫨鐨勬ā鏉垮悕瀛�(璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        public string SelectTemplate = string.Empty;
+        /// <summary>
+        /// 鑷畾涔夊崟鍏冪殑鏍囬鍚嶇О(涓嶭istUintContent涓暟鍖归厤,璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        public List<string> ListUintName = new List<string>();
+        /// <summary>
+        /// 鑷畾涔夊崟鍏冪殑鍐呭(涓嶭istUintName涓暟鍖归厤,璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        public List<string> ListUintContent = new List<string>();
+        /// <summary>
+        /// 鏈�鍚庣紪杈戠殑浜嬩欢(2020.05.26杩藉姞) 1970/12/31 23:59鏍煎紡
+        /// </summary>
+        public string LastEditorTime = "1970/12/31 23:59";
+        /// <summary>
+        /// 鏍囪瘑姝や綇瀹呯殑鏁版嵁鏄惁宸茬粡鍙戦�佽繃妯℃澘鏁版嵁缁欑綉鍏�(鍙拡瀵筎emplateMode=2,璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        public bool SendTemplateSuccess = false;
+        /// <summary>
+        /// 杩欎釜浣忓畢涓嬫墍鎷ユ湁鐨勭綉鍏砳d(2020.05.26杩藉姞,null浠h〃娌℃湁澶勭悊杩�,璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public List<string> listGatewayId = null;
+        /// <summary>
+        /// <para>鏍囪瘑浣忓畢鏁版嵁鐨勫尯鍒�(鏂囦欢璇诲彇鏃堕厤缃�,璇锋棤瑙嗚繖涓彉閲�)锛�</para>
+        /// <para>1:鏈韩鑷繁鐨勬暟鎹�(鏂囦欢澶瑰悕瀛椾负浣忓畢id)</para>
+        /// <para>2:鑷繁鎵嬪姩鍒涘缓鐨勪繚瀛樺湪鏈満鐨勫浠�(鏂囦欢澶瑰悕瀛椾互銆怋ackupResidenceData銆戝紑澶�)</para>
+        /// <para>3:姝ゆ暟鎹粠浜戠涓嬭浇鑰屾潵(鏂囦欢澶瑰悕瀛椾互銆怐ownLoadResidenceData銆戝紑澶�)</para>
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public int HouseDataDiv = 1;
+        /// <summary>
+        /// 褰撳墠浣忓畢鐨勫湪绾跨姸鎬� -1:铏氭嫙 0:绂荤嚎 1:鏈湴 2:杩滅▼ 3:璇诲彇涓�(璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public string NowHomeOnlineStatu = "3";
+        /// <summary>
+        /// 褰撳墠瀛樻斁浣忓畢鏁版嵁鐨勬枃浠跺す鍚嶅瓧(姝ゅ彉閲忔槸缁欐湰鏈哄浠�,鎴栬�呬簯绔笅杞藉浠戒娇鐢ㄧ殑,璇锋棤瑙嗚繖涓彉閲�)
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public string SaveDirctoryName = string.Empty;
+
+        #endregion
+
+        #region 鈼� 妤煎眰____________________________
+
+        /// <summary>
+        /// GetCurrentFloorName
+        /// </summary>
+        /// <returns></returns>
+        [Newtonsoft.Json.JsonIgnore]
+        public string GetCurrentFloorName
+        {
+            get
+            {
+                return HdlResidenceLogic.Current.GetFloorNameById(CurrentFloorId);
+            }
+        }
+        /// <summary>
+        /// 褰撳墠妤煎眰id
+        /// </summary>
+        private string m_CurrentFloorId = string.Empty;
+        /// <summary>
+        /// 褰撳墠妤煎眰Id
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public string CurrentFloorId
+        {
+            //鏉ュ洖鍒囨崲澶囦唤,浼氬嚭鐜伴棶棰�,妤煎眰id娌℃竻闄�
+            get
+            {
+                //娌℃湁妤煎眰
+                if (this.FloorDics.Count == 0) { return string.Empty; }
+
+                if (this.FloorDics.ContainsKey(m_CurrentFloorId) == true)
+                {
+                    //褰撳墠鐨勬ゼ灞俰d娌¢棶棰�
+                    return m_CurrentFloorId;
+                }
+                //濡傛灉褰撳墠璁剧疆鐨勬ゼ灞俰d骞朵笉瀛樺湪鐨勮瘽,閲嶆柊璁剧疆
+                m_CurrentFloorId = string.Empty;
+                var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
+                foreach (var floorId in dicFloor.Keys)
+                {
+                    //缁欎竴涓繃鍘诲嵆鍙�
+                    m_CurrentFloorId = floorId;
+                    break;
+                }
+                return m_CurrentFloorId;
+            }
+            set { m_CurrentFloorId = value; }
+        }
+
+        #endregion
+
+        #region 鈼� 淇濆瓨____________________________
+
+        /// <summary>
+        /// 淇濆瓨
+        /// </summary>
+        /// <param name="autoBackup">鏄惁澶囦唤</param>
+        public void Save(bool autoBackup = true)
+        {
+            //濡傛灉褰撳墠鏄睍绀烘ā鏉�,鍒欎笉鍏佽淇濆瓨
+            if (this.IsShowTemplate == true)
+            {
+                return;
+            }
+            //淇敼鏃堕棿
+            this.LastEditorTime = DateTime.Now.ToString("yyyy/MM/dd HH:mm");
+            var path = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Config.Instance.Guid, Id);
+            //濡傛灉娌℃湁瀛樺湪浣忓畢鐩綍锛屽厛鍒涘缓
+            if (!System.IO.Directory.Exists(path))
+            {
+                System.IO.Directory.CreateDirectory(path);
+            }
+            path = System.IO.Path.Combine(path, FileName);
+            HdlFileLogic.Current.SaveFileContent(path, this);
+
+            if (autoBackup == true && Id == Config.Instance.HomeId)
+            {
+                HdlAutoBackupLogic.AddOrEditorFile(FileName);
+            }
+        }
+        #endregion
+    }
+}

--
Gitblit v1.8.0