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
}
}