From 631f94758c3cb42abcdda8094e77895f376eff16 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期一, 11 一月 2021 14:53:43 +0800 Subject: [PATCH] 2021-1-12-3 --- HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs | 292 ++++++++++++++++++++++++++++++++------------------------- 1 files changed, 164 insertions(+), 128 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs index 60cbac3..3e62c97 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs @@ -71,7 +71,7 @@ { bodyView = this; roomsShowed = new List<Room>(); - roomsShowed.AddRange(DB_ResidenceData.Rooms); + roomsShowed.AddRange(SpatialInfo.CurrentSpatial.RoomList); } public void LoadPage() @@ -177,7 +177,7 @@ TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, - Text = DB_ResidenceData.residenceData.CurFoor, + Text = DB_ResidenceData.Instance.CurFloor.roomName, }; roomFloorChangeView.AddChidren(btnFloor); /// <summary> @@ -226,7 +226,7 @@ Width = Application.GetRealWidth(343), Height = Application.GetRealWidth(192),//2020-12-01 鎴块棿鍥剧墖姣斾緥鏀瑰洖16:9 Radius = (uint)Application.GetRealWidth(12), - Tag = room.uid, + Tag = room.roomId, }; roomListView.AddChidren(roomView); @@ -234,10 +234,13 @@ { Width = Application.GetRealWidth(343), Height = Application.GetRealWidth(192),//2020-12-01 鎴块棿鍥剧墖姣斾緥鏀瑰洖16:9 - ImagePath = room.backgroundImage, + //ImagePath = room.backgroundImage, Radius = (uint)Application.GetRealWidth(12), }; roomView.AddChidren(roomViewbg); + + //2020-12-03 淇敼鍥剧墖鍔犺浇鏂规硶 + ImageUtlis.Current.LoadLocalOrNetworkImages(room.backgroundImage, roomViewbg); var roomViewbgColor = new Button() { @@ -260,88 +263,88 @@ roomView.AddChidren(btnFloorAndRoomName); #region 鐜鏁版嵁 - var environmentalView = new FrameLayout() - { - Y = Application.GetRealHeight(2) + btnFloorAndRoomName.Bottom, - Height = Application.GetRealHeight(32), - Tag = "EnvironmentalView", - }; - roomView.AddChidren(environmentalView); + //var environmentalView = new FrameLayout() + //{ + // Y = Application.GetRealHeight(2) + btnFloorAndRoomName.Bottom, + // Height = Application.GetRealHeight(32), + // Tag = "EnvironmentalView", + //}; + //roomView.AddChidren(environmentalView); - Button btnTempIcon = new Button() - { - X = Application.GetRealWidth(12), - Gravity = Gravity.CenterVertical, - Width = Application.GetMinRealAverage(16), - Height = Application.GetMinRealAverage(16), - UnSelectedImagePath = "Public/DeviceInfoIcon/TempIcon.png", - }; - environmentalView.AddChidren(btnTempIcon); + //Button btnTempIcon = new Button() + //{ + // X = Application.GetRealWidth(12), + // Gravity = Gravity.CenterVertical, + // Width = Application.GetMinRealAverage(16), + // Height = Application.GetMinRealAverage(16), + // UnSelectedImagePath = "Public/DeviceInfoIcon/TempIcon.png", + //}; + //environmentalView.AddChidren(btnTempIcon); - var btnTempValues = new Button() - { - X = btnTempIcon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), - Gravity = Gravity.CenterVertical, - TextColor = CSS_Color.MainBackgroundColor, - TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - Text = "--掳", - TextAlignment = TextAlignment.CenterLeft, - Tag = "TempValues" - }; - environmentalView.AddChidren(btnTempValues); + //var btnTempValues = new Button() + //{ + // X = btnTempIcon.Right + Application.GetRealWidth(4), + // Width = Application.GetRealWidth(30), + // Gravity = Gravity.CenterVertical, + // TextColor = CSS_Color.MainBackgroundColor, + // TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + // Text = "--掳", + // TextAlignment = TextAlignment.CenterLeft, + // Tag = "TempValues" + //}; + //environmentalView.AddChidren(btnTempValues); - Button btnHumidityIcon = new Button() - { - X = btnTempValues.Right + Application.GetRealWidth(2), - Gravity = Gravity.CenterVertical, - Width = Application.GetMinRealAverage(16), - Height = Application.GetMinRealAverage(16), - UnSelectedImagePath = "Public/DeviceInfoIcon/HumidityIcon.png", - }; - environmentalView.AddChidren(btnHumidityIcon); + //Button btnHumidityIcon = new Button() + //{ + // X = btnTempValues.Right + Application.GetRealWidth(2), + // Gravity = Gravity.CenterVertical, + // Width = Application.GetMinRealAverage(16), + // Height = Application.GetMinRealAverage(16), + // UnSelectedImagePath = "Public/DeviceInfoIcon/HumidityIcon.png", + //}; + //environmentalView.AddChidren(btnHumidityIcon); - var btnHumidityValues = new Button() - { - X = btnHumidityIcon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), - Gravity = Gravity.CenterVertical, - TextColor = CSS_Color.MainBackgroundColor, - TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - Text = "--%", - TextAlignment = TextAlignment.CenterLeft, - Tag = "HumidityValues" - }; - environmentalView.AddChidren(btnHumidityValues); + //var btnHumidityValues = new Button() + //{ + // X = btnHumidityIcon.Right + Application.GetRealWidth(4), + // Width = Application.GetRealWidth(30), + // Gravity = Gravity.CenterVertical, + // TextColor = CSS_Color.MainBackgroundColor, + // TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + // Text = "--%", + // TextAlignment = TextAlignment.CenterLeft, + // Tag = "HumidityValues" + //}; + //environmentalView.AddChidren(btnHumidityValues); - Button btnPm25Icon = new Button() - { - X = btnHumidityValues.Right + Application.GetRealWidth(2), - Gravity = Gravity.CenterVertical, - Width = Application.GetMinRealAverage(16), - Height = Application.GetMinRealAverage(16), - UnSelectedImagePath = "Public/DeviceInfoIcon/Pm25Icon.png", - }; - environmentalView.AddChidren(btnPm25Icon); + //Button btnPm25Icon = new Button() + //{ + // X = btnHumidityValues.Right + Application.GetRealWidth(2), + // Gravity = Gravity.CenterVertical, + // Width = Application.GetMinRealAverage(16), + // Height = Application.GetMinRealAverage(16), + // UnSelectedImagePath = "Public/DeviceInfoIcon/Pm25Icon.png", + //}; + //environmentalView.AddChidren(btnPm25Icon); - var btnPm25Values = new Button() - { - X = btnPm25Icon.Right + Application.GetRealWidth(4), - Width = Application.GetRealWidth(30), - Gravity = Gravity.CenterVertical, - TextColor = CSS_Color.MainBackgroundColor, - TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - Text = "--", - TextAlignment = TextAlignment.CenterLeft, - Tag = "Pm25Values" - }; - environmentalView.AddChidren(btnPm25Values); - roomView.AddChidren(environmentalView); + //var btnPm25Values = new Button() + //{ + // X = btnPm25Icon.Right + Application.GetRealWidth(4), + // Width = Application.GetRealWidth(30), + // Gravity = Gravity.CenterVertical, + // TextColor = CSS_Color.MainBackgroundColor, + // TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + // Text = "--", + // TextAlignment = TextAlignment.CenterLeft, + // Tag = "Pm25Values" + //}; + //environmentalView.AddChidren(btnPm25Values); + //roomView.AddChidren(environmentalView); #endregion var btnAllClose = new Button() { X = Application.GetRealWidth(282), - Y = Application.GetRealHeight(126), + Y = Application.GetRealWidth(126), Width = Application.GetMinRealAverage(58), Height = Application.GetMinRealAverage(58), UnSelectedImagePath = "Classification/Room/AllCloseIcon.png", @@ -359,11 +362,25 @@ roomViewbgColor.MouseUpEventHandler += (sender, e) => { - Action ReloadRoomName = () => { + Action ReloadRoomName = () => + { btnFloorAndRoomName.Text = room.floorName + room.roomName; }; - var view = new RoomPage(room, ReloadRoomName); + //鎴块棿鍒犻櫎浜嬩欢 + Action deleteAction = () => + { + roomView.RemoveFromParent(); + }; + + //鎴块棿鑳屾櫙鍥句慨鏀逛簨浠跺洖璋� + Action modifyImageAction = () => + { + //roomViewbg.ImagePath = room.backgroundImage; + ImageUtlis.Current.LoadLocalOrNetworkImages(room.backgroundImage, roomViewbg); + }; + + var view = new RoomPage(room, ReloadRoomName, deleteAction, modifyImageAction); MainPage.BasePageView.AddChidren(view); view.LoadPage(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; @@ -416,7 +433,7 @@ var functionCategoryCount = 0; - foreach (var item in DB_ResidenceData.residenceData.functionTypeList) + foreach (var item in DB_ResidenceData.Instance.functionTypeList) { int functionCount = 0; int functionOnCount = 0; @@ -424,41 +441,41 @@ { case ShowFunction.Light: #region Light - functionCount = DB_ResidenceData.functionList.lights.Count; - functionOnCount = DB_ResidenceData.functionList.lights.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.lights.Count; + functionOnCount = FunctionList.List.lights.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; #endregion break; case ShowFunction.AC: #region AC - functionCount = DB_ResidenceData.functionList.aCs.Count; - functionOnCount = DB_ResidenceData.functionList.aCs.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.aCs.Count; + functionOnCount = FunctionList.List.aCs.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; #endregion break; case ShowFunction.Curtain: #region Curtain - functionCount = DB_ResidenceData.functionList.curtains.Count; - functionOnCount = DB_ResidenceData.functionList.curtains.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.curtains.Count; + functionOnCount = FunctionList.List.curtains.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; #endregion break; case ShowFunction.FloorHeating: #region 鍦扮儹 - functionCount = DB_ResidenceData.functionList.floorHeatings.Count; - functionOnCount = DB_ResidenceData.functionList.floorHeatings.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.floorHeatings.Count; + functionOnCount = FunctionList.List.floorHeatings.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; #endregion break; case ShowFunction.DoorLock: break; case ShowFunction.Electric: #region 鐢靛櫒 - functionCount = DB_ResidenceData.functionList.electricals.Count; - functionOnCount = DB_ResidenceData.functionList.electricals.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.electricals.Count; + functionOnCount = FunctionList.List.electricals.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; #endregion break; case ShowFunction.EnergyMonitoring: break; case ShowFunction.Environmental: #region 鐜鏁版嵁 - functionCount = DB_ResidenceData.functionList.sensorsEnvironmentalScience.Count; + functionCount = FunctionList.List.sensorsEnvironmentalScience.Count; #endregion break; case ShowFunction.FreshAir: @@ -480,10 +497,29 @@ if (functionCount == 0 && item != ShowFunction.Music) { - //continue; + continue; } functionCategoryCount++; + //FunctionType ft = FunctionType.A31Music + //switch (item) + //{ + // case SPK.FloorHeatStandard: + // break; + // case SPK.AcStandard: + // break; + // case SPK.CurtainTrietex: + // case SPK.CurtainSwitch: + // case SPK.CurtainRoller: + // break; + // case SPK.LightSwitch: + // case SPK.LightDimming: + // case SPK.LightRGB: + // case SPK.LightCCT: + // break; + // case SPK.ElectricSocket: + // break; + //} FrameLayout functionView = new FrameLayout() { Height = Application.GetRealWidth(161), @@ -543,8 +579,8 @@ case ShowFunction.Light: #region Light btnName.TextID = StringId.Lights; - functionCount = DB_ResidenceData.functionList.lights.Count; - functionOnCount = DB_ResidenceData.functionList.lights.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.lights.Count; + functionOnCount = FunctionList.List.lights.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; Button btnLightPower = new Button() { X = Application.GetRealWidth(120), @@ -560,7 +596,7 @@ btnLightPower.MouseUpEventHandler = (sender, e) => { - LoadEvent_SwitchFunction(btnLightPower, item); + LoadEvent_SwitchFunction(btnLightPower, item, functionView); }; functionPageTitleId = StringId.Lights; @@ -569,8 +605,8 @@ case ShowFunction.AC: #region AC btnName.TextID = StringId.AC; - functionCount = DB_ResidenceData.functionList.aCs.Count; - functionOnCount = DB_ResidenceData.functionList.aCs.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.aCs.Count; + functionOnCount = FunctionList.List.aCs.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; Button btnAcPower = new Button() { X = Application.GetRealWidth(120), @@ -585,7 +621,7 @@ functionView.AddChidren(btnAcPower); btnAcPower.MouseUpEventHandler = (sender, e) => { - LoadEvent_SwitchFunction(btnAcPower, item); + LoadEvent_SwitchFunction(btnAcPower, item, functionView); }; functionPageTitleId = StringId.AC; #endregion @@ -593,8 +629,8 @@ case ShowFunction.Curtain: #region Curtain btnName.TextID = StringId.Curtain; - functionCount = DB_ResidenceData.functionList.curtains.Count; - functionOnCount = DB_ResidenceData.functionList.curtains.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.curtains.Count; + functionOnCount = FunctionList.List.curtains.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; Button btnClose; btnClose = new Button() { @@ -604,8 +640,7 @@ Height = Application.GetRealWidth(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png", - //Tag = item + "_AllControl", - IsSelected = false + IsSelected = !DB_ResidenceData.Instance.GlobalCurtainStatus, }; functionView.AddChidren(btnClose); @@ -618,10 +653,10 @@ Height = Application.GetRealWidth(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png", - IsSelected = true, + IsSelected = DB_ResidenceData.Instance.GlobalCurtainStatus, }; functionView.AddChidren(btnOpen); - LoadEvent_CurtainSwitch(btnClose, btnOpen); + LoadEvent_CurtainSwitch(btnClose, btnOpen, functionView); functionPageTitleId = StringId.Curtain; #endregion @@ -629,8 +664,8 @@ case ShowFunction.FloorHeating: #region 鍦扮儹 btnName.TextID = StringId.FloorHeating; - functionCount = DB_ResidenceData.functionList.floorHeatings.Count; - functionOnCount = DB_ResidenceData.functionList.floorHeatings.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.floorHeatings.Count; + functionOnCount = FunctionList.List.floorHeatings.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; Button btnFhPower = new Button() { X = Application.GetRealWidth(120), @@ -645,7 +680,7 @@ functionView.AddChidren(btnFhPower); btnFhPower.MouseUpEventHandler = (sender, e) => { - LoadEvent_SwitchFunction(btnFhPower, item); + LoadEvent_SwitchFunction(btnFhPower, item, functionView); }; functionPageTitleId = StringId.FloorHeating; #endregion @@ -656,8 +691,8 @@ case ShowFunction.Electric: #region 鐢靛櫒 btnName.TextID = StringId.Electric; - functionCount = DB_ResidenceData.functionList.electricals.Count; - functionOnCount = DB_ResidenceData.functionList.electricals.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; + functionCount = FunctionList.List.electricals.Count; + functionOnCount = FunctionList.List.electricals.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; Button btnElectricPower = new Button() { X = Application.GetRealWidth(120), @@ -672,7 +707,7 @@ functionView.AddChidren(btnElectricPower); btnElectricPower.MouseUpEventHandler = (sender, e) => { - LoadEvent_SwitchFunction(btnElectricPower, item); + LoadEvent_SwitchFunction(btnElectricPower, item, functionView); }; functionPageTitleId = StringId.Electric; #endregion @@ -737,7 +772,7 @@ { Button btnFunctionCount = new Button() { - X = Application.GetRealWidth(16) + Application.GetRealWidth(7 * functionCount.ToString().Length), + X = Application.GetRealWidth(17) + Application.GetRealWidth(7 * functionCount.ToString().Length), Y = btnName.Bottom, Width = Application.GetRealWidth(120), Height = Application.GetRealHeight(24), @@ -751,7 +786,7 @@ { X = Application.GetRealWidth(16), Y = btnName.Bottom, - Width = Application.GetRealWidth(12 * functionCount.ToString().Length), + Width = Application.GetRealWidth(14 * functionCount.ToString().Length), Height = Application.GetRealHeight(24), TextColor = CSS_Color.MainColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, @@ -810,10 +845,10 @@ }; dispalyView.AddChidren(contentView); - if (Floor.InsFloor.Floors.Count < 2) + if (SpatialInfo.CurrentSpatial.FloorList.Count < 2) { } - else if (Floor.InsFloor.Floors.Count < 3) + else if (SpatialInfo.CurrentSpatial.FloorList.Count < 3) { dispalyView = new FrameLayout() { @@ -828,7 +863,7 @@ contentView.Height = Application.GetRealHeight(45 * 3); dispalyView.AddChidren(contentView); } - else if (Floor.InsFloor.Floors.Count < 4) + else if (SpatialInfo.CurrentSpatial.FloorList.Count < 4) { dispalyView = new FrameLayout() { @@ -861,17 +896,18 @@ } - List<string> chooseList = new List<string>(); - chooseList.Add(Language.StringByID(StringId.All)); - foreach (var f in Floor.InsFloor.Floors) + List<SpatialInfo> chooseList = new List<SpatialInfo>(); + chooseList.Add(new SpatialInfo() { roomId = "", roomName = Language.StringByID(StringId.All) }); + foreach (var f in SpatialInfo.CurrentSpatial.FloorList) { - chooseList.Add(f.roomName); + chooseList.Add(f); } foreach (var floor in chooseList) { - if (floor != Language.StringByID(StringId.All)) + if (!string.IsNullOrEmpty( floor.roomId))// != Language.StringByID(StringId.All)) { + //---鍒嗗壊绾� contentView.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, @@ -888,28 +924,28 @@ TextAlignment = TextAlignment.CenterLeft, TextColor = CSS_Color.FirstLevelTitleColor, SelectedTextColor = CSS_Color.MainColor, - Text = floor, + Text = floor.roomName, TextSize = CSS_FontSize.SubheadingFontSize, - IsSelected = btnFloor.Text == floor, - IsMoreLines = true, - Tag = floor + IsSelected = floor.roomId == DB_ResidenceData.Instance.ClassificationChooseFloor.roomId, + //IsMoreLines = true, }; contentView.AddChidren(btnHomeName); btnHomeName.MouseUpEventHandler += (senderH, en) => { dialog.Close(); - btnFloor.Text = floor; + btnFloor.Text = floor.roomName; + DB_ResidenceData.Instance.ClassificationChooseFloor = floor; roomsShowed.Clear(); - if (floor == Language.StringByID(StringId.All)) + if (string.IsNullOrEmpty(floor.roomId)) { - roomsShowed.AddRange(DB_ResidenceData.Rooms); + roomsShowed.AddRange(SpatialInfo.CurrentSpatial.RoomList); } else { - foreach (var room in DB_ResidenceData.Rooms) + foreach (var room in SpatialInfo.CurrentSpatial.RoomList) { - if (room.floorName == floor) + if (room.parentId == floor.uid) { roomsShowed.Add(room); } -- Gitblit v1.8.0