| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using HDL_ON.Common; |
| | | using Shared; |
| | | |
| | | namespace HDL_ON.Entity |
| | | { |
| | |
| | | /// <summary> |
| | | /// 安防输入 |
| | | /// </summary> |
| | | public class SecurityInput |
| | | public class SecurityInput |
| | | { |
| | | /// <summary> |
| | | /// 输入条件(功能)的sid |
| | |
| | | /// 安防输入条件 |
| | | /// </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> |
| | |
| | | { |
| | | /// <summary> |
| | | /// 控制目标类型 |
| | | /// 设备:0,场景1,自动化2 |
| | | /// 0:设备 |
| | | /// 1:场景 |
| | | /// 2:自动化 |
| | | /// </summary> |
| | | public string target_type; |
| | | public string target_type ="0"; |
| | | /// <summary> |
| | | /// 输出目标的sid |
| | | /// </summary> |
| | |
| | | /// 安防输出状态 |
| | | /// </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> |
| | | /// 安防输出状态 |