From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 17 十二月 2020 09:07:13 +0800 Subject: [PATCH] 新云端Ver1.3 --- ZigbeeApp/Shared/Common/House.cs | 163 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 99 insertions(+), 64 deletions(-) diff --git a/ZigbeeApp/Shared/Common/House.cs b/ZigbeeApp/Shared/Common/House.cs index d368109..b6846bc 100755 --- a/ZigbeeApp/Shared/Common/House.cs +++ b/ZigbeeApp/Shared/Common/House.cs @@ -1,5 +1,6 @@ 锘縰sing System; using System.Collections.Generic; +using Shared.Phone; using Shared.Phone.UserCenter; namespace Shared.Common @@ -34,11 +35,7 @@ /// <summary> /// 鏄惁涓哄叾浠栦富鐢ㄦ埛鍒嗕韩杩囨潵鐨勪綇瀹� /// </summary> - public bool IsOthreShare; - /// <summary> - /// 褰撳墠浣忓畢鏄叾浠栦富甯愬彿鍒嗕韩杩囨潵鐨勪富甯愬彿鐨勫垎甯冨紡Id - /// </summary> - public string MainUserDistributedMark; + public bool IsOtherShare; /// <summary> /// 璇ヤ綇瀹呮槸鍚︽槸铏氭嫙鐨�,true鐨勮瘽浠h〃缃戝叧鍜岃澶囬兘鏄櫄鎷熺殑(榛樿涓篺alse) /// </summary> @@ -54,15 +51,15 @@ /// <summary> /// 绾害 /// </summary> - public double Latitude = 0; + public double Latitude = 0; + /// <summary> + /// 鏄惁鎷ユ湁杩滅▼鎺у埗鏉冮檺 + /// </summary> + public bool IsRemoteControl = false; /// <summary> /// 浣忓畢鎵�鍦ㄧ殑鍦扮悊浣嶇疆鐨勫悕绉� /// </summary> public string ResidenceAddressName = string.Empty; - /// <summary> - /// 鎴块棿鍒楄〃(鎴块棿鐨処D) - /// </summary> - public List<string> ListRooms = new List<string>(); /// <summary> /// 妤煎眰瀛楀吀 /// key:FloorId @@ -70,9 +67,57 @@ /// </summary> public Dictionary<string,string> FloorDics = new Dictionary<string,string> { }; /// <summary> - /// 褰撳墠妤煎眰Id + /// -1:鏈厤缃�(闇�瑕侀噸鏂伴�夋嫨) 1:鏃犳ā鏉挎湁璁惧 2:鏈夋ā鏉挎湁璁惧 3:鏃犳ā鏉挎棤璁惧(璇锋棤瑙嗚繖涓彉閲�) /// </summary> - public string CurrentFloorId = string.Empty; + 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 @@ -86,61 +131,43 @@ public string GetCurrentFloorName { get - { + { return HdlResidenceLogic.Current.GetFloorNameById(CurrentFloorId); } - } - + } + /// <summary> + /// 褰撳墠妤煎眰id + /// </summary> + private string m_CurrentFloorId = string.Empty; /// <summary> - /// 璁剧疆褰撳墠妤煎眰鐨処D + /// 褰撳墠妤煎眰Id /// </summary> - public void SetCurrentFloorId() - { - if (Config.Instance.Home.FloorDics.Count > 0 && string.IsNullOrEmpty(CurrentFloorId)) - { - foreach (var floor in Config.Instance.Home.FloorDics) - { - CurrentFloorId = floor.Key; - Save(false); - return; - } - } - } - - #endregion - - #region 鈼� 娣诲姞鎴块棿璺緞_________________________ - - /// <summary> - /// 娣诲姞鎴块棿ID - /// </summary> - /// <returns><c>true</c>, if room list file path was added, <c>false</c> otherwise.</returns> - /// <param name="roomFilePath">Room file path.</param> - public void AddRoomId(string roomId) - { - if (ListRooms.Contains(roomId) == false) + [Newtonsoft.Json.JsonIgnore] + public string CurrentFloorId + { + //鏉ュ洖鍒囨崲澶囦唤,浼氬嚭鐜伴棶棰�,妤煎眰id娌℃竻闄� + get { - ListRooms.Add(roomId); - this.Save(); - } - } - - #endregion - - #region 鈼� 鍒犻櫎鎴块棿璺緞_________________________ - - /// <summary> - /// 绉婚櫎鎴块棿Id - /// </summary> - /// <returns><c>true</c>, if room list file path was added, <c>false</c> otherwise.</returns> - /// <param name="roomFilePath">Room file path.</param> - public void RemoveRoomId(string roomId) - { - if (ListRooms.Contains(roomId)==true) - { - ListRooms.Remove(roomId); - Save(); - } + //娌℃湁妤煎眰 + 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 @@ -153,6 +180,13 @@ /// <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)) @@ -160,10 +194,11 @@ System.IO.Directory.CreateDirectory(path); } path = System.IO.Path.Combine(path, FileName); - Shared.IO.FileUtils.WriteFileByBytes(path, System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this))); + HdlFileLogic.Current.SaveFileContent(path, this); + if (autoBackup == true && Id == Config.Instance.HomeId) { - HdlAutoBackupLogic.AddOrEditorFile(FileName); + HdlBackupLogic.Current.AddOrEditorAutoBackFileStatu(FileName); } } #endregion -- Gitblit v1.8.0