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/Phone/Device/CommonForm/SceneCategoryView.cs | 121 ++++++--------------------------------- 1 files changed, 20 insertions(+), 101 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneCategoryView.cs b/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneCategoryView.cs index 15640bb..c3e90fa 100755 --- a/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneCategoryView.cs +++ b/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneCategoryView.cs @@ -1,7 +1,6 @@ 锘縰sing System; using System.Collections.Generic; using Shared.Common; -using Shared.Phone.Device.Category; using Shared.Phone.UserCenter; namespace Shared.Phone.Device.CommonForm @@ -170,6 +169,14 @@ alert.Show(); alert.ConfirmClickEvent += async () => { + //濡傛灉褰撳墠浣忓畢鏄櫄鎷熶綇瀹� + if (Common.Config.Instance.Home.IsVirtually == true) + { + //绉婚櫎缂撳瓨 + HdlSceneLogic.Current.RemoveScene(scene); + RemoveFromParent(); + return; + } //0 绉婚櫎澶辫触 1 绉婚櫎鎴愬姛 2 娌℃湁璇ュ満鏅� var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id); if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null) @@ -181,7 +188,6 @@ if (removeSceneAllData.removeSceneData.Result == 1) { HdlSceneLogic.Current.RemoveScene(scene); - //RefreshBodyView(); RemoveFromParent(); } //0 绉婚櫎澶辫触 @@ -194,119 +200,32 @@ else if (removeSceneAllData.removeSceneData.Result == 2) { HdlSceneLogic.Current.RemoveScene(scene); - //RefreshBodyView(); RemoveFromParent(); - CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneIsNull)); return; } }; }; //缂栬緫鍦烘櫙 - btnEditor.ButtonClickEvent += async (sender, e) => + btnEditor.ButtonClickEvent += (sender, e) => { - try + //鍏抽棴宸︽粦鑿滃崟 + this.HideMenu(); + //缂栬緫鍦烘櫙 + var form = new Phone.Category.AddOrEditorSceneForm(); + form.AddForm(i_scene); + form.SceneChangedEvent = (myScene, roomId) => { - //鍏抽棴宸︽粦鑿滃崟 - this.HideMenu(); - var targetList = new List<SceneTargetDeviceUI> { }; - CommonPage.Loading.Start(); - //浠庣綉鍏充腑鍙嶅簭鍒楀寲鍑哄搴旂殑鎴块棿璁惧 - var sceneDeviceList = await ZigBee.Device.Scene.GetSceneDeviceListAsync(scene.Id); - if (sceneDeviceList == null) + if (roomId != room.Id) { - CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheMainGatewayIsNotOnLine)); - return; - } - - if (sceneDeviceList.getSceneDeviceListInfo != null) - { - var deviceList = sceneDeviceList.getSceneDeviceListInfo.DeviceList; - var allDevice = HdlRoomLogic.Current.GetAllRoomListDevice(); - var allScene = HdlSceneLogic.Current.GetAllRoomSceneList(); - - if (deviceList != null && allDevice.Count != 0) - { - foreach (var sceneDev in deviceList) - { - if (sceneDev.Type == 0) - { - var dev = allDevice.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 = allScene.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); - } - } - } + //瀹冨彉鏇翠簡鎴块棿 + this.RemoveFromParent(); } else { - CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.FailedPleaseTryAgain)); + this.InitControl(myScene, room); } - - var sceneView = new CategoryAddScene(); - Phone.UserView.HomePage.Instance.AddChidren(sceneView); - Phone.UserView.HomePage.Instance.PageIndex += 1; - sceneView.isModify = true; - sceneView.modifyRoom = room; - sceneView.modifySceneUI = scene; - sceneView.modifySceneTargetDevicesList = targetList; - sceneView.Show(); - sceneView.EditorAction = (s, r) => - { - if (r.Id != room.Id) - { - RemoveFromParent(); - } - else - { - this.InitControl(s, r); - } - }; - } - catch (Exception ex) - { - System.Console.WriteLine($"缂栬緫鍦烘櫙鍑洪敊---{ex.Message}"); - } - finally - { - CommonPage.Loading.Hide(); - } + }; }; //缂栬緫寤舵椂 btnDelay.ButtonClickEvent += (sender, e) => -- Gitblit v1.8.0