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/FloorHeating.cs | 399 ++++++++++++++++++++++++++------------------------------
1 files changed, 185 insertions(+), 214 deletions(-)
diff --git a/HDL_ON/Entity/Function/FloorHeating.cs b/HDL_ON/Entity/Function/FloorHeating.cs
index d9cf8b3..30ef6c0 100644
--- a/HDL_ON/Entity/Function/FloorHeating.cs
+++ b/HDL_ON/Entity/Function/FloorHeating.cs
@@ -1,154 +1,147 @@
锘縰sing System;
using System.Collections.Generic;
+using Shared;
namespace HDL_ON.Entity
{
- public class FloorHeating : Function
+ public class FloorHeating
{
- /*
- *鍦扮儹锛歵rait: [switch, mode, temperature, lock]
- *灞炴�� 鎻忚堪
- *switch on/off
- *mode day, night,away, vacation, timer
- *temperature value(鍙)
- *lock boolean(Lock閿佸畾鎺у埗)
- *set_ point up,down,value
- */
- public FloorHeating()
+ /// <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>
- /// 褰撳墠娓╁害妯″紡
- /// 0:鎽勬皬搴�
- /// 1:鍗庢皬搴�
+ /// 鏍规嵁bus鏍囪瘑璁剧疆娓╁害鍗曚綅
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public int curTempType = 0;
+ /// <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鍗忚宸ヤ綔妯″紡index
/// 0:鍦扮儹妯″紡锛�1:鍦板喎妯″紡锛�
/// 2:鍦扮儹鍔熺巼妯″紡锛�3:鍦板喎鍔熺巼妯″紡锛�
/// </summary>
- public int workMode = 0;
- /// <summary>
- /// 褰撳墠娓╁害妯″紡瀛楃
- /// </summary>
- public string tempUnitString
+ public int GetWorkModeIndex(Function function)
{
- get
- {
- if (curTempType == 0)
- {
- return "掳C";
- }
- else
- {
- return "掳F";
- }
- }
- }
- Trait _trait_mode;
- /// <summary>
- /// 妯″紡灞炴��
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public Trait trait_mode
- {
- get
- {
- if (_trait_mode == null)
- {
- _trait_mode = function.Find((obj) => obj.name == "mode");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_mode == null)
- {
- _trait_mode = new Trait()
- {
- name = "mode",
- value_key = new List<string> { "day", "night", "away", "vacation", "timer" },
- max = 4,
- min = 0,
- };
- }
- _trait_mode.value = _trait_mode.value_key.Count > 0 ? _trait_mode.value_key[0] : "";
- }
- return _trait_mode;
- }
+ var attr = function.GetAttrState(FunctionAttributeKey.WorkMode);
+ if (attr == "cool")
+ return 1;
+ return 0;
}
/// <summary>
- /// 宸ヤ綔妯″紡瀵瑰簲鐨勫伐浣滄俯搴�
+ /// 璁剧疆bus鍗忚宸ヤ綔妯″紡index
+ /// 0:鍦扮儹妯″紡锛�1:鍦板喎妯″紡锛�
+ /// 2:鍦扮儹鍔熺巼妯″紡锛�3:鍦板喎鍔熺巼妯″紡锛�
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public Dictionary<string, byte> modeTemp = new Dictionary<string, byte>();
+ public void SetWorkModeIndex(Function function, int index)
+ {
+ if (index == 1)
+ function.SetAttrState(FunctionAttributeKey.WorkMode, "cool");
+ else
+ function.SetAttrState(FunctionAttributeKey.WorkMode, "heat");
+ }
/// <summary>
- /// 褰撳墠妯″紡绱㈠紩
- /// bus鎺у埗鍛戒护浣跨敤
+ /// 鑾峰彇娓╁害妯″紡瀛楃
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public byte curModeIndex
+ public string GetTempUnitString(Function function)
{
- get
+ var tt = function.GetAttrState(FunctionAttributeKey.TempType);
+ if (tt == "0")
{
- try
- {
- byte index = 0;
- switch (trait_mode.value.ToString())
- {
- case "day":
- index = 2;
- break;
- case "night":
- index = 3;
- break;
- case "away":
- index = 4;
- break;
- case "normal":
- index = 1;
- break;
- case "timer":
- index = 5;
- break;
- default:
- index = 0;
- break;
- }
- return index;
- }
- catch (Exception ex)
- {
- MainPage.Log($"get curModeIndex error : {ex.Message}");
- return 0;
- }
+ return "掳C";
}
- set
+ else
{
- switch (value)
- {
- case 5:
- trait_mode.value = "timer";
- break;
- case 1:
- trait_mode.value = "normal";
- break;
- case 2:
- trait_mode.value = "day";
- break;
- case 3:
- trait_mode.value = "night";
- break;
- case 4:
- trait_mode.value = "away";
- break;
- default:
- trait_mode.value = "cool";
- break;
+ return tt;
+ }
+ }
- }
+
+
+ /// <summary>
+ /// 鑾峰彇bus鍗忚妯″紡绱㈠紩
+ /// </summary>
+ public byte GetModeIndex(Function function)
+ {
+ byte index = 0;
+ var mode = function.GetAttrState(FunctionAttributeKey.Mode);
+ switch (mode)
+ {
+ case "day":
+ index = 2;
+ break;
+ case "night":
+ index = 3;
+ break;
+ case "away":
+ index = 4;
+ break;
+ case "normal":
+ index = 1;
+ break;
+ case "timer":
+ index = 5;
+ break;
+ default:
+ index = 0;
+ break;
}
+ return index;
+ }
+ /// <summary>
+ /// 璁剧疆bus鍗忚妯″紡绱㈠紩
+ /// </summary>
+ public void SetModeIndex(int value, Function function)
+ {
+ string mode = "timer";
+ switch (value)
+ {
+ case 5:
+ mode = "timer";
+ break;
+ case 1:
+ mode = "normal";
+ break;
+ case 2:
+ mode = "day";
+ break;
+ case 3:
+ mode = "night";
+ break;
+ case 4:
+ mode = "away";
+ break;
+ default:
+ mode = "cool";
+ break;
+ }
+ function.SetAttrState(FunctionAttributeKey.Mode, mode);
}
/// <summary>
@@ -158,110 +151,88 @@
public byte timeFlag = 0;
/// <summary>
- /// 瀹ゅ唴娓╁害
+ /// 鑾峰彇妯″紡鐨刬con璺緞
+ /// <param name="lightingIcon">鑾峰彇鐨勫浘鏍囩被鍨嬶紝榛樿鏄偣浜�</param>
/// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public int indoorTemp = 20;
-
-
- Trait _trait_temperature;
- /// <summary>
- /// 褰撳墠娓╁害
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public double curTemp
+ public string GetModeIconPath(string modeValue, bool lighting = true)
{
- get
+ var imagePath = "FunctionIcon/AC/HeatingIcon.png";
+ //var key = function.GetAttrState(FunctionAttributeKey.Mode);
+ if (lighting)
{
- try
+ switch (modeValue)
{
- if (_trait_temperature == null)
- {
- _trait_temperature = function.Find((obj) => obj.name == "temperature");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_temperature == null)
- {
- _trait_temperature = new Trait()
- {
- name = "temperature",
- value_key = new List<string>(),
- max = 32,
- min = 5,
- };
- }
- _trait_temperature.value = 5;
- }
- return 5;
- }
- catch (Exception ex)
- {
- MainPage.Log($"ac get temp error : {ex.Message}");
- return 5;
+ case "day":
+ imagePath = "FunctionIcon/AC/HeatingIcon.png";
+ break;
+ case "night":
+ imagePath = "FunctionIcon/FloorHeating/NightIcon.png";
+ break;
+ case "away":
+ imagePath = "FunctionIcon/FloorHeating/AwayIcon.png";
+ break;
+ case "timer":
+ imagePath = "FunctionIcon/AC/AutoIcon.png";
+ break;
+ case "normal":
+ imagePath = "FunctionIcon/FloorHeating/OrdinaryIcon.png";
+ break;
+ default:
+ imagePath = "FunctionIcon/AC/HeatingIcon.png";
+ break;
}
}
- set
+ else
{
- if (_trait_temperature == null)
+ switch (modeValue)
{
- _trait_temperature = function.Find((obj) => obj.name == "temperature");
- //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
- if (_trait_temperature == null)
- {
- _trait_temperature = new Trait()
- {
- name = "temperature",
- value_key = new List<string>(),
- max = 4,
- min = 0,
- };
- }
- _trait_temperature.value = _trait_temperature.value_key[_trait_temperature.min];
+ case "day":
+ imagePath = "FunctionIcon/AC/HeatingIconGray.png";
+ break;
+ case "night":
+ imagePath = "FunctionIcon/FloorHeating/NightIconGray.png";
+ break;
+ case "away":
+ imagePath = "FunctionIcon/FloorHeating/AwayIconGray.png";
+ break;
+ case "timer":
+ imagePath = "FunctionIcon/AC/AutoIconGray.png";
+ break;
+ case "normal":
+ imagePath = "FunctionIcon/FloorHeating/OrdinaryIconGray.png";
+ break;
}
- _trait_temperature.value = value;
}
+ return imagePath;
}
- /// <summary>
- /// 褰撳墠妯″紡鐨刬con璺緞
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public string curModeImage
- {
- get
- {
- try
- {
- var imagePath = "FunctionIcon/AC/HeatingIcon.png";
- switch (trait_mode.value)
- {
- case "day":
- imagePath = "FunctionIcon/AC/HeatingIcon.png";
- break;
- case "night":
- imagePath = "FunctionIcon/FloorHeating/NightIcon.png";
- break;
- case "away":
- imagePath = "FunctionIcon/FloorHeating/AwayIcon.png";
- break;
- case "timer":
- imagePath = "FunctionIcon/AC/AutoIcon.png";
- break;
- case "normal":
- imagePath = "FunctionIcon/FloorHeating/OrdinaryIcon.png";
- break;
- default:
- imagePath = "FunctionIcon/AC/HeatingIcon.png";
- break;
- }
- return imagePath;
- }
- catch (Exception ex)
- {
- MainPage.Log($"ac ge curModeImage error : {ex.Message}");
- return "FunctionIcon/AC/CoolIcon.png";
- }
- }
- }
+ /// <summary>
+ /// 鑾峰彇妯″紡灞炴�ф枃鏈�
+ /// </summary>
+ /// <returns></returns>
+ public string GetModeAttrText(string value)
+ {
+ string text = "";
+ switch (value)
+ {
+ case "day":
+ text = Language.StringByID(StringId.Day);
+ break;
+ case "night":
+ text = Language.StringByID(StringId.Night);
+ break;
+ case "away":
+ text = Language.StringByID(StringId.Away);
+ break;
+ case "timer":
+ text = Language.StringByID(StringId.Auto);
+ break;
+ case "normal":
+ text = Language.StringByID(StringId.Normal);
+ break;
+ }
+ return text;
+ }
}
}
--
Gitblit v1.8.0