From dc0309e64f02227d8e1468b7326c07955f804612 Mon Sep 17 00:00:00 2001 From: chenqiyang <1406175257@qq.com> Date: 星期三, 22 六月 2022 11:22:18 +0800 Subject: [PATCH] 修改引用路径 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs | 864 +++++++++++++++++++++++++++++++-------------------------- 1 files changed, 466 insertions(+), 398 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs old mode 100755 new mode 100644 index 7ee279d..cd21d5b --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceOtherLogic.cs @@ -1,398 +1,466 @@ -锘縰sing Shared.Common; -using System; -using System.Collections.Generic; -using System.Text; -using ZigBee.Device; - -namespace Shared.Phone.UserCenter -{ - /// <summary> - /// 璁惧鐨勫叾浠栭�昏緫(鐩墠鐢ㄦ潵瀛樻斁閮洩鍩庣殑浠g爜) - /// </summary> - public class HdlDeviceOtherLogic - { - #region 鈻� 鍙橀噺澹版槑___________________________ - - /// <summary> - /// 璁惧鐨勫叾浠栭�昏緫 - /// </summary> - private static HdlDeviceOtherLogic m_Current = null; - /// <summary> - /// 璁惧鐨勫叾浠栭�昏緫 - /// </summary> - public static HdlDeviceOtherLogic Current - { - get - { - if (m_Current == null) - { - m_Current = new HdlDeviceOtherLogic(); - } - return m_Current; - } - } - - #endregion - - #region 鈻� 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀篲________ - - /// <summary> - /// 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀� - /// </summary> - /// <param name="r">The red component.</param> - public void ShowStatuTip(int r) - { - Application.RunOnMainThread(() => - { - string msg = Language.StringByID(r); - var tip = new ShowMsgControl(ShowMsgType.Tip, msg); - tip.Show(); - }); - } - - #endregion - - #region 鈻� 鑾峰彇璁惧鐘舵�佺殑缈昏瘧_________________ - - /// <summary> - /// GetDeviceStatu - /// </summary> - /// <returns></returns> - public string GetDeviceStatu(CommonDevice device) - { - if (device.Type == DeviceType.OnOffOutput) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - if ((device as ToggleLight).OnOffStatus == 1) - { - return Language.StringByID(R.MyInternationalizationString.uOpen1); - } - return Language.StringByID(R.MyInternationalizationString.Close); - } - else if (device.Type == DeviceType.AirSwitch) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - if ((device as AirSwitch).OnOffStatus == 1) - { - return Language.StringByID(R.MyInternationalizationString.uOpen1); - } - return Language.StringByID(R.MyInternationalizationString.Close); - } - else if (device.Type == DeviceType.DimmableLight) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - if ((device as DimmableLight).OnOffStatus == 0) - { - return Language.StringByID(R.MyInternationalizationString.Close); - } - return $"{(int)((device as DimmableLight).Level * 1.0 / 254 * 100)}%"; - } - else if (device.Type == DeviceType.ColorTemperatureLight) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - if ((device as ColorTemperatureLight).OnOffStatus == 0) - { - return Language.StringByID(R.MyInternationalizationString.Close); - } - return $"{(int)((device as ColorTemperatureLight).Level * 1.0 / 254 * 100)}%"; - } - else if (device.Type == DeviceType.WindowCoveringDevice) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - if ((device as Rollershade).WcdCurrentPositionLiftPercentage == 0) - { - return Language.StringByID(R.MyInternationalizationString.Close); - } - return $"{(device as Rollershade).WcdCurrentPositionLiftPercentage}%"; - } - else if (device.Type == DeviceType.FreshAir) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - - //妯″紡 - string wind = string.Empty; - var freshAir = device as FreshAir; - if (freshAir.currentFanStatus == 0) - { - return Language.StringByID(R.MyInternationalizationString.Close); - } - if (freshAir.currentFanSpeed == 1) - { - wind = Language.StringByID(R.MyInternationalizationString.Fan_Low); - } - else if (freshAir.currentFanSpeed == 2) - { - wind = Language.StringByID(R.MyInternationalizationString.Fan_Middle); - } - else if (freshAir.currentFanSpeed == 3) - { - wind = Language.StringByID(R.MyInternationalizationString.Fan_Height); - } - return $"{wind}"; - } - else if (device.Type == DeviceType.PMSensor) - { - //绌烘皵璐ㄩ噺 - string curQuality = ""; - //娓╁害 - string temperature = string.Empty; - //婀垮害 - string humidity = string.Empty; - //PM2.5 - string pm = string.Empty; - var pMSensor = device as PMSensor; - if (pMSensor.currentPmData <= 35 && pMSensor.currentPmData >= 0) - { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); - } - else if (pMSensor.currentPmData <= 75 && pMSensor.currentPmData > 35) - { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); - } - else if (pMSensor.currentPmData <= 115 && pMSensor.currentPmData > 75) - { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); - } - else if (pMSensor.currentPmData <= 150 && pMSensor.currentPmData > 115) - { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); - } - else if (pMSensor.currentPmData <= 250 && pMSensor.currentPmData > 150) - { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); - } - else if (pMSensor.currentPmData > 250) - { - curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); - } - else - { - curQuality = "--"; - } - - humidity = $"{pMSensor.currentHumidity}%"; - temperature = $"{pMSensor.currentTemperature}鈩�"; - pm = $"{pMSensor.currentPmData}渭g/m鲁"; - return $"{curQuality},{pm},{temperature},{humidity}"; - - } - else if (device.Type == DeviceType.Thermostat) - { - //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 - if (device.HadReadDeviceStatu == false) - { - return Language.StringByID(R.MyInternationalizationString.uOffLine); - } - //娓╁害锛屾ā寮忥紝椋庨�� - string tempareture = string.Empty; - string model = string.Empty; - string wind = string.Empty; - - var ac = device as AC; - - if (ac.currentSystemMode == 0) - { - return Language.StringByID(R.MyInternationalizationString.Close); - } - else if (ac.currentSystemMode == 1) - { - model = Language.StringByID(R.MyInternationalizationString.Mode_Auto); - tempareture = $"{ac.currentAutoSetpoint} 鈩�"; - } - else if (ac.currentSystemMode == 3) - { - model = Language.StringByID(R.MyInternationalizationString.Mode_Cool); - tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; - } - else if (ac.currentSystemMode == 4) - { - model = Language.StringByID(R.MyInternationalizationString.Mode_Heat); - tempareture = $"{ac.currentHeatingSetpoint} 鈩�"; - } - else if (ac.currentSystemMode == 7) - { - model = Language.StringByID(R.MyInternationalizationString.Mode_FanOnly); - } - else if (ac.currentSystemMode == 8) - { - model = Language.StringByID(R.MyInternationalizationString.Mode_Dry); - tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; - } - - if (ac.currentFanMode == 1) - { - wind = Language.StringByID(R.MyInternationalizationString.Fan_Low); - } - else if (ac.currentFanMode == 2) - { - wind = Language.StringByID(R.MyInternationalizationString.Fan_Middle); - } - else - { - wind = Language.StringByID(R.MyInternationalizationString.Fan_Height); - } - - if (string.IsNullOrEmpty(tempareture)) - { - return $"{model},{wind}"; - } - return $"{model},{wind},{tempareture}"; - } - else if (device.Type == DeviceType.IASZone) - { - var ias = device as IASZone; - //鍖哄垎浼犳劅鍣ㄥ叿浣撶被鍨� - var info = LocalDevice.Current.GetNotHdlMyDeviceEnumInfo(new List<CommonDevice> { device }); - if (info.ConcreteType == DeviceConcreteType.Sensor_Infrared) - { - //绾㈠ - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_Water) - { - //姘存蹈 - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HaveWater); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_DoorWindow) - { - //闂ㄧ獥 - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Open); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Close); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_CarbonMonoxide) - { - //鐕冩皵 - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.uGasLeakage); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_Fire) - { - //鐑熼浘 - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.uSmogAlarm); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Safe); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_Pir) - { - //pir - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_Keyfob) - { - //閽ュ寵鎵� - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Alarm); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_Motion) - { - //杩愬姩浼犳劅鍣� - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_EmergencyButton) - { - //绱ф�ユ寜閽� - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Alarm); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); - } - else if (info.ConcreteType == DeviceConcreteType.Sensor_SphericalMotion) - { - //鐞冨瀷绉诲姩浼犳劅鍣� - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); - } - else - { - //鍏朵粬浼犳劅鍣� - if (ias.iASInfo?.Alarm1 == 1) - { - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Alarm); - } - return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); - } - } - else if (device.Type == DeviceType.TemperatureSensor) - { - var tempera = device as TemperatureSensor; - if (tempera.SensorDiv == 1) - { - if (tempera.currentTemperature == 0) - { - return "0.0鈩�"; - } - return $"{tempera.currentTemperature}鈩�"; - } - else if (tempera.SensorDiv == 2) - { - if (tempera.currentHumidity == 0) - { - return "--%"; - } - return $"{tempera.currentHumidity}%"; - } - return null; - } - else - { - return null; - } - } - #endregion - } -} +锘縰sing Shared.Common; +using System; +using System.Collections.Generic; +using System.Text; +using ZigBee.Device; + +namespace Shared.Phone.UserCenter +{ + /// <summary> + /// 璁惧鐨勫叾浠栭�昏緫(鐩墠鐢ㄦ潵瀛樻斁閮洩鍩庣殑浠g爜) + /// </summary> + public class HdlDeviceOtherLogic + { + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 璁惧鐨勫叾浠栭�昏緫 + /// </summary> + private static HdlDeviceOtherLogic m_Current = null; + /// <summary> + /// 璁惧鐨勫叾浠栭�昏緫 + /// </summary> + public static HdlDeviceOtherLogic Current + { + get + { + if (m_Current == null) + { + m_Current = new HdlDeviceOtherLogic(); + } + return m_Current; + } + } + + #endregion + + #region 鈻� 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀篲________ + + /// <summary> + /// 鏄剧ず鎺у埗璁惧鏄惁鎴愬姛鐨勬彁绀� + /// </summary> + /// <param name="r">The red component.</param> + public void ShowStatuTip(int r) + { + Application.RunOnMainThread(() => + { + string msg = Language.StringByID(r); + var tip = new ShowMsgControl(ShowMsgType.Tip, msg); + tip.Show(); + }); + } + + #endregion + + #region 鈻� 鑾峰彇璁惧鐘舵�佺殑缈昏瘧_________________ + + /// <summary> + /// GetDeviceStatu + /// </summary> + /// <returns></returns> + public string GetDeviceStatu(CommonDevice device) + { + if (device.Type == DeviceType.OnOffOutput) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + if ((device as ToggleLight).OnOffStatus == 1) + { + return Language.StringByID(R.MyInternationalizationString.uOpen1); + } + return Language.StringByID(R.MyInternationalizationString.Close); + } + else if (device.Type == DeviceType.AirSwitch) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + if ((device as AirSwitch).OnOffStatus == 1) + { + return Language.StringByID(R.MyInternationalizationString.uOpen1); + } + return Language.StringByID(R.MyInternationalizationString.Close); + } + else if (device.Type == DeviceType.DimmableLight) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + if ((device as DimmableLight).OnOffStatus == 0) + { + return Language.StringByID(R.MyInternationalizationString.Close); + } + return HdlDeviceCommonLogic.Current.CalculateLightLevelPersent((device as DimmableLight).Level) + "%"; + } + else if (device.Type == DeviceType.ColorTemperatureLight) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + if ((device as ColorTemperatureLight).OnOffStatus == 0) + { + return Language.StringByID(R.MyInternationalizationString.Close); + } + return HdlDeviceCommonLogic.Current.CalculateLightLevelPersent((device as ColorTemperatureLight).Level) + "%"; + } + else if (device.Type == DeviceType.WindowCoveringDevice) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + if ((device as Rollershade).WcdCurrentPositionLiftPercentage == 0) + { + return Language.StringByID(R.MyInternationalizationString.Close); + } + return $"{(device as Rollershade).WcdCurrentPositionLiftPercentage}%"; + } + else if (device.Type == DeviceType.FreshAir) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + + //妯″紡 + string wind = string.Empty; + var freshAir = device as FreshAir; + if (freshAir.currentFanStatus == 0) + { + return Language.StringByID(R.MyInternationalizationString.Close); + } + if (freshAir.currentFanSpeed == 1) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Low); + } + else if (freshAir.currentFanSpeed == 2) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Middle); + } + else if (freshAir.currentFanSpeed == 3) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Height); + } + return $"{wind}"; + } + else if (device.Type == DeviceType.PMSensor) + { + //绌烘皵璐ㄩ噺 + string curQuality = ""; + //娓╁害 + string temperature = string.Empty; + //婀垮害 + string humidity = string.Empty; + //PM2.5 + string pm = string.Empty; + var pMSensor = device as PMSensor; + if (pMSensor.currentPmData <= 35 && pMSensor.currentPmData >= 0) + { + curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + } + else if (pMSensor.currentPmData <= 75 && pMSensor.currentPmData > 35) + { + curQuality = Language.StringByID(R.MyInternationalizationString.GoodAirQuality); + } + else if (pMSensor.currentPmData <= 115 && pMSensor.currentPmData > 75) + { + curQuality = Language.StringByID(R.MyInternationalizationString.LightPollution); + } + else if (pMSensor.currentPmData <= 150 && pMSensor.currentPmData > 115) + { + curQuality = Language.StringByID(R.MyInternationalizationString.Moderatelyolluted); + } + else if (pMSensor.currentPmData <= 250 && pMSensor.currentPmData > 150) + { + curQuality = Language.StringByID(R.MyInternationalizationString.HeavyPollution); + } + else if (pMSensor.currentPmData > 250) + { + curQuality = Language.StringByID(R.MyInternationalizationString.SeriousPollution); + } + else + { + curQuality = "--"; + } + + humidity = $"{pMSensor.currentHumidity}%"; + temperature = $"{pMSensor.currentTemperature}鈩�"; + pm = $"{pMSensor.currentPmData}渭g/m鲁"; + return $"{curQuality},{pm},{temperature},{humidity}"; + } + else if (device.Type == DeviceType.Airer) + { + //鏄惁瀛樺湪寮�鐨勭姸鎬� + bool isOpen = false; + var airer = device as Airer; + if (airer.OnOffStatus == 1 || + airer.DryOnOffStatus == 1 || + airer.WindOnOffStatus == 1 || + airer.DisinfectOnOffStatus == 1) + { + isOpen = true; + } + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + if (isOpen) + { + return Language.StringByID(R.MyInternationalizationString.uOpen1); + } + return Language.StringByID(R.MyInternationalizationString.Close); + } + else if (device.Type == DeviceType.Thermostat) + { + //鍦ㄧ綉鍏虫病鏈夊洖澶嶄箣鍓�,榛樿绂荤嚎 + if (device.HadReadDeviceStatu == false) + { + return Language.StringByID(R.MyInternationalizationString.uOffLine); + } + //娓╁害锛屾ā寮忥紝椋庨�� + string tempareture = string.Empty; + string model = string.Empty; + string wind = string.Empty; + + var ac = device as AC; + + if (ac.currentSystemMode == 0) + { + return Language.StringByID(R.MyInternationalizationString.Close); + } + else if (ac.currentSystemMode == 1) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Auto); + tempareture = $"{ac.currentAutoSetpoint} 鈩�"; + } + else if (ac.currentSystemMode == 3) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Cool); + tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; + } + else if (ac.currentSystemMode == 4) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Heat); + tempareture = $"{ac.currentHeatingSetpoint} 鈩�"; + } + else if (ac.currentSystemMode == 7) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_FanOnly); + } + else if (ac.currentSystemMode == 8) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Dry); + tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; + } + + if (ac.currentFanMode == 1) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Low); + } + else if (ac.currentFanMode == 2) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Middle); + } + else + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Height); + } + + if (string.IsNullOrEmpty(tempareture)) + { + return $"{model},{wind}"; + } + return $"{model},{wind},{tempareture}"; + } + else if (device.Type == DeviceType.IASZone) + { + var ias = device as IASZone; + //鍖哄垎浼犳劅鍣ㄥ叿浣撶被鍨� + var info = LocalDevice.Current.GetNotHdlMyDeviceEnumInfo(new List<CommonDevice> { device }); + if (info.ConcreteType == DeviceConcreteType.Sensor_Infrared) + { + //绾㈠ + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_Water) + { + //姘存蹈 + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HaveWater); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_DoorWindow) + { + //闂ㄧ獥 + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Open); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Close); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_CarbonMonoxide) + { + //鐕冩皵 + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.uGasLeakage); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_Fire) + { + //鐑熼浘 + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.uSmogAlarm); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Safe); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_Pir) + { + //pir + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_Keyfob) + { + //閽ュ寵鎵� + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Alarm); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_Motion) + { + //杩愬姩浼犳劅鍣� + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_EmergencyButton) + { + //绱ф�ユ寜閽� + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Alarm); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); + } + else if (info.ConcreteType == DeviceConcreteType.Sensor_SphericalMotion) + { + //鐞冨瀷绉诲姩浼犳劅鍣� + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_HavePerson); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_NoPerson); + } + else + { + //鍏朵粬浼犳劅鍣� + if (ias.iASInfo?.Alarm1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Alarm); + } + return Language.StringByID(R.MyInternationalizationString.IASZone_Statu_Normal); + } + } + else if (device.Type == DeviceType.TemperatureSensor) + { + var tempera = device as TemperatureSensor; + + //绌烘皵璐ㄩ噺浼犳劅鍣� + //鑾峰彇璁惧绫诲瀷 + var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { device }); + //绌烘皵璐ㄩ噺浼犳劅鍣� + if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor) + { + //绌烘皵璐ㄩ噺 + string curQuality = ""; + //娓╁害 + string temperature = string.Empty; + //婀垮害 + string humidity = string.Empty; + //PM2.5 + string pm = string.Empty; + //CO2 + string co2 = string.Empty; + + var tempAirQuality = tempera.AirQuality(tempera); + + if (tempAirQuality == 1) + { + curQuality = Language.StringByID(R.MyInternationalizationString.ExcellentAirQuality); + } + else if (tempAirQuality == 2) + { + curQuality = Language.StringByID(R.MyInternationalizationString.GoodAirQuality); + } + else if (tempAirQuality == 3) + { + curQuality = Language.StringByID(R.MyInternationalizationString.Pollution); + } + else + { + curQuality = ""; + } + + humidity = $"{tempera.currentHumidity}%"; + temperature = $"{tempera.currentTemperature}鈩�"; + pm = $"{tempera.currentPmData}渭g/m鲁"; + //co2 = $"{tempera.currentCO2}ppm"; + return $"{curQuality},{pm},{temperature},{humidity}"; + } + else + { + if (tempera.SensorDiv == 1) + { + if (tempera.currentTemperature == 0) + { + return "0.0鈩�"; + } + return $"{tempera.currentTemperature}鈩�"; + } + else if (tempera.SensorDiv == 2) + { + if (tempera.currentHumidity == 0) + { + return "--%"; + } + return $"{tempera.currentHumidity}%"; + } + return null; + } + } + else + { + return null; + } + } + #endregion + } +} -- Gitblit v1.8.0