From f9181a9c8125136f597add7c30cb2ff508d54ba7 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 25 七月 2024 17:34:32 +0800 Subject: [PATCH] 2024年07月25日17:33:40 --- HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs | 163 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 158 insertions(+), 5 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs index 2cb9b13..25b3591 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs @@ -17,14 +17,14 @@ /// <param name="updataFunction"></param> public void UpdataStates(Function updataFunction, FrameLayout view, VerticalScrolViewLayout scrolView, Room room = null) { + if (view == null || scrolView == null || updataFunction == null) + { + return; + } Application.RunOnMainThread((() => { try { - if (view == null || scrolView == null || updataFunction == null) - { - return; - } if (!scrolView.ScrollEnabled) { return; @@ -112,6 +112,12 @@ { #region 绐楀笜鏇存柊 var onoffString = updataFunction.GetAttrState(FunctionAttributeKey.OnOff); + var percentAttr = updataFunction.GetAttribute(FunctionAttributeKey.Percent); + if(percentAttr != null) + { + onoffString = percentAttr.curValue.ToString() == "0" ? "off" : "on"; + } + if (onoffString == "stop") { return; @@ -171,6 +177,153 @@ } #endregion } + //鏇存柊姣背娉紶鎰熷櫒鐘舵�� + else if(SPK.SenesorMegahealth == updataFunction.spk || SPK.SensorMmvPose == updataFunction.spk) + { + if (cTag == updataFunction.sid + "_SenesorMegahealth_Status") + { + try + { + Button btnStatus = (fcView.GetChildren(j) as Button); + + var tempStatus = updataFunction.attributes.Find((sta) => sta.key == FunctionAttributeKey.TargetStatus); + if (tempStatus != null) + { + + switch (tempStatus.state) + {//0绌猴紝1璧帮紝2璺戯紝3鍧愶紝4璺屽�掞紝5绔� + case "0": + btnStatus.TextID = StringId.wuren; + btnStatus.TextColor = CSS_Color.MainColor; + break; + case "1": + btnStatus.TextID = StringId.SomeoneIn; + break; + case "2": + if (updataFunction.extSet.labModel) + { + btnStatus.TextID = StringId.SomeoneRunning; + } + else + { + btnStatus.TextID = StringId.Someone; + } + btnStatus.TextColor = CSS_Color.WarningColor; + break; + case "3": + if (updataFunction.extSet.labModel) + { + btnStatus.TextID = StringId.SomeoneSitting; + } + else + { + btnStatus.TextID = StringId.Someone; + } + btnStatus.TextColor = CSS_Color.WarningColor; + break; + case "4": + btnStatus.TextID = StringId.SomeoneFell; + btnStatus.TextColor = CSS_Color.WarningColor; + break; + case "5": + if (updataFunction.extSet.labModel) + { + btnStatus.TextID = StringId.SomeoneStanding; + } + else + { + btnStatus.TextID = StringId.Someone; + } + btnStatus.TextColor = CSS_Color.WarningColor; + break; + } + + } + + + } + catch (Exception ex) + { + MainPage.Log($"{this.GetType()} error 3 : {ex.Message}"); + } + } + } + + else if (SPK.ArmSensorSpkList().Contains(updataFunction.spk)) + { + if (cTag == updataFunction.sid + "_Sensor_Status") + { + Button btnStatus = (fcView.GetChildren(j) as Button); + + var alarm_status = updataFunction.attributes.Find((sta) => sta.key == FunctionAttributeKey.AlarmStatus); + if (alarm_status != null) + { + if (alarm_status.curValue.ToString() == "normal") + { + btnStatus.TextID = StringId.SensorNormalState; + btnStatus.TextColor = CSS_Color.MainColor; + } + else + { + btnStatus.TextID = StringId.InAlarm; + btnStatus.TextColor = CSS_Color.WarningColor; + } + } + else + { + alarm_status = updataFunction.attributes.Find((sta) => sta.key == "contact_status"); + if (alarm_status != null) + { + if (alarm_status.curValue.ToString() == "close") + { + btnStatus.TextID = StringId.Shut; + btnStatus.TextColor = CSS_Color.MainColor; + } + else + { + if (updataFunction.spk == SPK.SensorDryContact || updataFunction.spk == SPK.SensorDryContact2) + { + btnStatus.TextID = StringId.DryBreak; + } + else + { + btnStatus.TextID = StringId.Open; + } + btnStatus.TextColor = CSS_Color.WarningColor; + } + } + else + { + alarm_status = updataFunction.attributes.Find((sta) => sta.key == "people_status"); + if (alarm_status != null) + { + if (alarm_status.curValue.ToString() == "false") + { + btnStatus.TextID = StringId.wuren; + btnStatus.TextColor = CSS_Color.MainColor; + } + else + { + btnStatus.TextID = StringId.youren; + btnStatus.TextColor = CSS_Color.WarningColor; + } + } + } + } + } + } + //鏇存柊娓╂帶鍣ㄧ姸鎬� + else if(SPK.HvacCac == updataFunction.spk) + { + if (cTag == updataFunction.sid + "_Humidity") + { + (fcView.GetChildren(j) as Button).Text = updataFunction.GetAttrState(FunctionAttributeKey.RoomHumidity) + "%"; + } + else if (cTag == updataFunction.sid + "_Temp") + { + (fcView.GetChildren(j) as Button).Text = updataFunction.GetAttrState(FunctionAttributeKey.RoomTemp) + "掳C"; + } + } } } } @@ -215,7 +368,7 @@ { if (scrolView.GetChildren(i).GetType() == typeof(FunctionControlZone)) { var fcView = scrolView.GetChildren(i) as FunctionControlZone; - fcView.UpdataOnline(updataFunction.online); + fcView.UpdataOnline(updataFunction.isOnline()); } } } -- Gitblit v1.8.0