From eb424d24e39bab4a245725f35deab3f234ea0f13 Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期五, 13 十二月 2019 10:48:50 +0800 Subject: [PATCH] 2019.12.13 --- ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs | 187 ++++++++++++++++++---------------------------- 1 files changed, 75 insertions(+), 112 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs b/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs index b20b6e1..d3163c0 100644 --- a/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs +++ b/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs @@ -6,6 +6,7 @@ using Shared.Phone.Device.CommonForm; using Shared.Phone.UserCenter.DoorLock; using System.Timers; +using Shared.Phone.Device.DeviceLogic; namespace Shared.Phone.UserView { @@ -260,6 +261,15 @@ ac.currentSystemMode = attriButeList[0].AttriButeData; ac.LastDateTime = DateTime.Now; break; + + case 4099: + var value = Convert.ToString(attriButeList[0].AttriButeData, 2).PadLeft(16, '0'); + var modeStr = value.Substring(value.Length - 5, 5); + for (int j = 0; j < modeStr.Length; j++) + { + ac.listSupportMode[j] = Convert.ToInt32(modeStr[j]) == 49 ? 1 : 0; + } + break; } (rowFL.GetChildren(0) as FunctionMainView).IsSelected = ac.currentSystemMode != 0; (rowFL.GetChildren(0) as FunctionMainView).StatuButton.Text = deviceUI.GetDeviceStatu(); @@ -416,7 +426,10 @@ Gravity = Gravity.CenterVertical, UnSelectedImagePath = "Item/Floor.png" }; - topFrameLayout.AddChidren(floor); + if (Config.Instance.Home.FloorDics.Count > 0) + { + topFrameLayout.AddChidren(floor); + } floorBtn = new Button { @@ -428,7 +441,10 @@ TextColor = ZigbeeColor.Current.GXCTextColor, Text = Config.Instance.Home.GetCurrentFloorName }; - topFrameLayout.AddChidren(floorBtn); + if (Config.Instance.Home.FloorDics.Count > 0) + { + topFrameLayout.AddChidren(floorBtn); + } var messageBtn = new Button() { @@ -450,7 +466,8 @@ TextAlignment = TextAlignment.CenterLeft, Text = Config.Instance.Home.Name ?? Language.StringByID(R.MyInternationalizationString.TheResidenceNameNull), TextSize = 24, - TextColor = ZigbeeColor.Current.GXCTextBlackColor + TextColor = ZigbeeColor.Current.GXCTextBlackColor, + IsBold=true }; if (Config.Instance.Home.IsOthreShare) { @@ -466,7 +483,7 @@ var tempHomeBtn = send as Button; if (Config.Instance.HomeFilePathList.Count == 0) { - var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.CurrentlyTheUserIshHouseIsEmptyPleaseBuildANewHouseFirst), Language.StringByID(R.MyInternationalizationString.Close), Language.StringByID(R.MyInternationalizationString.OK)); + var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.CurrentlyTheUserIshHouseIsEmptyPleaseBuildANewHouseFirst), Language.StringByID(R.MyInternationalizationString.Close), Language.StringByID(R.MyInternationalizationString.Confrim)); alert.Show(); alert.ResultEventHandler += (senderHouse, eHouse) => { @@ -493,7 +510,7 @@ Y = Application.GetRealHeight(248), Width = Application.GetMinRealAverage(449), Height = Application.GetMinRealAverage(478), - UnSelectedImagePath = "Item/SelectHouse" + UnSelectedImagePath = "Item/SelectHouse.png" }; closeBGview.AddChidren(bg); @@ -501,8 +518,8 @@ { X = Application.GetRealWidth(35), Y = Application.GetRealHeight(271), - Height = Application.GetRealHeight(449), - Width = Application.GetRealWidth(440), + Height = Application.GetMinRealAverage(449), + Width = Application.GetMinRealAverage(440), Radius = CommonPage.BigFormRadius, BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor }; @@ -614,26 +631,25 @@ //娑堟伅 messageBtn.MouseUpEventHandler += (send, e) => { - var roomList = new Shared.Phone.Device.Room.RoomManagement(); - HomePage.Instance.AddChidren(roomList); - HomePage.Instance.PageIndex += 1; - roomList.Show(); + }; #endregion if (CanBindGateway() == false) { - var roomPageView = new PageLayout() + + var roomPageView = new HorizontalPages() { Y = Application.GetRealHeight(302), - Width = Application.GetRealWidth(CommonPage.AppRealWidth - CommonPage.XLeft * 2), - Height = Application.GetMinRealAverage(roomPageView_Height), - Radius = CommonPage.BigFormRadius, - Gravity = Gravity.CenterHorizontal, - IsShowPoint = false + Width = Application.GetRealWidth(CommonPage.AppRealWidth), + Height = Application.GetRealHeight(478), }; AddChidren(roomPageView); + //绐佸嚭杈硅窛 + roomPageView.TCBJ = Application.GetRealWidth(112); + //涓や釜page涔嬮棿鐨勯棿璺� + roomPageView.JMBJ = Application.GetRealWidth(69); //褰撳墠鎴块棿 //Room.CurrentRoom = Room.CurrentRoom == null ? Room.Lists[0] : Room.CurrentRoom; @@ -641,49 +657,12 @@ Room.CurrentRoom = rList[0]; foreach (var room in rList) { - var roomBackView = new FrameLayout() + var roomView = new Device.CommonForm.RoomView(0, 0); + roomPageView.AddChidren(roomView); + roomView.Init(room); + roomView.action += () => { - BackgroundImagePath = room.BackgroundImage - }; - roomPageView.AddChidren(roomBackView); - var roomBG = new Button() - { - UnSelectedImagePath = "Room/HomeBG.png", - //UnSelectedImagePath = room.BackgroundImage - }; - roomBackView.AddChidren(roomBG); - var roomName = new Button() - { - X = Application.GetRealWidth(20), - Y = Application.GetRealHeight(20), - Width = Application.GetRealWidth(500), - Height = Application.GetRealHeight(80), - Text = room.Name, - TextAlignment = TextAlignment.CenterLeft, - TextColor = ZigbeeColor.Current.GXCTextWhiteColor, - TextSize = 18, - }; - roomBackView.AddChidren(roomName); - var roomListBtn = new Device.CommonForm.SelectedStatuButton() - { - X = roomPageView.Width - Application.GetRealWidth(100 + 20), - Y = Application.GetRealHeight(20), - Width = Application.GetMinRealAverage(100), - Height = Application.GetMinRealAverage(100), - UnSelectedImagePath = "Item/List.png", - }; - roomBackView.AddChidren(roomListBtn); - - roomListBtn.MouseUpEventHandler += (send, e) => - { - var editRoom = new Device.Room.EditRoom(); - HomePage.Instance.AddChidren(editRoom); - HomePage.Instance.PageIndex += 1; - editRoom.Show(room); - editRoom.action += () => - { - Show(); - }; + Show(); }; } @@ -707,7 +686,9 @@ TextColor = ZigbeeColor.Current.GXCTextGrayColor3, SelectedTextColor = ZigbeeColor.Current.GXCTextWhiteColor, TextID = R.MyInternationalizationString.Scence, - IsSelected = false + IsSelected = true, + TextSize=16, + IsBold=true }; functionSceneView.AddChidren(sceneBtn); @@ -721,7 +702,8 @@ TextColor = ZigbeeColor.Current.GXCTextGrayColor3, SelectedTextColor = ZigbeeColor.Current.GXCTextWhiteColor, TextID = R.MyInternationalizationString.Function, - IsSelected = false + IsSelected = false, + TextSize=14 }; functionSceneView.AddChidren(functionBtn); @@ -740,6 +722,10 @@ { sceneBtn.IsSelected = false; functionBtn.IsSelected = true; + sceneBtn.TextSize = 14; + sceneBtn.IsBold = false; + functionBtn.TextSize = 16; + functionBtn.IsBold = true; RefreshBodyView(); }; //閫夋嫨鍦烘櫙鍒嗘爮 @@ -747,6 +733,10 @@ { functionBtn.IsSelected = false; sceneBtn.IsSelected = true; + sceneBtn.TextSize = 16; + sceneBtn.IsBold = true; + functionBtn.TextSize = 14; + functionBtn.IsBold = false; RefreshBodyView(); }; @@ -795,9 +785,10 @@ var floorFL = new Phone.Device.Category.SelectFloor(); AddChidren(floorFL); floorFL.Init(35, 153); - floorFL.FloorAction = (floorName) => + floorFL.changeFloor = true; + floorFL.FloorAction = (floorId) => { - floorBtn.Text = floorName; + floorBtn.Text = Config.Instance.Home.GetFloorNameById(floorId); Show(); }; } @@ -927,7 +918,7 @@ { Y = noFunction.Bottom, Height = Application.GetRealHeight(200), - Text = Language.StringByID(R.MyInternationalizationString.NoFunction).Replace("{\\r\\n}", "\r\n"), + Text = Language.StringByID(R.MyInternationalizationString.NoFunction_Tip).Replace("{\\r\\n}", "\r\n"), TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor, IsMoreLines = true }; @@ -1011,14 +1002,14 @@ //鍙戦�佽鍙栫姸鎬佸懡浠� ReadStatus(rollerShade, () => { - rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); + ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(device.CommonDevice); }); } else { if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - rollerShade.LastDateTime).TotalSeconds) { - rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); + ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); @@ -1041,7 +1032,7 @@ zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); - (device.CommonDevice as Rollershade).CurtainUpDownStopControl(1); + (device.CommonDevice as Rollershade).CurtainUpDownStopControl(0); ((sender as Button).Parent as FunctionMainView).SetStatuText(CommonFormResouce.GetSwitchStatu(true)); ((sender as Button).Parent as FunctionMainView).IsSelected = true; @@ -1067,7 +1058,7 @@ zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, device.CommonDevice); - (device.CommonDevice as Rollershade).CurtainUpDownStopControl(0); + (device.CommonDevice as Rollershade).CurtainUpDownStopControl(1); ((sender as Button).Parent as FunctionMainView).SetStatuText(CommonFormResouce.GetSwitchStatu(false)); ((sender as Button).Parent as FunctionMainView).IsSelected = false; @@ -1090,6 +1081,7 @@ lightView.CardBG.MouseUpEventHandler += (sender, e) => { + CommonPage.Instance.IsDrawerLockMode = true; var rollerShadeControl = new Phone.Device.Curtain.RollerShadeControl(); UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; @@ -1115,16 +1107,14 @@ //鍙戦�佽鍙栫姸鎬佸懡浠� ReadStatus(light, () => { - light.ReadOnOffStatus(); - light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); }); } else { if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds) { - light.ReadOnOffStatus(); - light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); } } @@ -1206,6 +1196,7 @@ lightView.CardBG.MouseUpEventHandler += (sender, e) => { + CommonPage.Instance.IsDrawerLockMode = true; if (device.CommonDevice.DfunctionType == DeviceFunctionType.A寮�鍏�) { var lightControl = new Phone.Device.Light.OnOffControl(); @@ -1249,8 +1240,7 @@ //鍙戦�佽鍙栫姸鎬佸懡浠� ReadStatus(airSwitch, () => { - airSwitch.ReadOnOffStatus(); - airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); }); } else @@ -1258,8 +1248,7 @@ //闃叉鐭椂闂村唴澶氭璇诲彇璁惧鐘舵�� if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - airSwitch.ReadOnOffStatus(); + ReadDeviceAttributeLogic.Instance.SendLightStatuComand(device.CommonDevice); } } @@ -1332,6 +1321,7 @@ lightView.CardBG.MouseUpEventHandler += (sender, e) => { + CommonPage.Instance.IsDrawerLockMode = true; var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; @@ -1356,14 +1346,7 @@ //鍙戦�佽鍙栫姸鎬佸懡浠� ReadStatus(ac, () => { - ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - ac.ReadLocalTemperature(); - ac.ReadCoolingSetpoint(); - ac.ReadHeatingSetpoint(); - ac.ReadAutoSetpoint(); - ac.ReadFanMode(); - ac.ReadSystemMode(); - ac.ReadSystemFansSwingMode(); + ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); }); } else @@ -1371,14 +1354,7 @@ //闃叉鐭椂闂村唴澶氭璇诲彇璁惧鐘舵�� if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - ac.ReadLocalTemperature(); - ac.ReadCoolingSetpoint(); - ac.ReadHeatingSetpoint(); - ac.ReadAutoSetpoint(); - ac.ReadFanMode(); - ac.ReadSystemMode(); - ac.ReadSystemFansSwingMode(); + ReadDeviceAttributeLogic.Instance.SendACStatuComand(device.CommonDevice); } } var lightView = new FunctionMainView(xx, yy); @@ -1449,6 +1425,7 @@ lightView.CardBG.MouseUpEventHandler += (sender, e) => { + CommonPage.Instance.IsDrawerLockMode = true; var lightControl = new Phone.Device.AC.ACControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; @@ -1472,8 +1449,7 @@ //鍙戦�佽鍙栫姸鎬佸懡浠� ReadStatus(dimmableLight, () => { - dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - dimmableLight.ReadOnOffStatus(); + ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(device.CommonDevice); }); } else @@ -1481,8 +1457,7 @@ //闃叉鐭椂闂村唴澶氭璇诲彇璁惧鐘舵�� if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - dimmableLight.ReadOnOffStatus(); + ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(device.CommonDevice); } } @@ -1564,6 +1539,7 @@ lightView.CardBG.MouseUpEventHandler += (sender, e) => { + CommonPage.Instance.IsDrawerLockMode = true; var dimmableLightControl = new Phone.Device.Light.DimmableLightControl(); UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; @@ -1581,20 +1557,6 @@ if (dimmableLight.Gateway == null) { continue; - } - if (dimmableLight.Gateway.IsVirtual) - { - ReadStatus(dimmableLight, () => - { - dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - }); - } - else - { - if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) - { - dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - } } var lightView = new FunctionMainView(xx, yy); @@ -1618,6 +1580,7 @@ lightView.CardBG.MouseUpEventHandler += (sender, e) => { + CommonPage.Instance.IsDrawerLockMode = true; var userDoorLockPage = new UserDoorLockPage(Room.CurrentRoom, device); HomePage.Instance.AddChidren(userDoorLockPage); HomePage.Instance.PageIndex += 1; @@ -1675,7 +1638,7 @@ { Y = noScene.Bottom, Height = Application.GetRealHeight(200), - Text = Language.StringByID(R.MyInternationalizationString.NoScene).Replace("{\\r\\n}", "\r\n"), + Text = Language.StringByID(R.MyInternationalizationString.NoScene_Tip).Replace("{\\r\\n}", "\r\n"), TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor, IsMoreLines = true }; @@ -1704,7 +1667,7 @@ for (int i = 0; i < sceneList.Count; i++) { var scene = sceneList[i]; - int xx = 43 + i % 2 * (20 + 487); + int xx = 33 + i % 2 * (40 + 487); int yy = 14; if (scene == null) { -- Gitblit v1.8.0