wei
2020-12-18 d53f7315de145266e6465d9f95d11d1712b9a91b
HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs
@@ -16,21 +16,22 @@
        /// <param name="updataFunction"></param>
        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;
                        }
@@ -56,25 +57,25 @@
                                    {
                                        case FunctionCategory.Light:
                                        case FunctionCategory.Thermostat:
                                            #region 按钮状态更新
                                            if (cTag == updataFunction.sid + "_Switch")
                                                #region 按钮状态更新
                                                if (cTag == updataFunction.sid + "_Switch")
                                            {
                                                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)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 0 : {ex.Message}");
                                                }
                                            }
                                            #endregion
                                            #region 调光状态进度更新
                                            else if (cTag == updataFunction.sid + "_DimmerBar")
                                                #endregion
                                                #region 调光状态进度更新
                                                else if (cTag == updataFunction.sid + "_DimmerBar")
                                            {
                                                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;
@@ -90,13 +91,13 @@
                                                    MainPage.Log($"{this.GetType()} error 1 : {ex.Message}");
                                                }
                                            }
                                            #endregion
                                            #region 功能状态信息更新
                                            else if (cTag == updataFunction.functionType + "_laststates_" + updataFunction.sid)
                                                #endregion
                                                #region 功能状态信息更新
                                                else if (cTag == updataFunction.functionType + "_laststates_" + updataFunction.sid)
                                            {
                                                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)
@@ -107,13 +108,13 @@
                                            break;
                                            #endregion
                                        case FunctionCategory.Curtain:
                                            #region 窗帘更新
                                            var uCurtain = updataFunction as Curtain;
                                                #region 窗帘更新
                                                var uCurtain = updataFunction as Curtain;
                                            if (cTag == updataFunction.functionType + "_off_" + updataFunction.sid)
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.value.ToString() == "off";
                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.curValue.ToString() == "off";
                                                }
                                                catch (Exception ex)
                                                {
@@ -124,43 +125,42 @@
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.value.ToString() == "on";
                                                    (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.curValue.ToString() == "on";
                                                }
                                                catch (Exception ex)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 4 : {ex.Message}");
                                                }
                                            }
                                            #endregion
                                            break;
                                                #endregion
                                                break;
                                        case FunctionCategory.Music:
                                            #region 音乐更新
                                            var uMusic = updataFunction as Music.A31MusicModel;
                                                #region 音乐更新
                                                var uMusic = updataFunction as Music.A31MusicModel;
                                            if (cTag == updataFunction.functionType + "_State_" + updataFunction.sid)
                                            {
                                                try
                                                {
                                                    (fcView.GetChildren(j) as Button).IsSelected = uMusic.A31PlayStatus.status == "play" ;
                                                    (fcView.GetChildren(j) as Button).IsSelected = uMusic.A31PlayStatus.status == "play";
                                                }
                                                catch (Exception ex)
                                                {
                                                    MainPage.Log($"{this.GetType()} error 3 : {ex.Message}");
                                                }
                                            }
                                            #endregion
                                            break;
                                                #endregion
                                                break;
                                    }
                                }
                            }
                        }
                    }
                });
            }
            catch (Exception ex)
            {
                MainPage.Log($"RoomControlZone Updata States error : {ex.Message}");
            }
                }
                catch (Exception ex)
                {
                    MainPage.Log($"RoomControlZone Updata States error : {ex.Message}");
                }
            });
        }
  }
    }
}