From f77a3add1e7ab266e473da9128bbe5758ba3a890 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期日, 20 十二月 2020 19:29:03 +0800
Subject: [PATCH] Merge branch 'NewFilePath' into CJL

---
 HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs |   98 +++++++++++++++++++++++++++++-------------------
 1 files changed, 59 insertions(+), 39 deletions(-)

diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index cd5f76e..cfec91e 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -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>
@@ -426,7 +426,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;
@@ -434,41 +434,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:
@@ -490,10 +490,29 @@
 
                 if (functionCount == 0 && item != ShowFunction.Music)
                 {
-                    //continue;
+                    continue;
                 }
                 functionCategoryCount++;
 
+                //FunctionType ft = FunctionType.A31Music
+                //switch (item)
+                //{
+                //    case FunctionType.FloorHeating:
+                //        break;
+                //    case FunctionType.AC:
+                //        break;
+                //    case FunctionType.MotorCurtain:
+                //    case FunctionType.Curtain:
+                //    case FunctionType.RollingShutter:
+                //        break;
+                //    case FunctionType.Relay:
+                //    case FunctionType.Dimmer:
+                //    case FunctionType.RGB:
+                //    case FunctionType.ColorTemperature:
+                //        break;
+                //    case FunctionType.Socket:
+                //        break;
+                //}
                 FrameLayout functionView = new FrameLayout()
                 {
                     Height = Application.GetRealWidth(161),
@@ -502,6 +521,7 @@
                     Tag = item + "_View",
                     Y = index % 2 == 1 ? lastY2 : lastY1
                 };
+                MainPage.Log($"Load FunctionView Tag = {item}");
                 //楂樺害绋嶉珮鐨剉iew
                 if (specialList.Contains(index))
                 {
@@ -553,8 +573,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),
@@ -579,8 +599,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),
@@ -603,8 +623,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()
                         {
@@ -614,8 +634,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);
 
@@ -628,7 +647,7 @@
                             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);
@@ -639,8 +658,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),
@@ -666,8 +685,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),
@@ -747,7 +766,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),
@@ -761,7 +780,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,
@@ -871,17 +890,18 @@
                 }
 
 
-                List<string> chooseList = new List<string>();
-                chooseList.Add(Language.StringByID(StringId.All));
+                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,
@@ -898,20 +918,20 @@
                         TextAlignment = TextAlignment.CenterLeft,
                         TextColor = CSS_Color.FirstLevelTitleColor,
                         SelectedTextColor = CSS_Color.MainColor,
-                        Text = floor,
+                        Text = floor.roomName,
                         TextSize = CSS_FontSize.SubheadingFontSize,
-                        IsSelected = btnFloor.Text == floor,
+                        IsSelected = floor.roomId == DB_ResidenceData.Instance.ClassificationChooseFloor.roomId,
                         IsMoreLines = true,
-                        Tag = floor
                     };
                     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(SpatialInfo.CurrentSpatial.RoomList);
                         }
@@ -919,7 +939,7 @@
                         {
                             foreach (var room in SpatialInfo.CurrentSpatial.RoomList)
                             {
-                                if (room.floorName == floor)
+                                if (room.parentId == floor.uid)
                                 {
                                     roomsShowed.Add(room);
                                 }

--
Gitblit v1.8.0