From 94e4e5b9fd3da964c44b7b14227d6fe2bbb426d7 Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 02 四月 2020 13:56:39 +0800 Subject: [PATCH] 2020-04-02-2 --- ZigbeeApp/Shared/Phone/Device/Category/Category.cs | 546 ++++++++++++++++++++++++++---------------------------- 1 files changed, 263 insertions(+), 283 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Category/Category.cs b/ZigbeeApp/Shared/Phone/Device/Category/Category.cs old mode 100755 new mode 100644 index 75e410e..e87c0be --- a/ZigbeeApp/Shared/Phone/Device/Category/Category.cs +++ b/ZigbeeApp/Shared/Phone/Device/Category/Category.cs @@ -107,7 +107,7 @@ /// <summary> /// 鐩稿悓绫诲瀷鐨勮澶囧垪琛� /// </summary> - private Dictionary<int, List<DeviceUI>> typeDeviceDic; + private Dictionary<int, List<CommonDevice>> typeDeviceDic; /// <summary> /// 璁惧绫诲瀷鐨勫浘id /// </summary> @@ -115,7 +115,7 @@ /// <summary> /// dList /// </summary> - private List<DeviceUI> devList; + private List<CommonDevice> devList; /// <summary> /// sceneList /// </summary> @@ -123,30 +123,7 @@ #endregion #region 鈼� 鎺ュ彛____________________________ - /// <summary> - /// 璇ユ帴鍙e皢寮冪敤 鏀圭敤DeviceInfoChange() - /// </summary> - /// <param name="common">Common.</param> - public void Changed(CommonDevice common) - { - - } - /// <summary> - /// Changeds the IL ogic status. - /// </summary> - /// <param name="logic">Logic.</param> - public void ChangedILogicStatus(ZigBee.Device.Logic logic) - { - - } - /// <summary> - /// Changeds the IS cene status. - /// </summary> - /// <param name="scene">Scene.</param> - public void ChangedISceneStatus(Scene scene) - { - - } + /// <summary> /// 璁惧鐘舵�佹洿鏂版帴鍙� /// <para>type锛氬鏋滀负 DeviceInComingRespon:璁惧鏂颁笂鎶�</para> @@ -173,33 +150,33 @@ for (int i = 0; deviceListScrolView != null && i < deviceListScrolView.ChildrenCount; i++) { var rowLayout = deviceListScrolView.GetChildren(i) as RowLayout; - var deviceUI = rowLayout.Tag as DeviceUI; - if (deviceUI == null || deviceUI.CommonDevice == null) + var deviceUI = LocalDevice.Current.GetDevice(rowLayout.Tag.ToString()); + if (deviceUI == null) { continue; } - if (deviceUI.CommonDevice.DeviceAddr != common.DeviceAddr || deviceUI.CommonDevice.DeviceEpoint != common.DeviceEpoint) + if (deviceUI.DeviceAddr != common.DeviceAddr || deviceUI.DeviceEpoint != common.DeviceEpoint) { continue; } - switch (deviceUI.CommonDevice.Type) + switch (deviceUI.Type) { case DeviceType.OnOffOutput: //寮�鍏冲姛鑳� if (common.DeviceStatusReport.CluterID == 6) { - var light = deviceUI.CommonDevice as ToggleLight; + var light = deviceUI as ToggleLight; light.DeviceStatusReport = common.DeviceStatusReport; light.OnOffStatus = light.DeviceStatusReport.AttriBute[0].AttriButeData; var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = light.OnOffStatus == 1; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); light.LastDateTime = DateTime.Now; } if (common.DeviceStatusReport.CluterID == 3) { - deviceUI.CommonDevice.IsOnline = 1; - deviceUI.CommonDevice.LastDateTime = DateTime.Now; + deviceUI.IsOnline = 1; + deviceUI.LastDateTime = DateTime.Now; } break; @@ -207,18 +184,18 @@ //寮�鍏冲姛鑳� if (common.DeviceStatusReport.CluterID == 6) { - var airSwitch = deviceUI.CommonDevice as ZigBee.Device.AirSwitch; + var airSwitch = deviceUI as ZigBee.Device.AirSwitch; airSwitch.DeviceStatusReport = common.DeviceStatusReport; airSwitch.OnOffStatus = airSwitch.DeviceStatusReport.AttriBute[0].AttriButeData; var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = airSwitch.OnOffStatus == 1; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); airSwitch.LastDateTime = DateTime.Now; } if (common.DeviceStatusReport.CluterID == 3) { - deviceUI.CommonDevice.IsOnline = 1; - deviceUI.CommonDevice.LastDateTime = DateTime.Now; + deviceUI.IsOnline = 1; + deviceUI.LastDateTime = DateTime.Now; } break; case DeviceType.WindowCoveringDevice: @@ -228,7 +205,7 @@ if (common.DeviceStatusReport.AttriBute[0].AttributeId == 0) { //绐楀笜绫诲瀷 - var rollerShade = deviceUI.CommonDevice as Rollershade; + var rollerShade = deviceUI as Rollershade; rollerShade.DeviceStatusReport = common.DeviceStatusReport; rollerShade.WcdType = common.DeviceStatusReport.AttriBute[0].AttriButeData; rollerShade.LastDateTime = DateTime.Now; @@ -237,18 +214,18 @@ { var row = rowLayout.GetChildren(0) as CategoryFunctionForWinRow; //绐楀笜鐧惧垎姣� - var rollerShade = deviceUI.CommonDevice as Rollershade; + var rollerShade = deviceUI as Rollershade; rollerShade.DeviceStatusReport = common.DeviceStatusReport; rollerShade.WcdCurrentPositionLiftPercentage = common.DeviceStatusReport.AttriBute[0].AttriButeData; - row.SetStatuText($"{Language.StringByID(R.MyInternationalizationString.Current)} { deviceUI.GetDeviceStatu()}"); + row.SetStatuText($"{Language.StringByID(R.MyInternationalizationString.Current)} { HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)}"); row.IsSelected = rollerShade.WcdCurrentPositionLiftPercentage != 0; rollerShade.LastDateTime = DateTime.Now; } } if (common.DeviceStatusReport.CluterID == 3) { - deviceUI.CommonDevice.IsOnline = 1; - deviceUI.CommonDevice.LastDateTime = DateTime.Now; + deviceUI.IsOnline = 1; + deviceUI.LastDateTime = DateTime.Now; } break; @@ -257,7 +234,7 @@ if (common.DeviceStatusReport.CluterID == 513) { var attriButeList = common.DeviceStatusReport.AttriBute; - var ac = deviceUI.CommonDevice as ZigBee.Device.AC; + var ac = deviceUI as ZigBee.Device.AC; ac.DeviceStatusReport = common.DeviceStatusReport; foreach (var attList in attriButeList) { @@ -292,12 +269,12 @@ } var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = ac.currentSystemMode != 0; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); } if (common.DeviceStatusReport.CluterID == 514) { - var ac = deviceUI.CommonDevice as ZigBee.Device.AC; + var ac = deviceUI as ZigBee.Device.AC; var attriButeList = common.DeviceStatusReport.AttriBute; ac.DeviceStatusReport = common.DeviceStatusReport; foreach (var attList in attriButeList) @@ -316,12 +293,12 @@ } var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = ac.currentSystemMode != 0; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); } if (common.DeviceStatusReport.CluterID == 3) { - var ac = deviceUI.CommonDevice as ZigBee.Device.AC; + var ac = deviceUI as ZigBee.Device.AC; ac.IsOnline = 1; ac.LastDateTime = DateTime.Now; } @@ -330,28 +307,28 @@ //璋冨厜鐏姛鑳� if (common.DeviceStatusReport.CluterID == 6) { - var dimmableLight = deviceUI.CommonDevice as DimmableLight; + var dimmableLight = deviceUI as DimmableLight; dimmableLight.DeviceStatusReport = common.DeviceStatusReport; dimmableLight.OnOffStatus = dimmableLight.DeviceStatusReport.AttriBute[0].AttriButeData; var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = dimmableLight.OnOffStatus == 1; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); dimmableLight.LastDateTime = DateTime.Now; } if (common.DeviceStatusReport.CluterID == 8) { - var dimmableLight = deviceUI.CommonDevice as DimmableLight; + var dimmableLight = deviceUI as DimmableLight; dimmableLight.DeviceStatusReport = common.DeviceStatusReport; dimmableLight.Level = dimmableLight.DeviceStatusReport.AttriBute[0].AttriButeData; var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = dimmableLight.OnOffStatus == 1; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); dimmableLight.LastDateTime = DateTime.Now; } if (common.DeviceStatusReport.CluterID == 3) { - deviceUI.CommonDevice.IsOnline = 1; - deviceUI.CommonDevice.LastDateTime = DateTime.Now; + deviceUI.IsOnline = 1; + deviceUI.LastDateTime = DateTime.Now; } break; @@ -359,7 +336,7 @@ //娓╁害 if (common.DeviceStatusReport.CluterID == 1026) { - var tempera = deviceUI.CommonDevice as TemperatureSensor; + var tempera = deviceUI as TemperatureSensor; foreach (var data in common.DeviceStatusReport.AttriBute) { if (data.AttributeId == (int)ZigBee.Device.AttriButeId.MeasuredValue) @@ -384,14 +361,14 @@ tempera.Temperatrue = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, ".")); } var row = rowLayout.GetChildren(0) as CategoryFunctionRow; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); } } } //婀垮害 if (common.DeviceStatusReport.CluterID == 1029) { - var tempera = deviceUI.CommonDevice as TemperatureSensor; + var tempera = deviceUI as TemperatureSensor; foreach (var data in common.DeviceStatusReport.AttriBute) { if (data.AttributeId == (int)ZigBee.Device.AttriButeId.MeasuredValue) @@ -409,7 +386,7 @@ tempera.LastDateTime = DateTime.Now; } var row = rowLayout.GetChildren(0) as CategoryFunctionRow; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); } } } @@ -432,40 +409,40 @@ for (int i = 0; deviceListScrolView != null && i < deviceListScrolView.ChildrenCount; i++) { var rowLayout = deviceListScrolView.GetChildren(i) as RowLayout; - var deviceUI = rowLayout.Tag as DeviceUI; - if (deviceUI == null || deviceUI.CommonDevice == null) + var deviceUI = LocalDevice.Current.GetDevice(rowLayout.Tag.ToString()); + if (deviceUI == null) { continue; } - if (deviceUI.CommonDevice.DeviceAddr != common.DeviceAddr || deviceUI.CommonDevice.DeviceEpoint != common.DeviceEpoint) + if (deviceUI.DeviceAddr != common.DeviceAddr || deviceUI.DeviceEpoint != common.DeviceEpoint) { continue; } - switch (deviceUI.CommonDevice.Type) + switch (deviceUI.Type) { case DeviceType.OnOffOutput: - deviceUI.CommonDevice.IsOnline = common.IsOnline; - deviceUI.CommonDevice.LastDateTime = DateTime.Now; + deviceUI.IsOnline = common.IsOnline; + deviceUI.LastDateTime = DateTime.Now; break; case DeviceType.AirSwitch: - deviceUI.CommonDevice.IsOnline = common.IsOnline; - deviceUI.CommonDevice.LastDateTime = DateTime.Now; + deviceUI.IsOnline = common.IsOnline; + deviceUI.LastDateTime = DateTime.Now; break; case DeviceType.WindowCoveringDevice: - deviceUI.CommonDevice.LastDateTime = DateTime.Now; - deviceUI.CommonDevice.IsOnline = common.IsOnline; + deviceUI.LastDateTime = DateTime.Now; + deviceUI.IsOnline = common.IsOnline; break; case DeviceType.DimmableLight: - deviceUI.CommonDevice.LastDateTime = DateTime.Now; - deviceUI.CommonDevice.IsOnline = common.IsOnline; + deviceUI.LastDateTime = DateTime.Now; + deviceUI.IsOnline = common.IsOnline; break; case DeviceType.Thermostat: - deviceUI.CommonDevice.LastDateTime = DateTime.Now; - deviceUI.CommonDevice.IsOnline = common.IsOnline; + deviceUI.LastDateTime = DateTime.Now; + deviceUI.IsOnline = common.IsOnline; break; } } @@ -485,25 +462,25 @@ for (int i = 0; deviceListScrolView != null && i < deviceListScrolView.ChildrenCount; i++) { var rowLayout = deviceListScrolView.GetChildren(i) as RowLayout; - var deviceUI = rowLayout.Tag as DeviceUI; - if (deviceUI == null || deviceUI.CommonDevice == null) + var deviceUI = LocalDevice.Current.GetDevice(rowLayout.Tag.ToString()); + if (deviceUI == null) { continue; } - if (deviceUI.CommonDevice.DeviceAddr != common.DeviceAddr || deviceUI.CommonDevice.DeviceEpoint != common.DeviceEpoint) + if (deviceUI.DeviceAddr != common.DeviceAddr || deviceUI.DeviceEpoint != common.DeviceEpoint) { continue; } - switch (deviceUI.CommonDevice.Type) + switch (deviceUI.Type) { case DeviceType.IASZone: //寮�鍏冲姛鑳� var ias = common as IASZone; - var iAS = deviceUI.CommonDevice as ZigBee.Device.IASZone; + var iAS = deviceUI as ZigBee.Device.IASZone; iAS.iASInfo = ias.iASInfo; var row = rowLayout.GetChildren(0) as CategoryFunctionRow; row.IsSelected = iAS.iASInfo?.Alarm1 == 1; - row.SetStatuText(deviceUI.GetDeviceStatu()); + row.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); iAS.LastDateTime = DateTime.Now; break; } @@ -717,7 +694,7 @@ floors.FloorAction += (floorId) => { floorBtn.Text = Config.Instance.Home.GetFloorNameById(floorId); - Common.Room.CurrentRoom = Common.Room.CurrentRoom.GetLoveRoom(); + HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom(); RefreshBodyView(); }; } @@ -812,14 +789,15 @@ /// </summary> private void Add_Automation() { - //new涓�涓柊閫昏緫瀵硅薄锛� - Common.Logic.CurrentLogic = new Common.Logic(); - Common.Logic.CurrentLogic.IsEnable = 1;//榛樿涓哄紑 - Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.automation1); - var addLogicPage = new Shared.Phone.Device.Logic.AddLogicPage(); - UserView.HomePage.Instance.AddChidren(addLogicPage); - UserView.HomePage.Instance.PageIndex += 1; - addLogicPage.Show(); + ////new涓�涓柊閫昏緫瀵硅薄锛� + //Common.Logic.CurrentLogic = new Common.Logic(); + //Common.Logic.CurrentLogic.IsEnable = 1;//榛樿涓哄紑 + //Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.automation1); + //var addLogicPage = new Shared.Phone.Device.Logic.AddLogicPage(); + //UserView.HomePage.Instance.AddChidren(addLogicPage); + //UserView.HomePage.Instance.PageIndex += 1; + //addLogicPage.Show(); + Shared.Phone.Device.Logic.SkipView.SkipAddLogic(0); } /// <summary> /// HidenFloor @@ -862,7 +840,7 @@ /// </summary> private void InitData() { - typeDeviceDic = new Dictionary<int, List<DeviceUI>> { }; + typeDeviceDic = new Dictionary<int, List<CommonDevice>> { }; typeIdDic = new Dictionary<int, DeviceConcreteType> { }; } @@ -871,20 +849,20 @@ /// </summary> private void RefreshData(Common.Room room) { - devList = room.DeviceUIList; - sceneList = room.SceneUIList; + devList = HdlRoomLogic.Current.GetRoomListDevice(room); + sceneList = HdlSceneLogic.Current.GetRoomSceneList(room); typeDeviceDic.Clear(); typeIdDic.Clear(); foreach (var device in devList) { - var info = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device.CommonDevice); + var info = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device); if (info.BeloneType == DeviceBeloneType.A骞叉帴鐐� || info.BeloneType == DeviceBeloneType.A涓户鍣�) { continue; } if (typeDeviceDic.ContainsKey(info.BeloneTextId) == false) { - var sameDevList = new List<DeviceUI> { }; + var sameDevList = new List<CommonDevice> { }; sameDevList.Add(device); typeDeviceDic[info.BeloneTextId] = sameDevList; } @@ -1038,7 +1016,7 @@ deviceListScrolView.RemoveAll(); - var sameTypeList = new List<DeviceUI> { }; + var sameTypeList = new List<CommonDevice> { }; sameTypeList = typeDeviceDic[int.Parse((typeSender as Button).Tag.ToString())]; for (int i = 0; i < sameTypeList.Count; i++) @@ -1054,15 +1032,15 @@ { Height = Application.GetRealHeight(127 + 35), LineColor = ZigbeeColor.Current.GXCClearColor, - Tag = deviceUI, - SubViewWidth=Application.GetRealWidth(184) + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI), + SubViewWidth = Application.GetRealWidth(184) }; deviceListScrolView.AddChidren(deviceTypeRowLayout); - if (deviceUI.CommonDevice.Type == DeviceType.OnOffOutput) + if (deviceUI.Type == DeviceType.OnOffOutput) { //鐏� - var light = deviceUI.CommonDevice as ToggleLight; + var light = deviceUI as ToggleLight; if (light.Gateway != null) { new System.Threading.Thread(() => @@ -1072,7 +1050,7 @@ { UserHomeView.ReadStatus(light, () => { - ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI); }); } else @@ -1080,7 +1058,7 @@ //闃叉鐭椂闂村唴澶氭璇诲彇鐘舵�� if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds) { - ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI); } } }) @@ -1088,17 +1066,17 @@ var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.IsSelected = light.OnOffStatus == 1; deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { - zbGateway = deviceUI.CommonDevice.Gateway; + zbGateway = deviceUI.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; - AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); + AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; deviceRow.IsSelected = (send2 as Button).IsSelected; if ((send2 as Button).IsSelected) @@ -1109,9 +1087,9 @@ { light.SwitchControl(0); } - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); //鎺у埗寤舵椂鍥炶皟 - DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => + HdlDeviceOtherLogic.Current.SendCommandDelayAction(deviceUI, () => { if (Parent == null) { @@ -1120,7 +1098,7 @@ RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { - DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); + HdlDeviceOtherLogic.Current.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; @@ -1129,7 +1107,7 @@ var lightControl = new Phone.Device.Light.OnOffControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; - lightControl.Show(deviceUI, Common.Room.CurrentRoom); + lightControl.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); lightControl.action += (curDev, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1141,7 +1119,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1149,19 +1127,19 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } } - else if (deviceUI.CommonDevice.Type == DeviceType.AirSwitch) + else if (deviceUI.Type == DeviceType.AirSwitch) { //绌烘皵寮�鍏� - var airSwitch = deviceUI.CommonDevice as AirSwitch; + var airSwitch = deviceUI as AirSwitch; if (airSwitch.Gateway != null) { new System.Threading.Thread(() => @@ -1171,14 +1149,14 @@ { UserHomeView.ReadStatus(airSwitch, () => { - ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI); }); } else { if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI); } } }) @@ -1186,16 +1164,16 @@ var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); deviceRow.IsSelected = airSwitch.OnOffStatus == 1; - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { - zbGateway = deviceUI.CommonDevice.Gateway; + zbGateway = deviceUI.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; - AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); + AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; deviceRow.IsSelected = (send2 as Button).IsSelected; if ((send2 as Button).IsSelected) @@ -1206,9 +1184,9 @@ { airSwitch.SwitchControl(0); } - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); //鎺у埗寤舵椂鍥炶皟 - DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => + HdlDeviceOtherLogic.Current.SendCommandDelayAction(deviceUI, () => { if (Parent == null) { @@ -1217,7 +1195,7 @@ RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { - DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); + HdlDeviceOtherLogic.Current.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; @@ -1227,7 +1205,7 @@ var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; - lightControl.Show(deviceUI, Common.Room.CurrentRoom); + lightControl.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); lightControl.action += (curDev, curRoom) => { @@ -1241,7 +1219,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1250,19 +1228,19 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } } - else if (deviceUI.CommonDevice.Type == DeviceType.DimmableLight) + else if (deviceUI.Type == DeviceType.DimmableLight) { //璋冨厜鐏� - var dimmableLight = deviceUI.CommonDevice as ZigBee.Device.DimmableLight; + var dimmableLight = deviceUI as ZigBee.Device.DimmableLight; if (dimmableLight.Gateway != null) { new System.Threading.Thread(() => @@ -1272,14 +1250,14 @@ { UserHomeView.ReadStatus(dimmableLight, () => { - ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI); }); } else { if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI); } } }) @@ -1287,17 +1265,17 @@ var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.IsSelected = dimmableLight.OnOffStatus == 1; deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { - zbGateway = deviceUI.CommonDevice.Gateway; + zbGateway = deviceUI.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; - AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); + AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; deviceRow.IsSelected = (send2 as Button).IsSelected; if ((send2 as Button).IsSelected) @@ -1308,9 +1286,9 @@ { dimmableLight.SwitchControl(0); } - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); //鎺у埗寤舵椂鍥炶皟 - DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => + HdlDeviceOtherLogic.Current.SendCommandDelayAction(deviceUI, () => { if (Parent == null) { @@ -1319,7 +1297,7 @@ RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { - DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); + HdlDeviceOtherLogic.Current.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; @@ -1330,7 +1308,7 @@ UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; - dimmableLightControl.Show(deviceUI, Common.Room.CurrentRoom); + dimmableLightControl.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); dimmableLightControl.action += (curDev, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1343,7 +1321,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1351,19 +1329,19 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } } - else if (deviceUI.CommonDevice.Type == DeviceType.Thermostat) + else if (deviceUI.Type == DeviceType.Thermostat) { //绌鸿皟 - var ac = deviceUI.CommonDevice as ZigBee.Device.AC; + var ac = deviceUI as ZigBee.Device.AC; if (ac.Gateway != null) { new System.Threading.Thread(() => @@ -1374,7 +1352,7 @@ //鍙戦�佽鍙栫姸鎬佸懡浠� UserView.UserHomeView.ReadStatus(ac, () => { - ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI); }); } else @@ -1382,7 +1360,7 @@ //闃叉鐭椂闂村唴澶氭璇诲彇璁惧鐘舵�� if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI); } } }) @@ -1390,17 +1368,17 @@ var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.IsSelected = ac.currentSystemMode != 1; deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { - zbGateway = deviceUI.CommonDevice.Gateway; + zbGateway = deviceUI.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; - AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); + AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI); (send2 as Button).IsSelected = !(send2 as Button).IsSelected; deviceRow.IsSelected = (send2 as Button).IsSelected; @@ -1412,9 +1390,9 @@ { ac.Close(); } - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); //鎺у埗寤舵椂鍥炶皟 - DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => + HdlDeviceOtherLogic.Current.SendCommandDelayAction(deviceUI, () => { if (Parent == null) { @@ -1423,7 +1401,7 @@ RemoveUpdateControlDeviceStatuAction(zbGateway); if (sendedControlCommand == false) { - DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); + HdlDeviceOtherLogic.Current.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); }; @@ -1433,7 +1411,7 @@ UserView.HomePage.Instance.AddChidren(acControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; - acControl.Show(deviceUI, Common.Room.CurrentRoom); + acControl.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); acControl.action += (curDev, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1446,7 +1424,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1455,19 +1433,19 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } } - else if (deviceUI.CommonDevice.Type == DeviceType.WindowCoveringDevice) + else if (deviceUI.Type == DeviceType.WindowCoveringDevice) { //鍗峰笜 - var rollerShade = deviceUI.CommonDevice as ZigBee.Device.Rollershade; + var rollerShade = deviceUI as ZigBee.Device.Rollershade; if (rollerShade.Gateway != null) { new System.Threading.Thread(() => @@ -1477,7 +1455,7 @@ { UserHomeView.ReadStatus(rollerShade, () => { - ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI); }); } else @@ -1485,7 +1463,7 @@ //闃叉鐭椂闂村唴澶氭璇诲彇 if ((DateTime.Now - rollerShade.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI); } } }) @@ -1493,8 +1471,8 @@ var deviceRow = new CategoryFunctionForWinRow(0, 35); deviceRow.Init(deviceUI); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.IsSelected = rollerShade.WcdCurrentPositionLiftPercentage != 0; deviceRow.SetRollerShadeIcon(rollerShade.WcdType); deviceTypeRowLayout.AddChidren(deviceRow); @@ -1522,7 +1500,7 @@ UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; - rollerShadeControl.Show(deviceUI, Common.Room.CurrentRoom); + rollerShadeControl.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); rollerShadeControl.action += (curDev, curRoom) => { ReFreshDeviceActionForWin(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1534,7 +1512,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceActionForWin(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1542,27 +1520,27 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } } - else if (deviceUI.CommonDevice.Type == DeviceType.DoorLock) + else if (deviceUI.Type == DeviceType.DoorLock) { var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { - var userDoorLockPage = new UserDoorLockPage(Common.Room.CurrentRoom, deviceUI); + var userDoorLockPage = new UserDoorLockPage(HdlRoomLogic.Current.CurrentRoom, deviceUI); HomePage.Instance.AddChidren(userDoorLockPage); HomePage.Instance.PageIndex += 1; userDoorLockPage.Show(); @@ -1572,7 +1550,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1580,21 +1558,21 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } - else if (deviceUI.CommonDevice.Type == DeviceType.IASZone) + else if (deviceUI.Type == DeviceType.IASZone) { var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); - deviceRow.IsSelected = (deviceUI.CommonDevice as IASZone).iASInfo?.Alarm1 == 1; + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); + deviceRow.IsSelected = (deviceUI as IASZone).iASInfo?.Alarm1 == 1; deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); @@ -1603,7 +1581,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1611,17 +1589,17 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } } - else if (deviceUI.CommonDevice.Type == DeviceType.TemperatureSensor) + else if (deviceUI.Type == DeviceType.TemperatureSensor) { - var tempera = deviceUI.CommonDevice as TemperatureSensor; + var tempera = deviceUI as TemperatureSensor; if (tempera.Gateway != null) { new System.Threading.Thread(() => @@ -1633,11 +1611,11 @@ { if (tempera.SensorDiv == 1) { - ReadDeviceAttributeLogic.Instance.SendTemperatureStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendTemperatureStatuComand(deviceUI); } else if (tempera.SensorDiv == 2) { - ReadDeviceAttributeLogic.Instance.SendHumidityStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendHumidityStatuComand(deviceUI); } }); } @@ -1647,11 +1625,11 @@ { if (tempera.SensorDiv == 1) { - ReadDeviceAttributeLogic.Instance.SendTemperatureStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendTemperatureStatuComand(deviceUI); } else if (tempera.SensorDiv == 2) { - ReadDeviceAttributeLogic.Instance.SendHumidityStatuComand(deviceUI.CommonDevice); + ReadDeviceAttributeLogic.Instance.SendHumidityStatuComand(deviceUI); } } } @@ -1660,8 +1638,8 @@ var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.IsSelected = false; deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); @@ -1671,7 +1649,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1679,9 +1657,9 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; @@ -1692,8 +1670,8 @@ { var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + deviceRow.SetStatuText(HdlDeviceOtherLogic.Current.GetDeviceStatu(deviceUI)); deviceRow.HideSwitchBtn(true); deviceTypeRowLayout.AddChidren(deviceRow); @@ -1702,7 +1680,7 @@ var detailInfo = new Device.CommonForm.DeviceDetailInfo { }; UserView.HomePage.Instance.AddChidren(detailInfo); UserView.HomePage.Instance.PageIndex += 1; - detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); + detailInfo.Show(deviceUI, HdlRoomLogic.Current.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); @@ -1710,9 +1688,9 @@ }; var editBtn = new CommonForm.RowLayoutEditButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; @@ -1726,21 +1704,19 @@ alert.Show(); alert.ConfirmClickEvent += () => { - if (Common.Room.CurrentRoom.IsLove) + if (HdlRoomLogic.Current.CurrentRoom.IsLove) { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); + HdlRoomLogic.Current.DeleteLoveDevice(deviceUI); deviceListScrolView.RemoveViewByTag((delSender as Button).Tag); sameTypeList.Remove(deviceUI); } else { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.CommonDevice); + HdlRoomLogic.Current.DeleteDevice(deviceUI); deviceListScrolView.RemoveViewByTag((delSender as Button).Tag); - sameTypeList.Remove(deviceUI); - if (Common.Room.CurrentRoom.GetLoveRoom().DeviceUIList.Find((obj) => obj.FileName == deviceUI.FileName) != null) - { - Common.Room.CurrentRoom.GetLoveRoom().DeleteDevice(deviceUI.FileName); - } + sameTypeList.Remove(deviceUI); + + HdlRoomLogic.Current.DeleteLoveDevice(deviceUI); } if (sameTypeList.Count == 0) { @@ -1750,9 +1726,9 @@ }; var delBtn = new CommonForm.RowLayoutDeleteButton() { - Tag = deviceUI + Tag = LocalDevice.Current.GetDeviceMainKeys(deviceUI) }; - if (Common.Room.CurrentRoom.IsSharedRoom == false) + if (HdlRoomLogic.Current.CurrentRoom.IsSharedRoom == false) { deviceTypeRowLayout.AddRightView(delBtn); delBtn.MouseUpEventHandler += delEvent; @@ -1772,38 +1748,38 @@ /// <param name="sameTypeList"></param> /// <param name="devListScrolView"></param> /// <param name="deviceRow"></param> - private void ReFreshDeviceAction(DeviceUI deviceUI, Common.Room curRoom, List<DeviceUI> sameTypeList, VerticalScrolViewLayout devListScrolView, CategoryFunctionRow deviceRow) + private void ReFreshDeviceAction(CommonDevice deviceUI, Common.Room curRoom, List<CommonDevice> sameTypeList, VerticalScrolViewLayout devListScrolView, CategoryFunctionRow deviceRow) { - if (Common.Room.CurrentRoom.IsLove) + if (HdlRoomLogic.Current.CurrentRoom.IsLove) { deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - if (Common.Room.CurrentRoom.IsCollectInRoom(deviceUI.FileName) == false) + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + if (HdlRoomLogic.Current.IsCollectInRoom(deviceUI) == false) { devListScrolView.RemoveViewByTag(deviceUI); sameTypeList.Remove(deviceUI); if (sameTypeList.Count == 0) { - RefreshFunction(Common.Room.CurrentRoom); + RefreshFunction(HdlRoomLogic.Current.CurrentRoom); } } } else { - if (curRoom.Id != Common.Room.CurrentRoom.Id) + if (curRoom.Id != HdlRoomLogic.Current.CurrentRoom.Id) { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); + HdlRoomLogic.Current.DeleteDevice(deviceUI); devListScrolView.RemoveViewByTag(deviceUI); sameTypeList.Remove(deviceUI); if (sameTypeList.Count == 0) { - RefreshFunction(Common.Room.CurrentRoom); + RefreshFunction(HdlRoomLogic.Current.CurrentRoom); } } else { deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); } } } @@ -1815,38 +1791,38 @@ /// <param name="sameTypeList"></param> /// <param name="devListScrolView"></param> /// <param name="deviceRow"></param> - private void ReFreshDeviceActionForWin(DeviceUI deviceUI, Common.Room curRoom, List<DeviceUI> sameTypeList, VerticalScrolViewLayout devListScrolView, CategoryFunctionForWinRow deviceRow) + private void ReFreshDeviceActionForWin(CommonDevice deviceUI, Common.Room curRoom, List<CommonDevice> sameTypeList, VerticalScrolViewLayout devListScrolView, CategoryFunctionForWinRow deviceRow) { - if (Common.Room.CurrentRoom.IsLove) + if (HdlRoomLogic.Current.CurrentRoom.IsLove) { deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); - if (Common.Room.CurrentRoom.IsCollectInRoom(deviceUI.FileName) == false) + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); + if (HdlRoomLogic.Current.IsCollectInRoom(deviceUI) == false) { devListScrolView.RemoveViewByTag(deviceUI); sameTypeList.Remove(deviceUI); if (sameTypeList.Count == 0) { - RefreshFunction(Common.Room.CurrentRoom); + RefreshFunction(HdlRoomLogic.Current.CurrentRoom); } } } else { - if (curRoom.Id != Common.Room.CurrentRoom.Id) + if (curRoom.Id != HdlRoomLogic.Current.CurrentRoom.Id) { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); + HdlRoomLogic.Current.DeleteDevice(deviceUI); devListScrolView.RemoveViewByTag(deviceUI); sameTypeList.Remove(deviceUI); if (sameTypeList.Count == 0) { - RefreshFunction(Common.Room.CurrentRoom); + RefreshFunction(HdlRoomLogic.Current.CurrentRoom); } } else { deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI.CommonDevice)); + deviceRow.SetTitle(Common.LocalDevice.Current.GetDeviceEpointName(deviceUI)); } } } @@ -1876,7 +1852,8 @@ functionSceneAutoBodyView.AddChidren(functionSceneBodyView); RoomButton curBtn = new RoomButton(0, 0); - foreach (var room in Common.Room.CurrentRoom.GetRoomsByCurrentFloorIdAppendLoveRoom()) + var lisrRoom = HdlRoomLogic.Current.GetRoomsByCurrentFloorIdAppendLoveRoom(); + foreach (var room in lisrRoom) { var row = new FrameLayout() { @@ -1891,7 +1868,7 @@ roomBtn.SetTitle(room.Name); row.AddChidren(roomBtn); - if (room.Id == Common.Room.CurrentRoom.Id) + if (room.Id == HdlRoomLogic.Current.CurrentRoom.Id) { roomBtn.IsSelected = true; curBtn = roomBtn; @@ -1914,7 +1891,7 @@ sender.IsSelected = true; curBtn.IsSelected = false; curBtn = sender; - Common.Room.CurrentRoom = room; + HdlRoomLogic.Current.CurrentRoom = room; if (sceneBtn.IsSelected) { RefreshScene(room); @@ -1956,11 +1933,11 @@ functionSceneBodyView.AddChidren(sceneScrolView); foreach (var scene in sceneList) { - var sceneView = new SceneCategoryView(0, 0); + var sceneView = new SceneCategoryView(); sceneScrolView.AddChidren(sceneView); - sceneView.Init(scene, room); - GetDelayScene(sceneScrolView); - } + sceneView.InitControl(scene, room); + } + GetDelayScene(sceneScrolView); } } @@ -2015,6 +1992,10 @@ for (int i = 0; scrolViewLayout != null && i < scrolViewLayout.ChildrenCount; i++) { var sceneView = scrolViewLayout.GetChildren(i) as SceneCategoryView; + if (sceneView == null) + { + continue; + } foreach (var delayScenesListResponseInfo in delayList) { if (delayScenesListResponseInfo.ScenesId == sceneView.scene.Id) @@ -2022,21 +2003,26 @@ sceneView.scene.RemainTime = delayScenesListResponseInfo.RemainTime; var remainTime = delayScenesListResponseInfo.RemainTime; if (remainTime > 0) - { + { + //寮�鍚唴閮ㄥ欢鏃舵椂闂寸嚎绋�(鏃ㄥ湪鍏ㄩ儴鍦版柟鐨勫悓涓�鍦烘櫙鏃堕棿鍚屾) + HdlSceneLogic.Current.StartDelayTimeThread(sceneView.scene); new System.Threading.Thread(() => { - while (remainTime-- > 0) + while (remainTime > 0 && this.Parent != null) { System.Threading.Thread.Sleep(1000); Application.RunOnMainThread(() => { sceneView.SetTimeText(CommonFormResouce.GetTimeString(remainTime)); }); + remainTime--; } Application.RunOnMainThread(() => { - sceneView.scene.RemainTime = 0; - sceneView.SetTimeImage(); + if (this.Parent != null) + { + sceneView.SetTimeImage(); + } }); }) { IsBackground = true }.Start(); @@ -2045,31 +2031,19 @@ } } } - } - - /// <summary> - /// GetExecScene - /// </summary> - /// <param name="scrolViewLayout"></param> - private void GetExecScene(VerticalScrolViewLayout scrolViewLayout) - { - new System.Threading.Thread(() => - { - - }) - { IsBackground = true }.Start(); - } + } + #endregion - + #region 鈼� 鑷姩鍖朹_________________________ - + /// <summary> /// 鑷姩鍖栧姛鑳戒唬鐮佸叆鍙� /// </summary> - private void ShowAutotion() + private void ShowAutotion() { - // functionSceneAutoBodyView.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; - + // functionSceneAutoBodyView.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; + var bjFrameLayout = new FrameLayout { Width = Application.GetRealWidth(1080 - 58), @@ -2227,25 +2201,25 @@ } logicScrolView.Y = scenehorizontalScrol.Bottom + Yheight; logicScrolView.Height = functionSceneAutoBodyView.Height - bjFrameLayout.Height - bjFrameLayout.Y - scenehorizontalScrol.Height - Application.GetRealHeight(30) - Yheight; - Automationview(logicScrolView,no); + Automationview(logicScrolView, no); }; logicScrolView.BeginHeaderRefreshingAction += () => { //閲嶆柊鍒锋柊logic鍒楄〃 Common.Logic.LogicList.Clear(); - Read(logicScrolView,no); + Read(logicScrolView, no); //鍏抽棴鍒锋柊View锛� logicScrolView.EndHeaderRefreshing(); - }; - - Read(logicScrolView,no); + }; + + Read(logicScrolView, no); } /// <summary> /// 璇诲彇鑷姩鍖栧垪琛ㄦ暟鎹紱 /// </summary> /// <param name="logicScrolView"></param> - private async void Read(VerticalRefreshLayout logicScrolView,bool no) + private async void Read(VerticalRefreshLayout logicScrolView, bool no) { CommonPage.Loading.Start(); if (Common.Logic.LogicList.Count == 0) @@ -2267,23 +2241,23 @@ } } //鑷姩鍖� - Automationview(logicScrolView,no); + Automationview(logicScrolView, no); CommonPage.Loading.Hide(); } /// <summary> /// 鍔犺浇鑷姩鍖栧垪琛ㄧ晫闈� /// </summary> /// <param name="refresview">Refresview.</param> - private async void Automationview(VerticalRefreshLayout refresview,bool no) + private async void Automationview(VerticalRefreshLayout refresview, bool no) { refresview.RemoveAll(); - if (Common.Logic.LogicList.Count == 0&&no==false) + if (Common.Logic.LogicList.Count == 0 && no == false) { //灏辨槸涓轰簡鏄剧ず寮曞娣诲姞鍥炬爣; refresview.BackgroundColor = 0x00000000; var noFrameLayout = new FrameLayout { - Height = Application.GetRealHeight(434+ 200+32+160), + Height = Application.GetRealHeight(434 + 200 + 32 + 160), //BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, }; refresview.AddChidren(noFrameLayout); @@ -2291,7 +2265,7 @@ var noIconBtn = new Button { - Y=Application.GetRealHeight(160), + Y = Application.GetRealHeight(160), Width = Application.GetMinRealAverage(756), Height = Application.GetMinRealAverage(434), UnSelectedImagePath = "Item/NoFunction.png", @@ -2302,14 +2276,14 @@ var noTextBtn = new Button() { Y = noIconBtn.Bottom, - Height = Application.GetRealHeight(200)+Application.GetRealHeight(32), + Height = Application.GetRealHeight(200) + Application.GetRealHeight(32), Width = Application.GetRealWidth(700), //Gravity = Gravity.CenterHorizontal, Text = Language.StringByID(MyInternationalizationString.automationaddtext).Replace("{\\r\\n}", "\r\n"), TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor, TextAlignment = TextAlignment.Center, IsMoreLines = true, - X = Application.GetRealWidth(190-58), + X = Application.GetRealWidth(190 - 58), }; noFrameLayout.AddChidren(noTextBtn); @@ -2329,17 +2303,23 @@ } foreach (var logic in Common.Logic.LogicList) { - - + var fLayout = new FrameLayout + { + Height = Application.GetRealHeight(190 + 30), + Width = Application.GetRealWidth(1080 - 58), + BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, + }; + refresview.AddChidren(fLayout); + var logicRowlayout = new RowLayout { Height = Application.GetRealHeight(190 + 30), - Width = Application.GetRealWidth(1080-58), - LineColor = ZigbeeColor.Current.LogicBackgroundColor, - BackgroundColor =ZigbeeColor.Current.LogicBackgroundColor, - + Width = Application.GetRealWidth(1080 - 58), + LineColor = ZigbeeColor.Current.LogicBackgroundColor, + BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, + }; - refresview.AddChidren(logicRowlayout); + fLayout.AddChidren(logicRowlayout); @@ -2412,9 +2392,9 @@ var logicCommunalPage = new Logic.LogicCommunalPage(); HomePage.Instance.AddChidren(logicCommunalPage); HomePage.Instance.PageIndex += 1; - logicCommunalPage.Show(() => { + logicCommunalPage.Show(() => { logicnameBtn.Text = logic.LogicName; - Automationview(refresview,no); + Automationview(refresview, no); }); }; @@ -2444,13 +2424,13 @@ }; var line = new Button { - Y = Application.GetRealHeight(215), - Height = Application.GetRealHeight(5), + Y = fLayout.Height - 1, + Height = 1, + X = Application.GetRealWidth(58), Width = Application.GetRealWidth(1080 - 58), BackgroundColor = ZigbeeColor.Current.LogicRowLayoutLineColor, - X = Application.GetRealWidth(58), }; - logicRowlayout.AddChidren(line); + fLayout.AddChidren(line); } } @@ -2925,10 +2905,10 @@ { commonDeviceList.Add(common); } - } - + } + #endregion - - + + } } -- Gitblit v1.8.0