using System;
using System.Collections.Generic;
using Shared;
namespace HDL_ON.Entity
{
public class AC
{
///
/// 当前温度模式字符
///
public string GetTempUnitString(Function function)
{
var tt = function.GetAttrState(FunctionAttributeKey.TempType);
if (tt == "0")
{
return "°C";
}
else
{
return tt;
}
}
///
/// 获取温度单位bus标识
///
///
///
public int GetTempUintIndex(Function function)
{
var tt = function.GetAttrState(FunctionAttributeKey.TempType);
if(tt == "°F")
{
return 1;
}
else
{
return 0;
}
}
///
/// 根据bus标识设置温度单位
///
///
///
public void SetTempUint(Function function,int index)
{
if (index == 0)
{
function.SetAttrState(FunctionAttributeKey.TempType, "°C");
}
else
{
function.SetAttrState(FunctionAttributeKey.TempType, "°F");
}
}
///
/// 当前模式索引
/// bus控制命令使用
///
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;
}
///
/// 设置bus协议标记设置a协议数据
///
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);
}
///
/// 当前风速索引
/// bus控制命令使用
///
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;
}
///
/// 根据bus协议风速标记设置a协议标记
///
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);
}
///
/// 当前模式的icon路径
///
/// 获取的图标类型,默认是点亮
///
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;
}
///
/// 当前模式的icon路径
///
/// 获取的图标类型,默认是点亮
///
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;
}
///
/// 当前风速的icon路径
///
/// 获取的图标类型,默认是点亮
///
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;
}
///
/// 获取模式属性文本
///
///
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;
}
///
/// 获取扫风模式属性文本
///
///
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;
}
///
/// 获取风速属性文本
///
///
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;
}
}
}