using System; namespace Shared.Phone.MainPage.ControlForm { /// /// 郭雪城的空调深度卡片的各种方法 /// public class DeviceAcDetailCardMethord { #region ◆ 变量_____________________________ /// /// 最低温度 16 /// public const int Temperature_Low=16; /// /// 最高温度 32å /// public const int Temperature_High = 32; /// /// 默认温度 /// public const int Temperature_Default = 26; #endregion #region ◆ 获取模式名称_______________________ /// /// 通过模式获取模式名称 /// /// The mode name by mode. /// Ac mode. public static string GetModeNameByMode(ZigBee.Device.AC.AcMode acMode) { if (acMode == ZigBee.Device.AC.AcMode.Auto) { return Language.StringByID(R.MyInternationalizationString.Mode_Auto); } else if (acMode == ZigBee.Device.AC.AcMode.Cool) { return Language.StringByID(R.MyInternationalizationString.Mode_Cool); } else if (acMode == ZigBee.Device.AC.AcMode.Heat) { return Language.StringByID(R.MyInternationalizationString.Mode_Heat); } else if (acMode == ZigBee.Device.AC.AcMode.Dry) { return Language.StringByID(R.MyInternationalizationString.Mode_Dry); } else if (acMode == ZigBee.Device.AC.AcMode.FanOnly) { return Language.StringByID(R.MyInternationalizationString.Mode_FanOnly); } return Language.StringByID(R.MyInternationalizationString.Mode_Auto); } /// /// 通过模式id获取模式名称 /// /// 0:Off /// 1:Auto /// 3:Cool /// 4:Heat /// 5:Emergency heating /// 6:Precooling /// 7:Fan only /// 8:Dry /// 9:Sleep /// /// The mode name by mode. /// Ac mode. public static string GetModeNameByModeId(int acMode) { if (acMode == 1) { return Language.StringByID(R.MyInternationalizationString.Mode_Auto); } else if (acMode == 3) { return Language.StringByID(R.MyInternationalizationString.Mode_Cool); } else if (acMode == 4) { return Language.StringByID(R.MyInternationalizationString.Mode_Heat); } else if (acMode == 8) { return Language.StringByID(R.MyInternationalizationString.Mode_Dry); } else if (acMode == 7) { return Language.StringByID(R.MyInternationalizationString.Mode_FanOnly); } // return Language.StringByID(R.MyInternationalizationString.Mode_Auto); } #endregion #region ◆ 获取风速名称_______________________ /// /// 通过风速模式获取风速名称 /// /// The fan mode name by fan mode. /// Fan mode. public static string GetFanModeNameByFanMode(ZigBee.Device.AC.FanMode fanMode) { if(fanMode==ZigBee.Device.AC.FanMode.Low) { return Language.StringByID(R.MyInternationalizationString.Fan_Low); } else if(fanMode == ZigBee.Device.AC.FanMode.Medium) { return Language.StringByID(R.MyInternationalizationString.Fan_Middle); } else { return Language.StringByID(R.MyInternationalizationString.Fan_Height); } } #endregion #region ◆ 获取模式图片名称_____________________ /// /// 通过模式id获取选中的图片路径 /// /// The mode selected image path by mode identifier. /// Ac mode. public static string GetModeSelectedImagePathByModeId(int acMode) { if (acMode == 1) { return "AC/Mode_AutoSelected.png"; } else if (acMode == 3) { return "AC/Mode_CoolSelected.png"; } else if (acMode == 4) { return "AC/Mode_HeatSelected.png"; } else if (acMode == 7) { return "AC/Mode_FanSelected.png"; } else if (acMode == 8) { return "AC/Mode_DrySelected.png"; } return "AC/Mode_AutoSelected.png"; } /// /// 通过模式id获取图片路径 /// /// The mode selected image path by mode identifier. /// Ac mode. public static string GetModeUnSelectedImagePathByModeId(int acMode) { if (acMode == 1) { return "AC/Mode_Auto.png"; } else if (acMode == 3) { return "AC/Mode_Cool.png"; } else if (acMode == 4) { return "AC/Mode_Heat.png"; } else if (acMode == 7) { return "AC/Mode_Fan.png"; } else if (acMode == 8) { return "AC/Mode_Dry.png"; } return "AC/Mode_Auto.png"; } /// /// 通过模式id获取选中的图片路径 /// /// The mode selected image path by mode identifier. /// Ac mode. public static string GetModeSelectedImagePathByMode(ZigBee.Device.AC.AcMode acMode) { if (acMode == ZigBee.Device.AC.AcMode.Auto) { return GetModeSelectedImagePathByModeId(1); } else if (acMode == ZigBee.Device.AC.AcMode.Cool) { return GetModeSelectedImagePathByModeId(3); } else if (acMode == ZigBee.Device.AC.AcMode.Heat) { return GetModeSelectedImagePathByModeId(4); } else if (acMode == ZigBee.Device.AC.AcMode.FanOnly) { return GetModeSelectedImagePathByModeId(7); } else if (acMode == ZigBee.Device.AC.AcMode.Dry) { return GetModeSelectedImagePathByModeId(8); } return GetModeSelectedImagePathByModeId(1); } /// /// 通过模式id获取选中的图片路径 /// /// The mode selected image path by mode identifier. /// Ac mode. public static string GetModeUnSelectedImagePathByMode(ZigBee.Device.AC.AcMode acMode) { if (acMode == ZigBee.Device.AC.AcMode.Auto) { return GetModeUnSelectedImagePathByModeId(1); } else if (acMode == ZigBee.Device.AC.AcMode.Cool) { return GetModeUnSelectedImagePathByModeId(3); } else if (acMode == ZigBee.Device.AC.AcMode.Heat) { return GetModeUnSelectedImagePathByModeId(4); } else if (acMode == ZigBee.Device.AC.AcMode.FanOnly) { return GetModeUnSelectedImagePathByModeId(7); } else if (acMode == ZigBee.Device.AC.AcMode.Dry) { return GetModeUnSelectedImagePathByModeId(8); } return GetModeUnSelectedImagePathByModeId(1); } #endregion #region ◆ 获取扫风模式图片名称_____________________ /// /// 通过扫风模式获取选中图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanSwingModeSelectedImagePathByFanSwingModeId(int swingMode) { if (swingMode == 0) { return "AC/Swing_1Selected.png"; } else if (swingMode == 1) { return "AC/Swing_2Selected.png"; } else if (swingMode == 2) { return "AC/Swing_3Selected.png"; } else if (swingMode == 3) { return "AC/Swing_4Selected.png"; } else if (swingMode == 4) { return "AC/Swing_5Selected.png"; } return "AC/Swing_AutoSelected.png"; } /// /// 通过扫风模式获取图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanSwingModeUnSelectedImagePathByFanSwingModeId(int swingMode) { if (swingMode == 0) { return "AC/Swing_1.png"; } else if (swingMode == 1) { return "AC/Swing_2.png"; } else if (swingMode == 2) { return "AC/Swing_3.png"; } else if (swingMode == 3) { return "AC/Swing_4.png"; } else if (swingMode == 4) { return "AC/Swing_5.png"; } return "AC/Swing_Auto.png"; } /// /// 通过扫风模式获取选中图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanSwingModeSelectedImagePathByFanSwingMode(ZigBee.Device.AC.FanSwingMode swingMode) { return GetFanSwingModeSelectedImagePathByFanSwingModeId((int)swingMode); } /// /// 通过扫风模式获取图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanSwingModeUnSelectedImagePathByFanSwingMode(ZigBee.Device.AC.FanSwingMode swingMode) { return GetFanSwingModeUnSelectedImagePathByFanSwingModeId((int)swingMode); } #endregion #region ◆ 获取风速图片名称_____________________ /// /// 通过风速模式获取风速选中图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanModeSelectedImagePathByFanModeId(int fanMode) { if(fanMode == 1) { return "AC/Fan_LowSelected.png"; } else if(fanMode == 2) { return "AC/Fan_MiddleSelected.png"; } else if(fanMode == 3) { return "AC/Fan_HeightSelected.png"; } return "AC/Fan_LowSelected.png"; } /// /// 通过风速模式获取风速图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanModeUnSelectedImagePathByFanModeId(int fanMode) { if (fanMode == 1) { return "AC/Fan_Low.png"; } else if (fanMode == 2) { return "AC/Fan_Middle.png"; } else if (fanMode == 3) { return "AC/Fan_Height.png"; } return "AC/Fan_Low.png"; } /// /// 通过风速模式获取风速选中图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanModeSelectedImagePathByFanMode(ZigBee.Device.AC.FanMode fanMode) { return GetFanModeSelectedImagePathByFanModeId((int)fanMode); } /// /// 通过风速模式获取风速图片 /// /// The fan mode selected image path by fan mode identifier. /// Fan mode. public static string GetFanModeUnSelectedImagePathByFanMode(ZigBee.Device.AC.FanMode fanMode) { return GetFanModeUnSelectedImagePathByFanModeId((int)fanMode); } #endregion #region ◆ 获取模式__________________________ //public static ZigBee.Device.AC.AcMode GetModeByModeId(int modeId) //{ //if(modeId==) //} #endregion #region ◆ 获取温度__________________________ public static int GetCurrentModeTemperature(ZigBee.Device.AC ac) { if (ac.currentSystemMode == 3 || ac.currentSystemMode == 8) { return ac.currentCoolingSetpoint; } else if (ac.currentSystemMode == 4) { return ac.currentHeatingSetpoint; } else if (ac.currentSystemMode == 1) { return ac.currentAutoSetpoint; } return ac.currentLocalTemperature; } #endregion #region ◆ 设置温度__________________________ /// /// 设置当前模式下的温度 /// /// Ac. /// Temperature. public static void SetCurrentModeTemperature(ZigBee.Device.AC ac ,int temperature) { if (ac.currentSystemMode == 3) { ac.currentCoolingSetpoint+=temperature; } else if (ac.currentSystemMode == 4) { ac.currentHeatingSetpoint+=temperature; } } #endregion #region ◆ 当前空调开关状态____________________ /// /// 当前空调开关状态 /// /// true, if open was ised, false otherwise. /// Ac. public static bool IsOpen(ZigBee.Device.AC ac) { if (ac.currentSystemMode == 0) { return false; } return true; } #endregion #region ◆ 提示空调已关________________________ /// /// 提示空调已关 /// public static void ShowACIsCloseTip() { Application.RunOnMainThread(() => { string msg = Language.StringByID(R.MyInternationalizationString.TheACIsClose); //var tip = new Phone.UserCenter.TipViewControl(msg, 1000, 1); //tip.ShowView(); }); } #endregion } }