From 43b0d5870d528f23ecd6aeceb6cfd4325188b46f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 01 七月 2021 15:50:43 +0800
Subject: [PATCH] Revert "1"

---
 HDL_ON/UI/UI2/2-Classification/FunctionPage.cs |  154 +++++++++++++++++++++++++++++----------------------
 1 files changed, 87 insertions(+), 67 deletions(-)

diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
index 96da5d9..47a64cc 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,61 +81,55 @@
             };
             bodyView.AddChidren(functionListView);
 
-            foreach (var function in DB_ResidenceData.residenceData.functionList.functions)
+            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.GetLightList());
+            }
+            else if (titleId == StringId.AC)
+            {
+                functionList.AddRange(FunctionList.List.GetAcList());
+            }
+            else if (titleId == StringId.Curtain)
+            {
+                functionList.AddRange(FunctionList.List.GetCurtainList());
+            }
+            else if (titleId == StringId.FloorHeating)
+            {
+                functionList.AddRange(FunctionList.List.GetFloorHeatingList());
+            }
+            else if (titleId == StringId.Electric)
+            {
+                functionList.AddRange(FunctionList.List.GetElectricals());
+            }
+            else if (titleId == StringId.EnvironmentalScience)
+            {
+                functionList.AddRange(FunctionList.List.GetEnvirSensorsList());
+            }
+            else if (titleId == StringId.Sensor)
+            {
+                functionList.AddRange(FunctionList.List.GetArmSensorList());
+            }
+            else if (titleId == StringId.FreshAir)
+            {
+                functionList.AddRange(FunctionList.List.GetAirFreshList());
+            }
+            functionList.OrderByDescending(o => o.controlCounter).ToList();
 
-                    if (function.functionType != FunctionType.PM10 ||
-                    function.functionType != FunctionType.PM25 ||
-                    //function.functionType != FunctionType.Noise ||
-                    function.functionType != FunctionType.WindPower ||
-                    function.functionType != FunctionType.CO2 ||
-                    function.functionType != FunctionType.Temp ||
-                    function.functionType != FunctionType.TVOC ||
-                    function.functionType != FunctionType.Humidity)
-                    {
-                        continue;
-                    }
-                }
-                if (function.functionType == FunctionType.RGB || function.functionType == FunctionType.Dimmer)
+            ShowFunctionRow(functionList);
+
+            LoadDialog_ChangeFloor();
+        }
+
+        /// <summary>
+        /// 鍔犺浇鍔熻兘row
+        /// </summary>
+        void ShowFunctionRow(List<Function> showList)
+        {
+            functionListView.RemoveAll();
+            foreach (var function in showList)
+            {
+
+                if (function.spk == SPK.LightRGB || function.spk == SPK.LightDimming)
                 {
                     var functionDiv = new FunctionControlZone(function)
                     {
@@ -139,7 +140,7 @@
                         BorderColor = 0x00FFFFFF,
                         BorderWidth = 1,
                         BackgroundColor = CSS_Color.MainBackgroundColor,
-                        Tag = function.functionCategory.ToString() + "-" + function.functionType
+                        Tag = function.spk + function.sid
                     };
                     functionDiv.LoadFunctionDiv();
                     functionListView.AddChidren(functionDiv);
@@ -155,14 +156,33 @@
                         BorderColor = 0x00FFFFFF,
                         BorderWidth = 1,
                         BackgroundColor = CSS_Color.MainBackgroundColor,
-                        Tag = function.functionCategory.ToString() + "-" + function.functionType
+                        Tag = function.spk + 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