From 01c46e7bfe9aa8fb20b29f70c83c03a307af548a Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期二, 22 十二月 2020 16:35:16 +0800 Subject: [PATCH] 2020-12-22 1.更新。 --- HDL_ON/UI/UI2/2-Classification/FunctionPage.cs | 141 ++++++++++++++++++++++++++--------------------- 1 files changed, 78 insertions(+), 63 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs index a30b951..07790c3 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs @@ -1,5 +1,6 @@ 锘縰sing System; using System.Collections.Generic; +using System.Linq; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Shared; @@ -13,14 +14,25 @@ /// </summary> static FrameLayout bodyView; /// <summary> + /// 妤煎眰閫夋嫨涓嬫媺鍥炬爣 + /// </summary> + Button btnFloorDownIcon; + /// <summary> + /// 妤煎眰鏄剧ず + /// </summary> + Button btnFloor; + /// <summary> /// 鍔熻兘鍒楄〃闆嗗悎鏄剧ず鍖哄煙 /// </summary> static VerticalScrolViewLayout functionListView; #endregion + List<Function> functionList; + public FunctionPage() { bodyView = this; + functionList = new List<Function>(); } public void LoadPage(int titleId) @@ -38,10 +50,7 @@ }; bodyView.AddChidren(roomFloorChangeView); #region 鎴块棿椤堕儴鍒囨崲鏄剧ず鍖哄煙 - /// <summary> - /// 妤煎眰閫夋嫨涓嬫媺鍥炬爣 - /// </summary> - var btnFoorDownIcon = new Button() + btnFloorDownIcon = new Button() { Width = Application.GetMinRealAverage(16), Height = Application.GetMinRealAverage(16), @@ -49,22 +58,20 @@ Y = Application.GetRealHeight(18), UnSelectedImagePath = "Public/DownIcon.png", }; - roomFloorChangeView.AddChidren(btnFoorDownIcon); - /// <summary> - /// 妤煎眰鏄剧ず - /// </summary> - var btnFoor = new Button() + roomFloorChangeView.AddChidren(btnFloorDownIcon); + + btnFloor = new Button() { - X = btnFoorDownIcon.Right, + X = btnFloorDownIcon.Right, Y = Application.GetRealHeight(18), Width = Application.GetRealWidth(200), Height = Application.GetMinRealAverage(16), TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextAlignment = TextAlignment.CenterLeft, - Text = OnAppConfig.Instance.CurFoor, + Text = DB_ResidenceData.Instance.CurFloor.roomName, }; - roomFloorChangeView.AddChidren(btnFoor); + roomFloorChangeView.AddChidren(btnFloor); #endregion functionListView = new VerticalScrolViewLayout() @@ -74,57 +81,46 @@ }; bodyView.AddChidren(functionListView); - foreach (var function in DB_ResidenceData.functionList.GetAllFunction()) + if (titleId == StringId.Lights) { - if (titleId == StringId.Lights) - { - if (function.functionCategory != FunctionCategory.Light) - { - continue; - } - } - if (titleId == StringId.AC) - { - if (function.functionType != FunctionType.AC) - { - continue; - } - } - if (titleId == StringId.Curtain) - { - if (function.functionCategory != FunctionCategory.Curtain) - { - continue; - } - } - if(titleId == StringId.FloorHeating) - { - if(function.functionType != FunctionType.FloorHeating ) - { - continue; - } - } - if(titleId == StringId.Electric) - { - if(function.functionType != FunctionType.Socket && - function.functionType != FunctionType.TV && - function.functionType != FunctionType.Fan) - { - continue; - } - } - if (titleId == StringId.EnvironmentalScience) - { + functionList.AddRange(FunctionList.List.lights); + } + else if (titleId == StringId.AC) + { + functionList.AddRange(FunctionList.List.aCs); + } + else if (titleId == StringId.Curtain) + { + functionList.AddRange(FunctionList.List.curtains); + } + else if (titleId == StringId.FloorHeating) + { + functionList.AddRange(FunctionList.List.floorHeatings); + } + else if (titleId == StringId.Electric) + { + functionList.AddRange(FunctionList.List.electricals); + } + else if (titleId == StringId.EnvironmentalScience) + { + functionList.AddRange(FunctionList.List.sensorsEnvironmentalScience); + } + functionList.OrderByDescending(o => o.controlCounter).ToList(); - if (function.functionType != FunctionType.PM25 || - function.functionType != FunctionType.CO2 || - function.functionType != FunctionType.Temp || - function.functionType != FunctionType.TVOC || - function.functionType != FunctionType.Humidity) - { - continue; - } - } + ShowFunctionRow(functionList); + + LoadDialog_ChangeFloor(); + } + + /// <summary> + /// 鍔犺浇鍔熻兘row + /// </summary> + void ShowFunctionRow(List<Function> showList) + { + functionListView.RemoveAll(); + foreach (var function in showList) + { + if (function.functionType == FunctionType.RGB || function.functionType == FunctionType.Dimmer) { var functionDiv = new FunctionControlZone(function) @@ -136,7 +132,7 @@ BorderColor = 0x00FFFFFF, BorderWidth = 1, BackgroundColor = CSS_Color.MainBackgroundColor, - Tag = function.functionCategory.ToString() + "-" + function.functionType + Tag = function.sid }; functionDiv.LoadFunctionDiv(); functionListView.AddChidren(functionDiv); @@ -152,14 +148,33 @@ BorderColor = 0x00FFFFFF, BorderWidth = 1, BackgroundColor = CSS_Color.MainBackgroundColor, - Tag = function.functionCategory.ToString() + "-" + function.functionType + Tag = function.sid }; functionDiv.LoadFunctionDiv(); functionListView.AddChidren(functionDiv); } functionListView.AddChidren(new Button() { Height = Application.GetRealHeight(10) }); } + } + + /// <summary> + /// 浣忓畢鍒楄〃鐐瑰嚮浜嬩欢 + /// </summary> + void LoadDialog_ChangeFloor() + { + string nowSelectId = null; + btnFloor.MouseUpEventHandler += (sender, e) => + { + //鏄剧ず涓嬫媺鍒楄〃 + var form = new FloorRoomSelectPopupView(); + form.ShowDeviceFunctionView(btnFloor, this.functionList, (selectId, listFunc) => + { + nowSelectId = selectId; + //閲嶆柊鍔犺浇鐣岄潰 + ShowFunctionRow(listFunc); + }, nowSelectId); + }; } } } \ No newline at end of file -- Gitblit v1.8.0