From ed2f4a97aa48cdb4a013d2a389877f52eb3eccdf Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期二, 29 十月 2019 13:15:59 +0800 Subject: [PATCH] Merge branch 'DEV_GXC' of http://172.16.1.23:6688/r/~xm/HomeApp into DEV_GXC --- ZigbeeApp/Shared/Phone/Device/Category/Category.cs | 929 +++++++++++++++------------------------------------------ 1 files changed, 243 insertions(+), 686 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 01dd736..b601b50 --- a/ZigbeeApp/Shared/Phone/Device/Category/Category.cs +++ b/ZigbeeApp/Shared/Phone/Device/Category/Category.cs @@ -90,7 +90,7 @@ /// <summary> /// 璁惧绫诲瀷RowLayout /// </summary> - private RowLayout typeRowLayout; + private FrameLayout typeRowLayout; /// <summary> /// 妤煎眰 /// </summary> @@ -543,7 +543,7 @@ /// <param name="selectedBtn">閫変腑閭d釜鐣岄潰 0--鍔熻兘 1--鍦烘櫙 2--鑷姩鍖� </param> public void Show(int selectedBtn = 1) { - + ZbGateway.StatusList.Add(this); RemoveAll(); @@ -585,7 +585,7 @@ var midFL = new FrameLayout { Y = topView.Bottom, - Height = Application.GetRealHeight(CommonPage.AppRealHeight - CommonPage.TabbarHeight) - topView.Bottom, + Height = Application.GetRealHeight(1549), BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor }; AddChidren(midFL); @@ -596,18 +596,17 @@ BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor }; midFL.AddChidren(functionSceneAutoBG); - //鍔熻兘 - functionBtn = new ButtonLineForm(CommonFormResouce.X_Left, 34, 150, 68); - functionSceneAutoBG.AddChidren(functionBtn); - functionBtn.Init(); - functionBtn.SetTitle(R.MyInternationalizationString.Function); //鍦烘櫙 - sceneBtn = new ButtonLineForm(CommonFormResouce.X_Left + 150 + 20, 34, 150, 68); + sceneBtn = new ButtonLineForm(CommonFormResouce.X_Left, 34, 150, 68); functionSceneAutoBG.AddChidren(sceneBtn); sceneBtn.Init(); sceneBtn.SetTitle(R.MyInternationalizationString.Scence); - + //鍔熻兘 + functionBtn = new ButtonLineForm(CommonFormResouce.X_Left + 150 + 20, 34, 150, 68); + functionSceneAutoBG.AddChidren(functionBtn); + functionBtn.Init(); + functionBtn.SetTitle(R.MyInternationalizationString.Function); //鑷姩鍖� automationBtn = new ButtonLineForm(CommonFormResouce.X_Left + 150 * 2 + 20, 34, 150, 68); automationBtn.Init(); @@ -705,7 +704,7 @@ { var floors = new SelectFloor (); AddChidren(floors); - floors.Init(599,357,Direction.Right); + floors.Init(580,330,Direction.Right); floors.FloorAction += (floorName) => { floorBtn.Text = floorName; @@ -895,11 +894,10 @@ deviceListScrolView = new VerticalScrolViewLayout { X = Application.GetRealWidth(CommonFormResouce.X_Left), - Y = functionTypeScrowView.Bottom + Application.GetRealHeight(50), + Y = Application.GetRealHeight(35+275), Width = Application.GetRealWidth(1028), - Height = functionSceneBodyView.Height - Application.GetRealHeight(279 + 50) - 1, + Height = Application.GetRealHeight(938) - 1, BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor - }; functionSceneBodyView.AddChidren(deviceListScrolView); tempFunctionTypeBtn = new FunctionButton(); @@ -987,18 +985,18 @@ var deviceTypeRowLayout = new RowLayout() { - Height = Application.GetRealHeight(127 + 35), + Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); - var deviceRow = new FunctionRow(0, 35); + var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetStatu(light.IsOnline == 1); + deviceRow.SetZoneText(deviceUI.GetZone()); deviceTypeRowLayout.AddChidren(deviceRow); - deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => { @@ -1006,8 +1004,9 @@ sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); - (send2 as CommonForm.SelectedStatuButton).IsSelected = !(send2 as CommonForm.SelectedStatuButton).IsSelected; - if ((send2 as CommonForm.SelectedStatuButton).IsSelected) + (send2 as Button).IsSelected = !(send2 as Button).IsSelected; + deviceRow.IsSelected = (send2 as Button).IsSelected; + if ((send2 as Button).IsSelected) { light.SwitchControl(1); } @@ -1028,6 +1027,15 @@ DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); + }; + + deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => + { + var lightControl = new Phone.Device.Light.LightControl(); + UserView.HomePage.Instance.AddChidren(lightControl); + UserView.HomePage.Instance.PageIndex += 1; + lightControl.action = RefreshBodyView; + lightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1080,10 +1088,11 @@ }; deviceListScrolView.AddChidren(deviceTypeRowLayout); - var deviceRow = new FunctionRow(0, 35); + var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetStatu(airSwitch.IsOnline == 1); + deviceRow.SetZoneText(deviceUI.GetZone()); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => @@ -1093,8 +1102,8 @@ zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); - (send2 as CommonForm.SelectedStatuButton).IsSelected = !(send2 as CommonForm.SelectedStatuButton).IsSelected; - if ((send2 as CommonForm.SelectedStatuButton).IsSelected) + (send2 as Button).IsSelected = !(send2 as Button).IsSelected; + if ((send2 as Button).IsSelected) { airSwitch.SwitchControl(1); } @@ -1115,6 +1124,15 @@ DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); + }; + + deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => + { + var lightControl = new Phone.Device.Light.LightControl(); + UserView.HomePage.Instance.AddChidren(lightControl); + UserView.HomePage.Instance.PageIndex += 1; + lightControl.action = RefreshBodyView; + lightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1163,16 +1181,17 @@ var deviceTypeRowLayout = new RowLayout() { - Height = Application.GetRealHeight(127 + 35), + Height = Application.GetRealHeight(129 + 35), LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); - var deviceRow = new FunctionRow(0, 35); + var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); deviceRow.SetStatu(dimmableLight.IsOnline == 1); + deviceRow.SetZoneText(deviceUI.GetZone()); deviceTypeRowLayout.AddChidren(deviceRow); deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => @@ -1182,8 +1201,8 @@ zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); - (send2 as CommonForm.SelectedStatuButton).IsSelected = !(send2 as CommonForm.SelectedStatuButton).IsSelected; - if ((send2 as CommonForm.SelectedStatuButton).IsSelected) + (send2 as Button).IsSelected = !(send2 as Button).IsSelected; + if ((send2 as Button).IsSelected) { dimmableLight.SwitchControl(1); } @@ -1204,6 +1223,16 @@ DeviceUI.ShowStatuTip(R.MyInternationalizationString.FAIL); } }); + }; + + deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => + { + var dimmableLightControl = new Phone.Device.Light.DimmableLightControl(); + UserView.HomePage.Instance.AddChidren(dimmableLightControl); + UserView.HomePage.Instance.PageIndex += 1; + UserView.HomePage.Instance.ScrollEnabled = false; + dimmableLightControl.action = RefreshBodyView; + dimmableLightControl.Show(deviceUI, room); }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1250,19 +1279,23 @@ //闃叉鐭椂闂村唴澶氭璇诲彇璁惧鐘舵�� if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) { - ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); - ac.ReadFanMode(); - ac.ReadSystemMode(); - ac.ReadLocalTemperature(); - ac.ReadCoolingSetpoint(); - ac.ReadHeatingSetpoint(); + rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); + }); + } + else + { + //闃叉鐭椂闂村唴澶氭璇诲彇 + if ((DateTime.Now - rollerShade.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan) + { + rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch); } } + var deviceTypeRowLayout = new RowLayout() { Height = Application.GetRealHeight(127 + 35), - LineColor = ZigbeeColor.Current.GXCBackgroundColor, + LineColor = ZigbeeColor.Current.GXCLineColor, Tag = deviceUI }; deviceListScrolView.AddChidren(deviceTypeRowLayout); @@ -1270,25 +1303,43 @@ var deviceRow = new FunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - deviceRow.SetStatu(ac.IsOnline == 1); + deviceRow.SetStatu(rollerShade.IsOnline == 1); deviceTypeRowLayout.AddChidren(deviceRow); - deviceRow.SwitchBtn.MouseUpEventHandler += (send2, e2) => + var editBtn = new CommonForm.RowLayoutEditButton() + { + Tag = deviceUI, + Radius = 0 + }; + deviceTypeRowLayout.AddRightView(editBtn); + editBtn.MouseUpEventHandler += deviceDetailHandler; + + var delBtn = new Device.CommonForm.RowLayoutDeleteButton() + { + Tag = deviceUI, + Radius = 0 + }; + deviceTypeRowLayout.AddRightView(delBtn); + delBtn.MouseUpEventHandler += delEvent; + + + deviceRow.SwitchBtn.MouseUpEventHandler += (sender, e) => { zbGateway = deviceUI.CommonDevice.Gateway; sendedControlCommand = false; zbGateway.ReportAction += UpdateDeviceControllStatu; AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); - (send2 as CommonForm.SelectedStatuButton).IsSelected = !(send2 as CommonForm.SelectedStatuButton).IsSelected; - if ((send2 as CommonForm.SelectedStatuButton).IsSelected) + (sender as CommonForm.SelectedStatuButton).IsSelected = !(sender as CommonForm.SelectedStatuButton).IsSelected; + if ((sender as CommonForm.SelectedStatuButton).IsSelected) { - ac.Open(); + rollerShade.CurtainUpDownStopControl(0); } else { - ac.Close(); + rollerShade.CurtainUpDownStopControl(1); } + //鎺у埗寤舵椂鍥炶皟 DeviceUI.SendCommandDelayAction(deviceUI.CommonDevice, () => { @@ -1418,10 +1469,9 @@ foreach (var deviceType in Common.Room.GetdeviceTypes(room)) { - typeRowLayout = new RowLayout() + typeRowLayout = new FrameLayout() { Width = Application.GetRealWidth(CommonPage.AppRealWidth / 5), - LineColor = ZigbeeColor.Current.GXCBackgroundColor, Tag = deviceType }; functionTypeScrowView.AddChidren(typeRowLayout); @@ -1434,19 +1484,14 @@ functionTypeIMG.SetTitle(DeviceUI.GetDeviceTypeName(deviceType)); typeRowLayout.AddChidren(functionTypeIMG); + functionTypeIMG.ClickBtn.MouseUpEventHandler += ShowSameTypeFunction; - functionTypeIMG.ImageBtn.MouseUpEventHandler += ShowSameTypeFunction; - functionTypeIMG.NameBtn.MouseUpEventHandler += ShowSameTypeFunction; - functionTypeIMG.ImageBG.MouseUpEventHandler += ShowSameTypeFunction; if (deviceType == room.DeviceUIList[0].CommonDevice.Type) { ShowSameTypeFunction(functionTypeIMG.ImageBtn, null); } - } - - } } @@ -1458,7 +1503,7 @@ var roomFL = new HorizontalScrolViewLayout() { X = Application.GetRealWidth(CommonFormResouce.X_Left), - Height = Application.GetRealHeight(167), + Height = Application.GetRealHeight(170), Width = Application.GetRealWidth(CommonPage.AppRealWidth - CommonFormResouce.X_Left), BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor }; @@ -1468,7 +1513,7 @@ functionSceneBodyView = new FrameLayout() { Y = roomFL.Bottom, - Height = Application.GetRealHeight(1316), + Height = Application.GetRealHeight(973+279), BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor }; functionSceneAutoBodyView.AddChidren(functionSceneBodyView); @@ -1476,11 +1521,10 @@ Button curBtn = new Button(); foreach (var room in Common.Room.CurrentRoom.GetRoomsByCurrentFloorIdAppendLoveRoom()) { - var row = new RowLayout() + var row = new FrameLayout() { Width = Application.GetRealWidth(187 + 50), - Height = Application.GetRealHeight(167), - LineColor = ZigbeeColor.Current.GXCGrayBackgroundColor + Height = Application.GetRealHeight(167) }; roomFL.AddChidren(row); @@ -1512,7 +1556,7 @@ { RefreshFunction(room); } - + } roomBtn.MouseUpEventHandler += (sender, e) => { @@ -1533,7 +1577,7 @@ } }; } - + } #endregion @@ -1553,6 +1597,7 @@ /// <param name="room"></param> public void RefreshScene(Common.Room room) { + functionSceneBodyView.RemoveAll(); var sceneList = room.SceneUIList; if (sceneList.Count == 0) { @@ -1562,7 +1607,7 @@ { var sceneScrolView = new VerticalScrolViewLayout { - Y = Application.GetRealHeight(58) + //Y = Application.GetRealHeight(58) }; functionSceneBodyView.AddChidren(sceneScrolView); foreach (var scene in sceneList) @@ -1612,20 +1657,48 @@ Width = Application.GetMinRealAverage(65), Height = Application.GetMinRealAverage(65), UnSelectedImagePath = "Item/Collection.png", - SelectedImagePath = "Item/CollectionSelected.png" + SelectedImagePath = "Item/CollectionSelected.png", + IsSelected = Common.Room.CurrentRoom.GetLoveRoom().SceneUIFilePathList.Contains(scene.FileName), + Tag = scene }; leftFL.AddChidren(collectionBtn); var sceneNameBtn = new Button() { Width = Application.GetRealWidth(176), - Height = Application.GetRealHeight(200), + Height = Application.GetRealHeight(150), TextColor = ZigbeeColor.Current.GXCTextWhiteColor, Text = scene.Name, Gravity = Gravity.Center, IsMoreLines = true }; leftFL.AddChidren(sceneNameBtn); + + var collection = new Button + { + Tag=scene + }; + leftFL.AddChidren(collection); + collection.MouseUpEventHandler += (sender, e) => + { + if (room.IsLove) + { + Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); + sceneScrolView.RemoveViewByTag(collectionBtn.Tag); + } + else + { + collectionBtn.IsSelected = !collectionBtn.IsSelected; + if (collectionBtn.IsSelected) + { + Common.Room.CurrentRoom.GetLoveRoom().AddScene(scene); + } + else + { + Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); + } + } + }; //瀹氭椂 var delayBtn = new RowLayoutDeleteButton @@ -1638,7 +1711,7 @@ //缂栬緫 var settingBtn = new Device.CommonForm.RowLayoutEditButton() { - TextID = R.MyInternationalizationString.Setting, + TextID = R.MyInternationalizationString.Editor, Tag = scene.SceneDelayTime }; //鍒犻櫎 @@ -1688,83 +1761,75 @@ //鍒犻櫎鍦烘櫙 EventHandler<MouseEventArgs> delEvent = (sender, e) => { - var tip = new CustomAlert { }; - AddChidren(tip); - tip.Show(Language.StringByID(R.MyInternationalizationString.ConfirmDelete)); - - //var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim)); - //alert.Show(); - tip.ResultEventHandler += async (e1) => + if(room.IsLove) { - if (e1) + Shared.Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); + sceneScrolView.RemoveViewByTag((sender as Button).Tag); + } + else + { + var tip = new CustomAlert { }; + AddChidren(tip); + tip.Show(Language.StringByID(R.MyInternationalizationString.ConfirmDelete)); + + //var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim)); + //alert.Show(); + tip.ResultEventHandler += async (e1) => { - //0 绉婚櫎澶辫触 1 绉婚櫎鎴愬姛 2 娌℃湁璇ュ満鏅� - var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id); - if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null) + if (e1) { - //CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheMainGatewayIsNotOnLine); - CommonPage.Instance.FailureToServer(); - return; + //0 绉婚櫎澶辫触 1 绉婚櫎鎴愬姛 2 娌℃湁璇ュ満鏅� + var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id); + if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null) + { + //CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheMainGatewayIsNotOnLine); + CommonPage.Instance.FailureToServer(); + return; + } + //1鎴愬姛 + if (removeSceneAllData.removeSceneData.Result == 1) + { + room.RemoveScene(scene); + //RefreshBodyView(); + sceneScrolView.RemoveViewByTag((sender as Button).Tag); + } + //0 绉婚櫎澶辫触 + else if (removeSceneAllData.removeSceneData.Result == 0) + { + CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); + return; + } + //2 娌℃湁璇ュ満鏅� + else if (removeSceneAllData.removeSceneData.Result == 2) + { + room.RemoveScene(scene); + //RefreshBodyView(); + sceneScrolView.RemoveViewByTag((sender as Button).Tag); + CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneIsNull); + return; + } } - //1鎴愬姛 - if (removeSceneAllData.removeSceneData.Result == 1) - { - room.RemoveScene(scene); - //RefreshBodyView(); - sceneScrolView.RemoveViewByTag((sender as Button).Tag); - } - //0 绉婚櫎澶辫触 - else if (removeSceneAllData.removeSceneData.Result == 0) - { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); - return; - } - //2 娌℃湁璇ュ満鏅� - else if (removeSceneAllData.removeSceneData.Result == 2) - { - room.RemoveScene(scene); - //RefreshBodyView(); - sceneScrolView.RemoveViewByTag((sender as Button).Tag); - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneIsNull); - return; - } - } - }; + }; + } + }; deleteBtn.MouseUpEventHandler += delEvent; //缂栬緫鍦烘櫙 settingBtn.MouseUpEventHandler += (sender, e) => { - SceneRoomUI.EditScene(scene,room); + SceneUI.EditScene(scene, room); }; //缂栬緫寤舵椂 delayBtn.MouseUpEventHandler += (sender, e) => { - var tList = new List<string>() { }; - - for (int i = 0; i < 60; i++) + var timeSelect = new SelectTime(); + CommonPage.Instance.AddChidren(timeSelect); + timeSelect.TempTime = scene.SceneDelayTime; + timeSelect.Init(); + timeSelect.TimeAction = (t) => { - tList.Add($"{i} {Language.StringByID(R.MyInternationalizationString.Second)}"); - } - //int beforeIndex = (int)(sender as CommonForm.RowLayoutEditButton).Tag; - //PickerView.Show(tList, (obj) => - //{ - // var tempRoom = Shared.Common.Room.GetRoomByFilePath(sceneRoomUI.room.FileName); - // if (tempRoom == null) - // { - // return; - // } - // foreach (var ss in tempRoom.SceneUIList) - // { - // if (ss.Id == sceneRoomUI.sceneUI.Id) - // { - // //ss.SceneDelayTime = int.Parse(obj.Split(' ')[0]); - // sceneRoomUI.room.Save(); - // RefreshBodyView(); - // return; - // } - // } - //}, Language.StringByID(R.MyInternationalizationString.Confrim), tList[(int)(sender as CommonForm.RowLayoutEditButton).Tag]); + scene.SceneDelayTime = t; + }; }; } } @@ -1807,11 +1872,11 @@ /// <summary> /// 鑷姩鍖� /// </summary> - public async void ShowAutotion() + private async void ShowAutotion() { functionSceneAutoBodyView.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; - + var bjFrameLayout = new FrameLayout { Width = Application.GetRealWidth(1080 - 58), @@ -1858,16 +1923,22 @@ bjFrameLayout.AddChidren(recommendswitchBtn); - var scenehorizontalScrol = new HorizontalScrolViewLayout + /// <summary> + /// 鏄剧ず娌℃湁鍦烘櫙 + /// </summary> + private void ShowNoSceneTip() + { + var noFunction = new Button() { - Width = Application.GetRealWidth(1080 - 58), - X = Application.GetRealWidth(58), - Y = bjFrameLayout.Bottom + Application.GetRealHeight(30), - Height = Application.GetRealHeight(0), + Y = Application.GetRealHeight(320), + Width = Application.GetMinRealAverage(757), + Height = Application.GetMinRealAverage(435), + UnSelectedImagePath = "Item/NoFunction.png", + Gravity = Gravity.CenterHorizontal }; - functionSceneAutoBodyView.AddChidren(scenehorizontalScrol); + functionSceneBodyView.AddChidren(noFunction); - var logicScrolView = new VerticalScrolViewLayout + var noScenceTip = new Button() { Height = functionSceneAutoBodyView.Height - bjFrameLayout.Height - bjFrameLayout.Y - scenehorizontalScrol.Height - Application.GetRealHeight(30), BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, @@ -1875,102 +1946,13 @@ Radius = (uint)Application.GetRealHeight(50), Y = scenehorizontalScrol.Bottom, }; - functionSceneAutoBodyView.AddChidren(logicScrolView); + functionSceneBodyView.AddChidren(noScenceTip); + } - recommendswitchBtn.MouseUpEventHandler += (sender, e) => - { - int Yheight = 0; - recommendswitchBtn.IsSelected = !recommendswitchBtn.IsSelected; - scenehorizontalScrol.RemoveAll(); - if (recommendswitchBtn.IsSelected) - { - scenehorizontalScrol.Height = Application.GetRealHeight(246); - Yheight = 20; - for (int i = 1; i < 4; i++) - { + #endregion - var frameLayout = new FrameLayout - { - Width = Application.GetMinRealAverage(369 + 46), - Height = Application.GetMinRealAverage(246), - }; - scenehorizontalScrol.AddChidren(frameLayout); - var logiciocnBtn = new Button - { - Width = Application.GetMinRealAverage(369), - Height = Application.GetMinRealAverage(246), - UnSelectedImagePath = "ZigeeLogic/" + i + ".png", - Tag = i, - }; - frameLayout.AddChidren(logiciocnBtn); - - var logicnameBtn = new Button - { - Width = Application.GetMinRealAverage(250), - Height = Application.GetMinRealAverage(80), - X = Application.GetRealWidth(23), - Y = Application.GetRealHeight(246 - 23 - 80), - TextAlignment = TextAlignment.CenterLeft, - TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor, - }; - frameLayout.AddChidren(logicnameBtn); - - if (i == 1) - { - logicnameBtn.Text = Language.StringByID(MyInternationalizationString.onlight); - } - else if (i == 2) - { - logicnameBtn.Text = Language.StringByID(MyInternationalizationString.offlight); - } - else if (i == 3) - { - logicnameBtn.Text = Language.StringByID(MyInternationalizationString.automation1); - } - - - EventHandler<MouseEventArgs> iconclick = (sender1, e1) => - { - Common.Logic.CurrentLogic = new Common.Logic(); - Common.Logic.CurrentLogic.IsEnable = 1;//榛樿涓哄紑 - if (logiciocnBtn.Tag.ToString() == "3") - { - Common.Logic.CurrentLogic.LogicName = logicnameBtn.Text;// Language.StringByID(MyInternationalizationString.automation1); - var addLogicPage = new Logic.AddLogicPage(); - HomePage.Instance.AddChidren(addLogicPage); - HomePage.Instance.PageIndex += 1; - addLogicPage.Show(); - } - else - { - Common.Logic.LogicDviceList.Clear(); - if (Common.Logic.LogicDviceList.Count == 0) - { - Common.Logic.LogicDviceList.AddRange(LocalDevice.Current.listAllDevice.ToArray()); - } - Common.Logic.CurrentLogic.LogicType = 2; - Common.Logic.CurrentLogic.LogicName = logicnameBtn.Text; - Logic.TemplatePage templatePage = new Logic.TemplatePage(); - Logic.TemplatePage.s = logiciocnBtn.Tag.ToString(); - HomePage.Instance.AddChidren(templatePage); - HomePage.Instance.PageIndex += 1; - templatePage.Show(); - } - }; - logiciocnBtn.MouseUpEventHandler += iconclick; - logicnameBtn.MouseUpEventHandler += iconclick; - } - } - else - { - scenehorizontalScrol.Height = Application.GetRealHeight(0); - Yheight = 0; - } - logicScrolView.Y = scenehorizontalScrol.Bottom + Yheight; - logicScrolView.Height = functionSceneBodyView.Height - bjFrameLayout.Height - bjFrameLayout.Y - scenehorizontalScrol.Height - Application.GetRealHeight(30) - Yheight; - Automationview(logicScrolView); - }; + #region 鈼� 鑷姩鍖朹_________________________ CommonPage.Loading.Start(); if (Common.Logic.LogicList.Count == 0) @@ -1991,13 +1973,10 @@ if (Idlist.Count != 0) { var listlogic = await Logic.Send.ReadList(Idlist.Count); - for (int i = 0; i < Idlist.Count; i++) + foreach (var LogicId in Idlist) { - var LogicId = Idlist[i]; - //foreach鍙兘闆嗗悎宸茶淇敼,鏋氫妇鎿嶄綔鍙兘涓嶄細鎵ц,鍙兘鍑虹幇宕╂簝(寤鸿for)銆� - for (int j = 0; j < listlogic.Count; j++) + foreach (var logic in listlogic) { - var logic = listlogic[j]; if (logic.LogicId == LogicId) { Common.Logic.LogicList.Add(logic); @@ -2006,6 +1985,7 @@ } } } + //鑷姩鍖� Automationview(logicScrolView); CommonPage.Loading.Hide(); @@ -2020,87 +2000,68 @@ refresview.RemoveAll(); foreach (var logic in Common.Logic.LogicList) { - var bjRow = new RowLayout + var logicrowlayout = new RowLayout { - Width = Application.GetRealWidth(1080 - 58), - Height = Application.GetRealHeight(220), - LineColor = ZigbeeColor.Current.LogicBackgroundColor, - BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, - + Height = Application.GetRealHeight(180), + LineColor = ZigbeeColor.Current.LogicLineColor, }; - refresview.AddChidren(bjRow); + refresview.AddChidren(logicrowlayout); - var logicRowlayout = new RowLayout + var btnname = new Button { - Y = Application.GetRealHeight(220 - 190), - Height = Application.GetRealHeight(190), - Width = Application.GetRealWidth(1080 - 58 - 46), - LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, - X = Application.GetRealWidth(46), - }; - bjRow.AddChidren(logicRowlayout); - - var logicnameBtn = new Button - { - Height = Application.GetRealHeight(58), - Width = Application.GetRealWidth(350), + //Text = "閫昏緫涓�", Text = logic.LogicName, - X = Application.GetRealWidth(12), + X = Application.GetRealWidth(50), TextAlignment = TextAlignment.CenterLeft, + Gravity = Gravity.CenterVertical, TextColor = ZigbeeColor.Current.LogicTextBlackColor, }; - logicRowlayout.AddChidren(logicnameBtn); + logicrowlayout.AddChidren(btnname); - - var logicswitchBtn = new Button + var btnswitch = new Button { - Width = Application.GetMinRealAverage(104), - Height = Application.GetMinRealAverage(63), - UnSelectedImagePath = "ZigeeLogic/logicclose.png", - SelectedImagePath = "ZigeeLogic/logicopen.png", - X = logicRowlayout.Width - Application.GetRealWidth(104 + 58), - Y = Application.GetRealHeight(58 + 30 + 9), + Width = Application.GetMinRealAverage(183), + Height = Application.GetMinRealAverage(123), + UnSelectedImagePath = "ZigeeLogic/Switch.png", + SelectedImagePath = "ZigeeLogic/SwitchSelected.png", + X = Application.GetRealWidth(1080 - 200), + Gravity = Gravity.CenterVertical, }; - logicRowlayout.AddChidren(logicswitchBtn); + logicrowlayout.AddChidren(btnswitch); - - - logicswitchBtn.MouseUpEventHandler += (sender1, e1) => + btnswitch.MouseUpEventHandler += (sender1, e1) => { - logicswitchBtn.IsSelected = !logicswitchBtn.IsSelected; - if (logicswitchBtn.IsSelected) + btnswitch.IsSelected = !btnswitch.IsSelected; + if (btnswitch.IsSelected) { //閫昏緫寮� logic.IsEnable = 1; - StatusColor(logic, logicRowlayout, 1); } else { //閫昏緫鍏� logic.IsEnable = 0; - StatusColor(logic, logicRowlayout, 0); } Logic.Send.LogicControlSwitch(logic); //Logic.Send.AddModifyLogic(logic); }; if (logic.IsEnable == 1) { - logicswitchBtn.IsSelected = true; - StatusColor(logic, logicRowlayout, 1); + btnswitch.IsSelected = true; } else if (logic.IsEnable == 0) { - logicswitchBtn.IsSelected = false; - StatusColor(logic, logicRowlayout, 0); + btnswitch.IsSelected = false; } ///缂栬緫 var edit = new Button { - BackgroundColor = ZigbeeColor.Current.LogicEditBlackColor1, + //TextID = MyInternationalizationString.Musicdel + BackgroundColor = 0xFF00aaf0, Text = Language.StringByID(MyInternationalizationString.edit), - TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor, + TextColor = ZigbeeColor.Current.LogicTextBlackColor, }; - bjRow.AddRightView(edit); + logicrowlayout.AddRightView(edit); edit.MouseUpEventHandler += (sender, e) => { Common.Logic.LogicDviceList.Clear(); @@ -2110,9 +2071,9 @@ } Common.Logic.CurrentLogic = logic; var logicCommunalPage = new Logic.LogicCommunalPage(); - HomePage.Instance.AddChidren(logicCommunalPage); - HomePage.Instance.PageIndex += 1; - logicCommunalPage.Show(() => { logicnameBtn.Text = logic.LogicName; Automationview(refresview); }); + UserView.HomePage.Instance.AddChidren(logicCommunalPage); + UserView.HomePage.Instance.PageIndex += 1; + logicCommunalPage.Show(() => { btnname.Text = logic.LogicName; Automationview(refresview); }); }; @@ -2120,26 +2081,16 @@ ///鍒犻櫎 var del = new Button { - BackgroundColor = ZigbeeColor.Current.LogicDelBlackColor1, + //TextID = MyInternationalizationString.Musicdel, + BackgroundColor = 0xFFFF0000, Text = Language.StringByID(MyInternationalizationString.del), - TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor, }; - bjRow.AddRightView(del); + logicrowlayout.AddRightView(del); del.MouseUpEventHandler += (sender, e) => { - var alert = new Alert(Language.StringByID(MyInternationalizationString.tip), Language.StringByID(MyInternationalizationString.doyouwanttodelete), - Language.StringByID(MyInternationalizationString.cancel), Language.StringByID(MyInternationalizationString.confrim)); - alert.ResultEventHandler += (sender1, e1) => - { - if (e1) - { - Common.Logic.LogicList.Remove(logic); - Automationview(refresview); - Logic.Send.DelLogic(logic.LogicId); - } - }; - alert.Show(); - + Common.Logic.LogicList.Remove(logic); + Automationview(refresview); + Logic.Send.DelLogic(logic.LogicId); }; } @@ -2220,399 +2171,5 @@ } #endregion - - private void StatusColor(Common.Logic logic, RowLayout logicRowlayout, int intvalue) - { - - var logictimeBtn = new Button - { - Height = Application.GetRealHeight(58), - Width = logicRowlayout.Width - Application.GetRealWidth(58 + 12 + 350), - X = Application.GetRealWidth(365), - TextAlignment = TextAlignment.CenterRight, - TextColor = ZigbeeColor.Current.LogicListWeekTextColor, - }; - logicRowlayout.AddChidren(logictimeBtn); - - ///鏄剧ず鎵ц鍛ㄦ湡 - switch (logic.TimeAttribute.Repeat) - { - ///0:鍙墽琛屼竴娆★紝鎵ц鍚嶪sEnable鍊肩疆;1,浠婂勾鍐呮墽琛�;2锛氭瘡澶╂墽琛�;3锛氭瘡鏈堟墽琛�;4锛氭瘡骞存墽琛�;5锛氬懆閲嶅銆� - case 0: - { - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.executeonce); - }; break; - case 1: { }; break; - case 2: - { - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.everyday); - }; break; - case 3: - { - - string len = "", value = ""; - var stringvalue = Convert.ToString(logic.TimeAttribute.MonthDate, 2); - var str = stringvalue.Insert(0, new string('0', 32 - stringvalue.Length)); - for (int j = 31; j >= 0; j--) - { - len += str.Substring(j, 1); - } - for (int j = 0; j < len.Length; j++) - { - var strvalue = len.Substring(j, 1); - if (strvalue == "1") - { - value += (j + 1).ToString() + ","; - } - } - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.monthly) + value.TrimEnd(',') + Language.StringByID(MyInternationalizationString.day); - - }; break; - case 4: - { - - Dictionary<int, int> dictionary = new Dictionary<int, int>(); - ///鎵惧嚭鎵ц鐨勬湀浠藉拰澶╂暟 - if (logic.TimeAttribute.SelectMonDate.Count != 0) - { - for (int i = 0; i < logic.TimeAttribute.SelectMonDate.Count; i++) - { - var dayvalue = logic.TimeAttribute.SelectMonDate[i]; - if (dayvalue != 0) - { - dictionary.Add(i + 1, dayvalue); - } - } - } - if (dictionary.Count != 0 && dictionary.Count == 1) - { - string len = "", leng = ""; - int minvalue = 0, Maximum = 0; - foreach (var value in dictionary) - { - ///鍙栧嚭鏈堜唤 - var month = value.Key; - ///鍙栧嚭鏃ユ暟 - var day = value.Value; - var maxvalue = Convert.ToString(day, 2); - var str = maxvalue.Insert(0, new string('0', 32 - maxvalue.Length)); - for (int j = 31; j >= 0; j--) - { - len += str.Substring(j, 1); - } - - for (int j = 0; j < len.Length; j++) - { - var strvalue = len.Substring(j, 1); - if (strvalue == "1") - { - minvalue = j + 1; - break; - } - } - for (int j = 0; j < len.Length; j++) - { - var strvalue = len.Substring(j, 1); - if (strvalue == "1") - { - Maximum = j + 1; - } - } - - if (month.ToString().Length < 2) - { - leng = "0" + month.ToString(); - } - else - { - leng = month.ToString(); - } - if (minvalue == Maximum) - { - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.everyyear) + leng + "/" + (minvalue.ToString().Length < 2 ? "0" + minvalue.ToString() : minvalue.ToString()); - } - else - { - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.everyyear) + leng + "/" + (minvalue.ToString().Length < 2 ? "0" + minvalue.ToString() : minvalue.ToString()) + "-" + leng + "/" + (Maximum.ToString().Length < 2 ? "0" + Maximum.ToString() : Maximum.ToString()); - } - } - - } - else - { - int b = 0; - string stringtext = ""; - foreach (var value in dictionary) - { - string len = "", leng = ""; - int minvalue = 0, Maximum = 0; - ///鍙栧嚭鏈堜唤 - var month = value.Key; - ///鍙栧嚭鏃ユ暟 - var day = value.Value; - var maxvalue = Convert.ToString(day, 2); - var str = maxvalue.Insert(0, new string('0', 32 - maxvalue.Length)); - for (int j = 31; j >= 0; j--) - { - len += str.Substring(j, 1); - } - - - if (month.ToString().Length < 2) - { - leng = "0" + month.ToString(); - } - else - { - leng = month.ToString(); - } - - - - if (b == 0) - { - for (int j = 0; j < len.Length; j++) - { - var strvalue = len.Substring(j, 1); - if (strvalue == "1") - { - minvalue = j + 1; - break; - } - } - stringtext += leng + "/" + (minvalue.ToString().Length < 2 ? "0" + minvalue.ToString() : minvalue.ToString()) + "-"; - - } - - if (b == dictionary.Count - 1) - { - for (int j = 0; j < len.Length; j++) - { - var strvalue = len.Substring(j, 1); - if (strvalue == "1") - { - Maximum = j + 1; - } - } - stringtext += leng + "/" + (Maximum.ToString().Length < 2 ? "0" + Maximum.ToString() : Maximum.ToString()); - - } - b++; - } - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.everyyear) + stringtext; - } - - }; break; - case 5: - { - string len = "", text = ""; - List<int> listvalueInt = new List<int>(); - listvalueInt.Clear(); - var maxvalue = Convert.ToString(logic.TimeAttribute.WeekDay, 2); - var str = maxvalue.Insert(0, new string('0', 8 - maxvalue.Length)); - for (int j = 7; j >= 0; j--) - { - len += str.Substring(j, 1); - } - - for (int j = 0; j < len.Length; j++) - { - var strvalue = len.Substring(j, 1); - if (strvalue == "1") - { - listvalueInt.Add(j + 1); - - - if ((j + 1) == 1) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.mon1) + ","; - //text += Language.StringByID(MyInternationalizationString.mon) + ","; - } - else if ((j + 1) == 2) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.tue1) + ","; - //text += Language.StringByID(MyInternationalizationString.tue) + ","; - } - else if ((j + 1) == 3) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.wed1) + ","; - //text += Language.StringByID(MyInternationalizationString.wed) + ","; - } - else if ((j + 1) == 4) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.thu1) + ","; - //text += Language.StringByID(MyInternationalizationString.thu) + ","; - } - else if ((j + 1) == 5) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.frl1) + ","; - //text += Language.StringByID(MyInternationalizationString.frl) + ","; - } - else if ((j + 1) == 6) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.sat1) + ","; - //text += Language.StringByID(MyInternationalizationString.sat) + ","; - } - else if ((j + 1) == 7) - { - text += Language.StringByID(MyInternationalizationString.week1) + Language.StringByID(MyInternationalizationString.sun1) + ","; - //text += Language.StringByID(MyInternationalizationString.sun) + ","; - } - - - } - } - //鏆傛椂闅愯棌鎺夛紝闇�瑕佹樉绀哄懆鏈拰宸ヤ綔鏃ュ啀鏀惧紑锛� - //if (listvalueInt.Count == 5 && !listvalueInt.Contains(6) && !listvalueInt.Contains(7)) - //{ - // btndisplaycycle.Text = Language.StringByID(MyInternationalizationString.workingday); - //} - //else if (listvalueInt.Count == 2 && listvalueInt.Contains(6) && listvalueInt.Contains(7)) - //{ - // btndisplaycycle.Text = Language.StringByID(MyInternationalizationString.weekend); - //} - //else if (listvalueInt.Count == 7) - //{ - // btndisplaycycle.Text = Language.StringByID(MyInternationalizationString.everyday); - //} - //else - //{ - // btndisplaycycle.Text = Language.StringByID(MyInternationalizationString.week1) + text.Replace(Language.StringByID(MyInternationalizationString.week1), "").TrimEnd(','); - //} - logictimeBtn.Text = Language.StringByID(MyInternationalizationString.week1) + text.Replace(Language.StringByID(MyInternationalizationString.week1), "").TrimEnd(','); - //btndisplaycycle.Text = text.TrimEnd(','); - }; break; - } - - List<string> indexlist = new List<string>(); - List<string> iconIndexlist = new List<string>(); - for (int i = 0; i < logic.Actions.Count; i++) - { - var linkType = logic.Actions[i]["LinkType"].ToString(); - var d = indexlist.Find((value) => { return value == linkType; }); - if (d == null) - { - indexlist.Add(linkType); - } - } - if (indexlist.Contains("0")) - { - iconIndexlist.Add("0"); - } - if (indexlist.Contains("2")) - { - iconIndexlist.Add("2"); - } - if (indexlist.Contains("6")) - { - iconIndexlist.Add("6"); - } - if (indexlist.Contains("7")) - { - iconIndexlist.Add("7"); - } - for (int i = 0; i < iconIndexlist.Count; i++) - { - var iconindex = iconIndexlist[i]; - var typebjBtn = new FrameLayout - { - Width = Application.GetRealWidth(82), - Height = Application.GetRealHeight(82), - X = Application.GetRealWidth(12 + (12 + 82 + 45 + 12) * i), - Y = Application.GetRealHeight(58 + 30), - Radius = (uint)Application.GetRealHeight(41), - BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, - }; - logicRowlayout.AddChidren(typebjBtn); - - var typeIconBtn = new Button - { - Width = Application.GetRealWidth(58), - Height = Application.GetRealHeight(58), - Gravity = Gravity.Center, - - }; - typebjBtn.AddChidren(typeIconBtn); - - var connectIconBtn = new Button - { - Y = typebjBtn.Y + Application.GetRealHeight(35), - X = Application.GetRealWidth((12 + 82 + 12) + (12 + 45 + 82 + 12) * i), - Width = Application.GetRealWidth(48), - Height = Application.GetRealHeight(15), - UnSelectedImagePath = "ZigeeLogic/connect.png", - }; - logicRowlayout.AddChidren(connectIconBtn); - if (iconIndexlist.Count - 1 == i) - { - connectIconBtn.Visible = false; - } - switch (iconindex) - { - case "0": - { - if (intvalue == 1) - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/function1.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicFunction1Color; - } - else - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/nofunction.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; - } - } - break; - case "2": - { - - if (intvalue == 1) - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/scene1.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicScene1Color; - } - else - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/noscene.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; - } - - } - break; - case "6": - { - if (intvalue == 1) - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/security1.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicSecurity1Color; - - } - else - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/nosecurity.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; - } - - } - break; - case "7": - { - if (intvalue == 1) - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/delay1.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicDelay1Color; - } - else - { - typeIconBtn.UnSelectedImagePath = "ZigeeLogic/nodelay.png"; - typebjBtn.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; - } - - } - break; - - } - } - } } } -- Gitblit v1.8.0