From 48ba446936b51fffafa7c3600c0dadc6ac0e8c20 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期五, 10 七月 2020 10:52:13 +0800 Subject: [PATCH] 2020-07-10-01 --- ZigbeeApp/Shared/Common/SceneUI.cs | 198 ++++--------------------------------------------- 1 files changed, 16 insertions(+), 182 deletions(-) diff --git a/ZigbeeApp/Shared/Common/SceneUI.cs b/ZigbeeApp/Shared/Common/SceneUI.cs index 289d506..556a4e7 100755 --- a/ZigbeeApp/Shared/Common/SceneUI.cs +++ b/ZigbeeApp/Shared/Common/SceneUI.cs @@ -1,6 +1,5 @@ 锘縰sing System; using System.Collections.Generic; -using Shared.Phone.Device.Category; using Shared.Phone.UserCenter; namespace Shared.Common @@ -9,9 +8,9 @@ /// 鍦烘櫙 /// </summary> [System.Serializable] - public class SceneUI : ZigBee.Device.CommonDevice - { - #region 鈼� 鍙橀噺____________________________ + public class SceneUI + { + #region 鈻� 鍙橀噺澹版槑_________________________ /// <summary> /// 鍦烘櫙鏂囦欢 /// </summary> @@ -28,12 +27,10 @@ /// 鍦烘櫙id /// </summary> public int Id = -1; - /// <summary> /// 鍦烘櫙鍚� /// </summary> public string Name = string.Empty; - /// <summary> /// 鍥剧墖璺緞 /// </summary> @@ -42,201 +39,39 @@ /// 鍥剧墖鏉ユ簮 0--鏈湴鍥惧簱 1--鎷嶇収 2--绯荤粺鍥惧簱 /// </summary> public int IconPathType = 0; - - /// <summary> - /// 鍔熻兘璺緞鍒楄〃---澶囩敤 - /// </summary> - public List<string> FunctionFilePathList = new List<string> { }; - - /// <summary> - /// 閫氱敤鏍囪瘑--澶囩敤 - /// </summary> - public object Tag; - /// <summary> /// 寤舵椂鎵ц鏃堕棿--璁惧寤舵椂 /// </summary> public int DelayTime = 0; - /// <summary> /// 鏍囪瘑褰撳墠鍦烘櫙鏄惁鏄垎浜殑鍦烘櫙 /// </summary> public bool IsSharedScene = false; - ///// <summary> - ///// 鏄惁鏀惰棌 - ///// </summary> - //public bool IsCollected = false; - /// <summary> /// 寤舵椂鎵ц鏃堕棿--鏁翠釜鍦烘櫙寤舵椂(涓嶆槸寤舵椂鍦烘櫙閲岄潰鐨勬墽琛岀洰鏍�) /// 涓嶅簭鍒楀寲锛岄噸鏂版墦寮�APP缃�傚嵆鍙鏈缂栬緫鍦烘櫙寤舵椂鎵ц鏈夋晥 /// </summary> [Newtonsoft.Json.JsonIgnore] - public int SceneDelayTime = 0; - + public int SceneDelayTime = 0; /// <summary> /// 鍓╀綑瑙﹀彂鏃堕棿锛屽崟浣嶇 /// </summary> [Newtonsoft.Json.JsonIgnore] - public int RemainTime; - + public int RemainTime; + /// <summary> + /// 寤舵椂鏃堕棿绾跨▼鏄惁杩愯 + /// </summary> + [Newtonsoft.Json.JsonIgnore] + public bool RemainThreadAction = false; /// <summary> /// 鍦烘櫙鎵ц鐩爣 /// </summary> - public List<ZigBee.Device.Scene.AddSceneMemberData> AddSceneMemberDataList = new List<ZigBee.Device.Scene.AddSceneMemberData> { }; - ///// <summary> - ///// RoomId - ///// </summary> - //public string RoomId = string.Empty; + public List<ZigBee.Device.Scene.DeviceListData> AdjustTargetList = new List<ZigBee.Device.Scene.DeviceListData>(); #endregion - - #region 鈼� 閫氳繃鍦烘櫙id鑾峰彇鍦烘櫙璺緞_____________ - /// <summary> - /// GetSceneFilePathBySceneId - /// </summary> - /// <param name="sceneId"></param> - /// <returns></returns> - public static string GetSceneFilePathBySceneId(int sceneId) - { - return $"Scene_{sceneId}.json"; - } - - #endregion - - #region 鈼� 閫氳繃id鑾峰彇鍦烘櫙鍖哄煙_________________ - - /// <summary> - /// GetZone - /// </summary> - /// <returns></returns> - public string GetZone() - { - var room = Room.CurrentRoom.GetRoomBySceneId(Id); - if(room==null) - { - return null; - } - var floorName = Shared.Common.Config.Instance.Home.GetFloorNameById(room.FloorId); - if (floorName == null) - { - return room.Name; - } - return $"{floorName},{room.Name}"; - } - - #endregion - - #region 鈼� 缂栬緫鍦烘櫙_________________________ - /// <summary> - /// 缂栬緫鍦烘櫙 - /// </summary> - /// <param name="sceneUI">sceneUI</param> - /// <param name="room">Room.</param> - public static void EditScene(SceneUI sceneUI, Room room) - { - Application.RunOnMainThread(async () => - { - try - { - var targetList = new List<SceneTargetDeviceUI> { }; - CommonPage.Loading.Start(); - //浠庣綉鍏充腑鍙嶅簭鍒楀寲鍑哄搴旂殑鎴块棿璁惧 - var sceneDeviceList = await ZigBee.Device.Scene.GetSceneDeviceListAsync(sceneUI.Id); - if (sceneDeviceList == null) - { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheMainGatewayIsNotOnLine); - return; - } - - if (Shared.Common.Room.AllRoomDeviceUIList.Count == 0) - { - - if (Shared.Common.Room.AllRoomDeviceUIList.Count == 0) - { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.ThisSceneHaveNoDevice); - } - //return; - } - if (sceneDeviceList.getSceneDeviceListInfo != null) - { - var deviceList = sceneDeviceList.getSceneDeviceListInfo.DeviceList; - - if (deviceList != null && Room.AllRoomDeviceUIList.Count != 0) - { - foreach (var sceneDev in deviceList) - { - if (sceneDev.Type == 0) - { - var dev = Room.AllRoomDeviceUIList.Find((obj) => obj.DeviceEpoint == sceneDev.Epoint && obj.DeviceAddr == sceneDev.DeviceAddr); - if(dev!=null) - { - var sceneTargetDevice = new SceneTargetDeviceUI { - Type = 0, - DeviceUI = dev, - TaskList = sceneDev.TaskList, - DelayTimeSerialNumber= deviceList.IndexOf(sceneDev) + 1 - }; - - targetList.Add(sceneTargetDevice); - } - } - else if (sceneDev.Type == 1) - { - var localScene = Room.AllRoomSceneUIList.Find((obj) => obj.Id == sceneDev.ElseScenesId); - if (localScene != null) - { - var sceneTargetDeviceScene = new SceneTargetDeviceUI { - Type = 1, - ElseScenesId = sceneDev.ElseScenesId, - SceneName = localScene.Name, - SceneUI = localScene, - DelayTimeSerialNumber = deviceList.IndexOf(sceneDev) + 1 - }; - targetList.Add(sceneTargetDeviceScene); - } - } - else - { - var sceneTargetDeviceScene = new SceneTargetDeviceUI - { - Type = 2, - DelayTime = sceneDev.DelayTime, - DelayTimeSerialNumber = deviceList.IndexOf(sceneDev)+1 - }; - targetList.Add(sceneTargetDeviceScene); - } - } - } - } - else - { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); - } - var scene = new CategoryAddScene(); - Phone.UserView.HomePage.Instance.AddChidren(scene); - Phone.UserView.HomePage.Instance.PageIndex += 1; - scene.isModify = true; - scene.modifyRoom = room; - scene.modifySceneUI = sceneUI; - scene.modifySceneTargetDevicesList = targetList; - scene.Show(); - } - catch (Exception ex) - { - System.Console.WriteLine($"缂栬緫鍦烘櫙鍑洪敊---{ex.Message}"); - } - finally - { - CommonPage.Loading.Hide(); - } - }); - } - - #endregion - - #region 鈼� 淇濆瓨____________________________ - + + #region 鈻� 淇濆瓨_____________________________ + /// <summary> /// 淇濆瓨 /// </summary> @@ -248,9 +83,8 @@ { HdlAutoBackupLogic.AddOrEditorFile(FileName); } - } - + } + #endregion - } } -- Gitblit v1.8.0