From 41995c4cd30ca1c5a814ea0af6f70d3b86368137 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期五, 20 八月 2021 09:07:07 +0800 Subject: [PATCH] 2021-08-20 09:06:44 --- HDL_ON/Entity/Function/SecurityAlarm.cs | 147 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 144 insertions(+), 3 deletions(-) diff --git a/HDL_ON/Entity/Function/SecurityAlarm.cs b/HDL_ON/Entity/Function/SecurityAlarm.cs index eeab50e..e342c89 100644 --- a/HDL_ON/Entity/Function/SecurityAlarm.cs +++ b/HDL_ON/Entity/Function/SecurityAlarm.cs @@ -1,6 +1,7 @@ 锘縰sing System; using System.Collections.Generic; using HDL_ON.Common; +using Shared; namespace HDL_ON.Entity { @@ -130,7 +131,7 @@ /// <summary> /// 瀹夐槻杈撳叆 /// </summary> -public class SecurityInput + public class SecurityInput { /// <summary> /// 杈撳叆鏉′欢锛堝姛鑳斤級鐨剆id @@ -145,6 +146,88 @@ /// 瀹夐槻杈撳叆鏉′欢 /// </summary> public List<SecurityInputCondition> condition = new List<SecurityInputCondition>(); + + [Newtonsoft.Json.JsonIgnore] + Function _function = null; + /// <summary> + /// 瀵瑰簲鐨勫姛鑳藉璞� + /// </summary> + /// <returns></returns> + public Function GetFunction() + { + if (_function == null) + { + _function = FunctionList.List.Functions.Find((obj) => obj.sid == sid); + } + return _function; + } + + /// <summary> + /// 鐘舵�佹枃鏈� + /// </summary> + /// <returns></returns> + public string StateText () + { + string text = ""; + switch(GetFunction().spk) + { + case SPK.SensorGas: + case SPK.SensorSmoke: + foreach (var con in condition) + { + if (con.value == "true") + { + text += Language.StringByID(StringId.InAlarm) + " "; + } + else if (con.value == "false") + { + text += Language.StringByID(StringId.Normal) + " "; + } + } + break; + case SPK.SensorPir: + foreach (var con in condition) + { + if (con.value == "true") + { + text += Language.StringByID(StringId.youren) + " "; + } + else if (con.value == "false") + { + text += Language.StringByID(StringId.wuren) + " "; + } + } + break; + case SPK.SensorWater: + foreach (var con in condition) + { + if (con.value == "true") + { + text += Language.StringByID(StringId.WaterLeakage) + " "; + } + else if (con.value == "false") + { + text += Language.StringByID(StringId.Normal) + " "; + } + } + break; + case SPK.SensorDoorWindow: + foreach (var con in condition) + { + if (con.value == "true") + { + text += Language.StringByID(StringId.Open) + " "; + } + else if (con.value == "false") + { + text += Language.StringByID(StringId.Close) + " "; + } + } + break; + } + + return text; + } } /// <summary> @@ -179,9 +262,11 @@ { /// <summary> /// 鎺у埗鐩爣绫诲瀷 - /// 璁惧锛�0锛屽満鏅�1锛岃嚜鍔ㄥ寲2 + /// 0:璁惧 + /// 1:鍦烘櫙 + /// 2:鑷姩鍖� /// </summary> - public string target_type; + public string target_type ="0"; /// <summary> /// 杈撳嚭鐩爣鐨剆id /// </summary> @@ -190,6 +275,62 @@ /// 瀹夐槻杈撳嚭鐘舵�� /// </summary> public List<SecurityOutputStatus> status = new List<SecurityOutputStatus>(); + + [Newtonsoft.Json.JsonIgnore] + Function _function = null; + /// <summary> + /// 瀵瑰簲鐨勫姛鑳藉璞� + /// </summary> + /// <returns></returns> + public Function GetFunction() + { + if (_function == null) + { + _function = FunctionList.List.Functions.Find((obj) => obj.sid == sid); + } + return _function; + } + + + /// <summary> + /// 鐘舵�佹枃鏈� + /// </summary> + /// <returns></returns> + public string StateText() + { + string text = ""; + if (target_type == "0") + { + switch (GetFunction().spk) + { + case SPK.LightDimming: + case SPK.LightCCT: + case SPK.LightRGB: + case SPK.LightSwitch: + foreach (var state in status) + { + if (state.key == FunctionAttributeKey.Brightness) + { + if (state.value == "0") + { + text = Language.StringByID(StringId.Close); + } + else + { + text = Language.StringByID(StringId.Open); + } + } + } + break; + } + }else if(target_type == "1") + { + + } + + return text; + } + } /// <summary> /// 瀹夐槻杈撳嚭鐘舵�� -- Gitblit v1.8.0