using System;
|
using System.Collections.Generic;
|
using Shared;
|
|
namespace HDL_ON.Entity
|
{
|
public class AC
|
{
|
/// <summary>
|
/// 当前温度模式字符
|
/// </summary>
|
public string GetTempUnitString(Function function)
|
{
|
var tt = function.GetAttrState(FunctionAttributeKey.TempType);
|
if (tt == "0")
|
{
|
return "°C";
|
}
|
else
|
{
|
return tt;
|
}
|
}
|
|
/// <summary>
|
/// 获取温度单位bus标识
|
/// </summary>
|
/// <param name="function"></param>
|
/// <returns></returns>
|
public int GetTempUintIndex(Function function)
|
{
|
var tt = function.GetAttrState(FunctionAttributeKey.TempType);
|
if(tt == "°F")
|
{
|
return 1;
|
}
|
else
|
{
|
return 0;
|
}
|
}
|
/// <summary>
|
/// 根据bus标识设置温度单位
|
/// </summary>
|
/// <param name="function"></param>
|
/// <returns></returns>
|
public void SetTempUint(Function function,int index)
|
{
|
if (index == 0)
|
{
|
function.SetAttrState(FunctionAttributeKey.TempType, "°C");
|
}
|
else
|
{
|
function.SetAttrState(FunctionAttributeKey.TempType, "°F");
|
}
|
}
|
|
/// <summary>
|
/// 当前模式索引
|
/// bus控制命令使用
|
/// </summary>
|
public byte GetModeIndex(Function function)
|
{
|
var value = function.GetAttrState(FunctionAttributeKey.Mode);
|
byte index = 0;
|
switch (value)
|
{
|
case "auto":
|
index = 3;
|
break;
|
case "cool":
|
index = 0;
|
break;
|
case "heat":
|
index = 1;
|
break;
|
case "dry":
|
index = 4;
|
break;
|
case "fan":
|
index = 2;
|
break;
|
default:
|
index = 0;
|
break;
|
}
|
return index;
|
}
|
|
/// <summary>
|
/// 设置bus协议标记设置a协议数据
|
/// </summary>
|
public void SetMode(int index , Function function)
|
{
|
string value = "auto";
|
switch (index)
|
{
|
case 3:
|
value = "auto";
|
break;
|
case 0:
|
value = "cool";
|
break;
|
case 1:
|
value = "heat";
|
break;
|
case 4:
|
value = "dry";
|
break;
|
case 2:
|
value = "fan";
|
break;
|
}
|
function.SetAttrState(FunctionAttributeKey.Mode, value);
|
}
|
|
/// <summary>
|
/// 当前风速索引
|
/// bus控制命令使用
|
/// </summary>
|
public byte GetFanIndex(Function function)
|
{
|
var value = function.GetAttrState(FunctionAttributeKey.FanSpeed);
|
byte index = 0;
|
switch (value)
|
{
|
case "high":
|
index = 1;
|
break;
|
case "medium":
|
index = 2;
|
break;
|
case "low":
|
index = 3;
|
break;
|
case "auto":
|
index = 0;
|
break;
|
default:
|
index = 0;
|
break;
|
}
|
return index;
|
}
|
/// <summary>
|
/// 根据bus协议风速标记设置a协议标记
|
/// </summary>
|
public void SetFan(int index,Function function)
|
{
|
string value = "high";
|
switch (index)
|
{
|
case 1:
|
value = "high";
|
break;
|
case 2:
|
value = "medium";
|
break;
|
case 3:
|
value = "low";
|
break;
|
case 0:
|
value = "auto";
|
break;
|
}
|
function.SetAttrState(FunctionAttributeKey.FanSpeed, value);
|
}
|
|
/// <summary>
|
/// 当前模式的icon路径
|
/// </summary>
|
/// <param name="lightingIcon">获取的图标类型,默认是点亮</param>
|
/// <returns></returns>
|
public string GetModeIconPath(string modeValue , bool lightingIcon = true)
|
{
|
var imagePath = "FunctionIcon/AC/CoolIcon.png";
|
if (lightingIcon)
|
{
|
switch (modeValue)
|
{
|
case "auto":
|
imagePath = "FunctionIcon/AC/AutoIcon.png";
|
break;
|
case "cool":
|
imagePath = "FunctionIcon/AC/CoolIcon.png";
|
break;
|
case "heat":
|
imagePath = "FunctionIcon/AC/HeatingIcon.png";
|
break;
|
case "dry":
|
imagePath = "FunctionIcon/AC/DehumidificationIcon.png";
|
break;
|
case "fan":
|
imagePath = "FunctionIcon/AC/AirSupplyIcon.png";
|
break;
|
default:
|
imagePath = "FunctionIcon/AC/CoolIcon.png";
|
break;
|
}
|
}
|
else
|
{
|
imagePath = "FunctionIcon/AC/AutoIconGray.png";
|
switch (modeValue)
|
{
|
case "auto":
|
imagePath = "FunctionIcon/AC/AutoIconGray.png";
|
break;
|
case "cool":
|
imagePath = "FunctionIcon/AC/CoolIconGray.png";
|
break;
|
case "heat":
|
imagePath = "FunctionIcon/AC/HeatingIconGray.png";
|
break;
|
case "dry":
|
imagePath = "FunctionIcon/AC/DehumidificationIconGray.png";
|
break;
|
case "fan":
|
imagePath = "FunctionIcon/AC/AirSupplyIconGray.png";
|
break;
|
}
|
}
|
return imagePath;
|
}
|
|
/// <summary>
|
/// 当前模式的icon路径
|
/// </summary>
|
/// <param name="lightingIcon">获取的图标类型,默认是点亮</param>
|
/// <returns></returns>
|
public string GetSwingIconPath(string swingValue,bool lightingIcon = true)
|
{
|
var imagePath = "FunctionIcon/AC/SweepIconNullOn.png";
|
if (lightingIcon)
|
{
|
switch (swingValue)
|
{
|
case "up_down":
|
imagePath = "FunctionIcon/AC/SweepIconUDOn.png";
|
break;
|
case "left_right":
|
imagePath = "FunctionIcon/AC/SweepIconLROn.png";
|
break;
|
case "stop":
|
imagePath = "FunctionIcon/AC/SweepIconNullOn.png";
|
break;
|
}
|
}
|
else
|
{
|
imagePath = "FunctionIcon/AC/SweepIconNull.png";
|
switch (swingValue)
|
{
|
case "up_down":
|
imagePath = "FunctionIcon/AC/SweepIconUD.png";
|
break;
|
case "left_right":
|
imagePath = "FunctionIcon/AC/SweepIconLR.png";
|
break;
|
case "stop":
|
imagePath = "FunctionIcon/AC/SweepIconNull.png";
|
break;
|
}
|
}
|
return imagePath;
|
}
|
|
/// <summary>
|
/// 当前风速的icon路径
|
/// </summary>
|
/// <param name="lightingIcon">获取的图标类型,默认是点亮</param>
|
/// <returns></returns>
|
public string GetFanIconPath(string modeValue, bool lightingIcon = true)
|
{
|
var imagePath = "FunctionIcon/AC/WindHighIcon.png";
|
if (lightingIcon)
|
{
|
switch (modeValue)
|
{
|
case "high":
|
imagePath = "FunctionIcon/AC/WindHighIcon.png";
|
break;
|
case "medium":
|
imagePath = "FunctionIcon/AC/WindMediumIcon.png";
|
break;
|
case "low":
|
imagePath = "FunctionIcon/AC/WindLowIcon.png";
|
break;
|
case "auto":
|
imagePath = "FunctionIcon/AC/AutoIcon.png";
|
break;
|
}
|
}
|
else
|
{
|
switch (modeValue)
|
{
|
case "high":
|
imagePath = "FunctionIcon/AC/WindHighIconGray.png";
|
break;
|
case "medium":
|
imagePath = "FunctionIcon/AC/WindMediumIconGray.png";
|
break;
|
case "low":
|
imagePath = "FunctionIcon/AC/WindLowIconGray.png";
|
break;
|
case "auto":
|
imagePath = "FunctionIcon/AC/AutoIconGray.png";
|
break;
|
}
|
}
|
|
return imagePath;
|
}
|
|
|
/// <summary>
|
/// 获取模式属性文本
|
/// </summary>
|
/// <returns></returns>
|
public string GetModeAttrText(string value)
|
{
|
string text = "";
|
switch (value)
|
{
|
#region 模式
|
case "auto":
|
text = Language.StringByID(StringId.Auto);
|
break;
|
case "cool":
|
text = Language.StringByID(StringId.Cool);
|
break;
|
case "heat":
|
text = Language.StringByID(StringId.Heat);
|
break;
|
case "dry":
|
text = Language.StringByID(StringId.Dry);
|
break;
|
case "fan":
|
text = Language.StringByID(StringId.AirSupply);
|
break;
|
#endregion
|
}
|
return text;
|
}
|
|
/// <summary>
|
/// 获取扫风模式属性文本
|
/// </summary>
|
/// <returns></returns>
|
public string GetSwingAttrText(string value)
|
{
|
string text = "";
|
switch (value)
|
{
|
#region 模式
|
case "up_down":
|
text = Language.StringByID(StringId.Swing_Up_Down);
|
break;
|
case "left_right":
|
text = Language.StringByID(StringId.Swing_Left_Right);
|
break;
|
case "stop":
|
text = Language.StringByID(StringId.tingzhi);
|
break;
|
#endregion
|
}
|
return text;
|
}
|
|
|
/// <summary>
|
/// 获取风速属性文本
|
/// </summary>
|
/// <returns></returns>
|
public string GetFanAttrText(string value)
|
{
|
string text = "";
|
switch (value)
|
{
|
#region 风速
|
case "high":
|
text = Language.StringByID(StringId.HighWindSpeed);
|
break;
|
case "medium":
|
text = Language.StringByID(StringId.MiddleWindSpeed);
|
break;
|
case "low":
|
text = Language.StringByID(StringId.LowWindSpeed);
|
break;
|
case "auto":
|
text = Language.StringByID(StringId.Auto);
|
break;
|
#endregion
|
}
|
return text;
|
}
|
|
}
|
}
|