From 2ae36ddb40d28c62b64a2fdd4c3033e7d65d5cfb Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 04 三月 2021 15:20:29 +0800 Subject: [PATCH] 2021-0304-1 --- HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs | 100 +++++++++++++++++++++++++++++--------------------- 1 files changed, 58 insertions(+), 42 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs index d2180e5..279c70d 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs @@ -14,9 +14,9 @@ /// 鏇存柊鍔熻兘鐘舵�� /// </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) { - Application.RunOnMainThread(() => + Application.RunOnMainThread((Action)(() => { try @@ -43,9 +43,9 @@ continue; } var viewTag = scrolView.GetChildren(i).Tag.ToString(); - if (viewTag == updataFunction.sid) + if (scrolView.GetChildren(i).Tag != null && viewTag == updataFunction.spk + updataFunction.sid) { - if (scrolView.GetChildren(i).Tag != null && scrolView.GetChildren(i).Tag.ToString() == updataFunction.sid) + //if ( && scrolView.GetChildren(i).Tag.ToString() == updataFunction.sid) { var fcView = scrolView.GetChildren(i) as FrameLayout; for (int j = 0; j < fcView.ChildrenCount; j++) @@ -53,12 +53,14 @@ if (fcView.GetChildren(j).Tag == null) continue; var cTag = fcView.GetChildren(j).Tag.ToString(); - switch (updataFunction.functionCategory) + switch (updataFunction.Spk_Prefix) { case FunctionCategory.Light: - case FunctionCategory.Thermostat: - #region 鎸夐挳鐘舵�佹洿鏂� - if (cTag == updataFunction.sid + "_Switch") + case FunctionCategory.AC: + case FunctionCategory.FloorHeat: + case FunctionCategory.Electric: + #region 鎸夐挳鐘舵�佹洿鏂� + if (cTag == updataFunction.sid + "_Switch") { try { @@ -69,9 +71,9 @@ 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 { @@ -91,9 +93,9 @@ MainPage.Log($"{this.GetType()} error 1 : {ex.Message}"); } } - #endregion - #region 鍔熻兘鐘舵�佷俊鎭洿鏂� - else if (cTag == updataFunction.functionType + "_laststates_" + updataFunction.sid) + #endregion + #region 鍔熻兘鐘舵�佷俊鎭洿鏂� + else if (cTag == updataFunction.spk + "_laststates_" + updataFunction.sid) { try { @@ -106,38 +108,52 @@ } } break; - #endregion + #endregion case FunctionCategory.Curtain: - #region 绐楀笜鏇存柊 - var uCurtain = updataFunction as Curtain; - if (cTag == updataFunction.functionType + "_off_" + updataFunction.sid) + #region 绐楀笜鏇存柊 + //var uCurtain = updataFunction as Curtain; + var percentString = updataFunction.GetAttrState(FunctionAttributeKey.Percent); + if (percentString != null) { - try + int percent = 0; + int.TryParse(percentString, out percent); + if (percent == 0) { - (fcView.GetChildren(j) as Button).IsSelected = uCurtain.trait_on_off.curValue.ToString() == "off"; + if (cTag == updataFunction.sid + "_off") + { + try + { + (fcView.GetChildren(j) as Button).IsSelected = true; + } + catch { } + } + else + { + (fcView.GetChildren(j) as Button).IsSelected = false; + } } - catch (Exception ex) + else { - MainPage.Log($"{this.GetType()} error 3 : {ex.Message}"); + if (cTag == updataFunction.sid + "_on") + { + try + { + (fcView.GetChildren(j) as Button).IsSelected = true; + } + catch { } + } + else + { + (fcView.GetChildren(j) as Button).IsSelected = false; + } } } - else - { - try - { - (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; - if (cTag == updataFunction.functionType + "_State_" + updataFunction.sid) + #region 闊充箰鏇存柊 + var uMusic = updataFunction as Music.A31MusicModel; + if (cTag == updataFunction.spk + "_State_" + updataFunction.sid) { try { @@ -148,8 +164,8 @@ MainPage.Log($"{this.GetType()} error 3 : {ex.Message}"); } } - #endregion - break; + #endregion + break; } } } @@ -160,7 +176,7 @@ { MainPage.Log($"RoomControlZone Updata States error : {ex.Message}"); } - }); + })); } } -} +} \ No newline at end of file -- Gitblit v1.8.0