From 4d14154c36ac5692aadc036eed97fb9f1c410e2a Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期日, 23 五月 2021 14:46:03 +0800
Subject: [PATCH] Merge branch 'WJC' into temp-wxr
---
HDL_ON/Entity/Function/AC.cs | 646 +++++++++++++++++++++++++---------------------------------
1 files changed, 276 insertions(+), 370 deletions(-)
diff --git a/HDL_ON/Entity/Function/AC.cs b/HDL_ON/Entity/Function/AC.cs
index e21a0b1..e05d976 100644
--- a/HDL_ON/Entity/Function/AC.cs
+++ b/HDL_ON/Entity/Function/AC.cs
@@ -1,45 +1,58 @@
锘縰sing System;
using System.Collections.Generic;
+using Shared;
namespace HDL_ON.Entity
{
- public class AC : Function
+ public class AC
{
- /*
- * 绌鸿皟锛歵rait: [switch, mode, fan, set_temp, swing, lock]
- * 灞炴�� 鎻忚堪
- * on_off on/off
- * mode mode: auto, cool, heat, dry, fan
- * fan high, medium, low, auto
- * set_temp up,down,value
- * swing up/down/left/right
- * lock boolean (Lock閿佸畾鎺у埗)
- */
- public AC()
- {
- }
- /// <summary>
- /// 褰撳墠娓╁害妯″紡
- /// 0:鎽勬皬搴�
- /// 1:鍗庢皬搴�
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public int curTempType = 0;
/// <summary>
/// 褰撳墠娓╁害妯″紡瀛楃
/// </summary>
- public string tempUnitString
+ public string GetTempUnitString(Function function)
{
- get
+ var tt = function.GetAttrState(FunctionAttributeKey.TempType);
+ if (tt == "0")
{
- if (curTempType == 0)
- {
- return "掳C";
- }
- else
- {
- return "掳F";
- }
+ 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");
}
}
@@ -47,381 +60,274 @@
/// 褰撳墠妯″紡绱㈠紩
/// bus鎺у埗鍛戒护浣跨敤
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public byte curModeIndex
+ public byte GetModeIndex(Function function)
{
- get
+ var value = function.GetAttrState(FunctionAttributeKey.Mode);
+ byte index = 0;
+ switch (value)
{
- try
- {
- byte index = 0;
- switch (trait_mode.curValue.ToString())
- {
- 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;
- }
- catch (Exception ex)
- {
- MainPage.Log($"get curModeIndex error : {ex.Message}");
- return 0;
- }
+ 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;
}
- set
- {
- switch (value)
- {
- case 0:
- trait_mode.curValue = "cool";
- break;
- case 1:
- trait_mode.curValue = "heat";
- break;
- case 2:
- trait_mode.curValue = "fan";
- break;
- case 3:
- trait_mode.curValue = "auto";
- break;
- case 4:
- trait_mode.curValue = "dry";
- break;
- default:
- trait_mode.curValue = "cool";
- 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>
- [Newtonsoft.Json.JsonIgnore]
- public byte curFanIndex
+ public byte GetFanIndex(Function function)
{
- get
+ var value = function.GetAttrState(FunctionAttributeKey.FanSpeed);
+ byte index = 0;
+ switch (value)
{
- try
- {
- byte index = 0;
- switch (trait_fan.curValue.ToString())
- {
- 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;
- }
- catch (Exception ex)
- {
- MainPage.Log($"get curFanIndex error : {ex.Message}");
- return 0;
- }
+ case "high":
+ index = 1;
+ break;
+ case "medium":
+ index = 2;
+ break;
+ case "low":
+ index = 3;
+ break;
+ case "auto":
+ index = 0;
+ break;
+ default:
+ index = 0;
+ break;
}
- set
- {
- switch (value)
- {
- case 0:
- trait_fan.curValue = "auto";
- break;
- case 1:
- trait_fan.curValue = "high";
- break;
- case 2:
- trait_fan.curValue = "medium";
- break;
- case 3:
- trait_fan.curValue = "low";
- break;
- default:
- trait_fan.curValue = "high";
- break;
- }
- }
+ return index;
}
-
- FunctionAttributes _trait_mode;
/// <summary>
- /// 妯″紡灞炴��
+ /// 鏍规嵁bus鍗忚椋庨�熸爣璁拌缃產鍗忚鏍囪
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public FunctionAttributes trait_mode
+ public void SetFan(int index,Function function)
{
- get
+ string value = "high";
+ switch (index)
{
- if (_trait_mode == null)
- {
- _trait_mode = attributes.Find((obj) => obj.key == "mode");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_mode == null)
- {
- _trait_mode = new FunctionAttributes()
- {
- key = "mode",
- value = new List<string> { "auto", "cool", "heat", "dry", "fan" },
- max = 4,
- min = 0,
- };
- }
- }
- if (_trait_mode.curValue.ToString() == "{}")
- _trait_mode.curValue = "cool";
- return _trait_mode;
+ case 1:
+ value = "high";
+ break;
+ case 2:
+ value = "medium";
+ break;
+ case 3:
+ value = "low";
+ break;
+ case 0:
+ value = "auto";
+ break;
}
- }
-
- FunctionAttributes _trait_fan;
- [Newtonsoft.Json.JsonIgnore]
- public FunctionAttributes trait_fan
- {
- get
- {
- if (_trait_fan == null)
- {
- _trait_fan = attributes.Find((obj) => obj.key == "fan");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_fan == null)
- {
- _trait_fan = new FunctionAttributes()
- {
- key = "fan",
- value = new List<string> { "high", "medium", "low", "auto" },
- max = 3,
- min = 0,
- curValue = "high"
- };
- }
- }
- if (_trait_fan.curValue.ToString() == "{}")
- _trait_fan.curValue = "high";
- return _trait_fan;
- }
- }
-
- FunctionAttributes _trait_temp;
- /// <summary>
- /// 褰撳墠绌鸿皟娓╁害
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public FunctionAttributes trait_temp
- {
- get
- {
- if (_trait_temp == null)
- {
- _trait_temp = attributes.Find((obj) => obj.key == "set_temp");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_temp == null)
- {
- _trait_temp = new FunctionAttributes()
- {
- key = "set_temp",
- value = new List<string> { },
- max = 32,
- min = 16,
- };
- }
- if (_trait_temp.curValue.ToString() == "{}")
- _trait_temp.curValue = 16;
- }
- //if (_trait_temp.curValue.ToString().Length > 3)
- {
- double vv = 16;
- Double.TryParse(_trait_temp.curValue.ToString(),out vv);
- _trait_temp.curValue = Convert.ToInt32(vv);
- }
- return _trait_temp;
- }
- }
-
- FunctionAttributes _trait_swting;
- [Newtonsoft.Json.JsonIgnore]
- public FunctionAttributes trait_swting
- {
- get
- {
- if (_trait_swting == null)
- {
- _trait_swting = attributes.Find((obj) => obj.key == "swting");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_swting == null)
- {
- _trait_swting = new FunctionAttributes()
- {
- key = "swting",
- value = new List<string> { "up", "down", "left", "right" },
- max = 3,
- min = 0,
- };
- }
- if (_trait_swting.curValue.ToString() == "{}")
- _trait_swting.curValue = "up";
- }
- return _trait_swting;
- }
- }
- /// <summary>
- /// 绌鸿皟鎵妯″紡鍒楄〃
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public List<string> swting
- {
- get
- {
- try
- {
- return trait_swting.value;
- }
- catch (Exception ex)
- {
- MainPage.Log($"ac get swting error : {ex.Message}");
- return new List<string> { "up", "down", "left", "right" };
- }
- }
- }
- FunctionAttributes _trait_IndoorTemp;
- /// <summary>
- /// 瀹ゅ唴娓╁害
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public FunctionAttributes trait_IndoorTemp
- {
- get
- {
- if (_trait_IndoorTemp == null)
- {
- _trait_IndoorTemp = attributes.Find((obj) => obj.key == FunctionAttributeKey.IndoorTemp);
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_IndoorTemp == null)
- {
- _trait_IndoorTemp = new FunctionAttributes()
- {
- key = FunctionAttributeKey.IndoorTemp,
- value = new List<string> { },
- max = 30,
- min = 0,
- };
- }
- if (_trait_IndoorTemp.curValue.ToString() == "{}")
- _trait_IndoorTemp.curValue = 0;
- }
- //if (_trait_IndoorTemp.curValue.ToString().Length > 3)
- {
- var vv = Convert.ToDouble(_trait_IndoorTemp.curValue);
- _trait_IndoorTemp.curValue = Convert.ToInt32(vv);
- }
- return _trait_IndoorTemp;
- }
+ function.SetAttrState(FunctionAttributeKey.FanSpeed, value);
}
/// <summary>
/// 褰撳墠妯″紡鐨刬con璺緞
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public string curModeImage
+ /// <param name="lightingIcon">鑾峰彇鐨勫浘鏍囩被鍨嬶紝榛樿鏄偣浜�</param>
+ /// <returns></returns>
+ public string GetModeIconPath(string modeValue , bool lightingIcon = true)
{
- get
+ var imagePath = "FunctionIcon/AC/CoolIcon.png";
+ if (lightingIcon)
{
- try
+ switch (modeValue)
{
- var imagePath = "FunctionIcon/AC/CoolIcon.png";
- switch (trait_mode.curValue.ToString())
- {
- 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;
- }
- return imagePath;
- }
- catch (Exception ex)
- {
- MainPage.Log($"ac ge curModeImage error : {ex.Message}");
- return "FunctionIcon/AC/CoolIcon.png";
+ 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>
- [Newtonsoft.Json.JsonIgnore]
- public string curFanImage
+ /// <param name="lightingIcon">鑾峰彇鐨勫浘鏍囩被鍨嬶紝榛樿鏄偣浜�</param>
+ /// <returns></returns>
+ public string GetFanIconPath(string modeValue, bool lightingIcon = true)
{
- get
+ var imagePath = "FunctionIcon/AC/WindHighIcon.png";
+ if (lightingIcon)
{
- try
+ switch (modeValue)
{
- var imagePath = "FunctionIcon/AC/WindHighIcon.png";
- switch (trait_fan.curValue.ToString())
- {
- 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;
- default:
- imagePath = "FunctionIcon/AC/WindHighIcon.png";
- break;
- }
- return imagePath;
- }catch (Exception ex)
- {
- MainPage.Log($"ac get curFanImage error : {ex.Message}");
- return "FunctionIcon/AC/WindHighIcon.png";
+ 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 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;
}
}
--
Gitblit v1.8.0