From 320d7cc8feb394d0ce3db2ec1d01593b554d990f Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期三, 23 十二月 2020 10:57:13 +0800
Subject: [PATCH] 2020-12-23 1.更新

---
 HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs |  103 +++++++++++++++++++++++++++++++--------------------
 1 files changed, 63 insertions(+), 40 deletions(-)

diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs
index e024ef2..d041894 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs
@@ -14,23 +14,24 @@
         /// 鏇存柊鍔熻兘鐘舵��
         /// </summary>
         /// <param name="updataFunction"></param>
-        public void UpdataStates(Function updataFunction, FrameLayout view, VerticalScrolViewLayout scrolView,Room room=null)
+        public void UpdataStates(Function updataFunction, FrameLayout view, VerticalScrolViewLayout scrolView, Room room = null)
         {
-            try
+            Application.RunOnMainThread(() =>
             {
-                Application.RunOnMainThread(() =>
+
+                try
                 {
-                    if (view == null || scrolView == null)
+                    if (view == null || scrolView == null || updataFunction == null)
                     {
                         return;
                     }
-                    if(!scrolView.ScrollEnabled)
+                    if (!scrolView.ScrollEnabled)
                     {
                         return;
                     }
                     if (room != null)
                     {
-                        if (!updataFunction.roomIdList.Contains(room.sid))
+                        if (!updataFunction.roomIds.Contains(room.roomId))
                         {
                             return;
                         }
@@ -61,7 +62,7 @@
                                             {
                                                 try
                                                 {
-                                                    (fcView.GetChildren(j) as Button).IsSelected = updataFunction.trait_on_off.value.ToString() == "on";
+                                                    (fcView.GetChildren(j) as Button).IsSelected = updataFunction.trait_on_off.curValue.ToString() == "on";
                                                 }
                                                 catch (Exception ex)
                                                 {
@@ -74,7 +75,7 @@
                                             {
                                                 try
                                                 {
-                                                    if (updataFunction.trait_on_off.value.ToString() == "on")
+                                                    if (updataFunction.trait_on_off.curValue.ToString() == "on")
                                                     {
                                                         (fcView.GetChildren(j) as DiyImageSeekBar).Progress = (updataFunction as Light).brightness;
                                                         (fcView.GetChildren(j) as DiyImageSeekBar).ProgressBarColor = CSS.CSS_Color.AuxiliaryColor1;
@@ -96,7 +97,7 @@
                                             {
                                                 try
                                                 {
-                                                    (fcView.GetChildren(j) as Button).IsSelected = updataFunction.trait_on_off.value.ToString() == "on";
+                                                    (fcView.GetChildren(j) as Button).IsSelected = updataFunction.trait_on_off.curValue.ToString() == "on";
                                                     (fcView.GetChildren(j) as Button).Text = updataFunction.lastState;
                                                 }
                                                 catch (Exception ex)
@@ -105,31 +106,54 @@
                                                 }
                                             }
                                             break;
-                                            #endregion
+                                        #endregion
                                         case FunctionCategory.Curtain:
                                             #region 绐楀笜鏇存柊
                                             var uCurtain = updataFunction as Curtain;
-                                            if (cTag == updataFunction.functionType + "_off_" + updataFunction.sid)
+                                            switch (uCurtain.trait_on_off.curValue.ToString())
                                             {
-                                                try
-                                                {
-                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.value.ToString() == "off";
-                                                }
-                                                catch (Exception ex)
-                                                {
-                                                    MainPage.Log($"{this.GetType()} error 3 : {ex.Message}");
-                                                }
-                                            }
-                                            else
-                                            {
-                                                try
-                                                {
-                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.value.ToString() == "on";
-                                                }
-                                                catch (Exception ex)
-                                                {
-                                                    MainPage.Log($"{this.GetType()} error 4 : {ex.Message}");
-                                                }
+                                                case "off":
+                                                    if (cTag == updataFunction.sid + "_off")
+                                                    {
+                                                        try
+                                                        {
+                                                            (fcView.GetChildren(j) as Button).IsSelected = true;
+                                                        }
+                                                        catch { }
+                                                    }
+                                                    else
+                                                    {
+                                                        (fcView.GetChildren(j) as Button).IsSelected = false;
+                                                    }
+                                                    break;
+                                                case "on":
+                                                    if (cTag == updataFunction.sid + "_on")
+                                                    {
+                                                        try
+                                                        {
+                                                            (fcView.GetChildren(j) as Button).IsSelected = true;
+                                                        }
+                                                        catch { }
+                                                    }
+                                                    else
+                                                    {
+                                                        (fcView.GetChildren(j) as Button).IsSelected = false;
+                                                    }
+                                                    break;
+                                                case "stop":
+                                                    if (cTag == updataFunction.sid + "_stop")
+                                                    {
+                                                        try
+                                                        {
+                                                            (fcView.GetChildren(j) as Button).IsSelected = true;
+                                                        }
+                                                        catch { }
+                                                    }
+                                                    else
+                                                    {
+                                                        (fcView.GetChildren(j) as Button).IsSelected = false;
+                                                    }
+                                                    break;
                                             }
                                             #endregion
                                             break;
@@ -140,7 +164,7 @@
                                             {
                                                 try
                                                 {
-                                                    (fcView.GetChildren(j) as Button).IsSelected = uMusic.A31PlayStatus.status == "play" ;
+                                                    (fcView.GetChildren(j) as Button).IsSelected = uMusic.A31PlayStatus.status == "play";
                                                 }
                                                 catch (Exception ex)
                                                 {
@@ -154,13 +178,12 @@
                             }
                         }
                     }
-                });
-            }
-            catch (Exception ex)
-            {
-                MainPage.Log($"RoomControlZone Updata States error : {ex.Message}");
-            }
+                }
+                catch (Exception ex)
+                {
+                    MainPage.Log($"RoomControlZone Updata States error : {ex.Message}");
+                }
+            });
         }
-
-  }
-}
+    }
+}
\ No newline at end of file

--
Gitblit v1.8.0