From f4c86f68b900bd506ef7214b2ae9bd23a9d2ffa8 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期六, 19 十二月 2020 17:48:11 +0800
Subject: [PATCH] 完成筛选房间的功能
---
HDL_ON/Entity/Function/AC.cs | 215 ++++++++++++++++++++++++++---------------------------
1 files changed, 106 insertions(+), 109 deletions(-)
diff --git a/HDL_ON/Entity/Function/AC.cs b/HDL_ON/Entity/Function/AC.cs
old mode 100644
new mode 100755
index 58a9824..a24c624
--- a/HDL_ON/Entity/Function/AC.cs
+++ b/HDL_ON/Entity/Function/AC.cs
@@ -1,19 +1,17 @@
锘縰sing System;
-using System.Collections;
using System.Collections.Generic;
-using Newtonsoft.Json.Linq;
namespace HDL_ON.Entity
{
public class AC : Function
{
/*
- * 绌鸿皟锛歵rait: [switch, mode, fan, temperature, swing, lock]
+ * 绌鸿皟锛歵rait: [switch, mode, fan, set_temp, swing, lock]
* 灞炴�� 鎻忚堪
* on_off on/off
* mode mode: auto, cool, heat, dry, fan
* fan high, medium, low, auto
- * temperature up,down,value
+ * set_temp up,down,value
* swing up/down/left/right
* lock boolean (Lock閿佸畾鎺у埗)
*/
@@ -30,7 +28,7 @@
/// <summary>
/// 褰撳墠娓╁害妯″紡瀛楃
/// </summary>
- public string curTempTypeString
+ public string tempUnitString
{
get
{
@@ -45,12 +43,6 @@
}
}
- ///// <summary>
- ///// 褰撳墠绌鸿皟妯″紡
- ///// </summary>
- //[Newtonsoft.Json.JsonIgnore]
- //public string curMode = "cool";
-
/// <summary>
/// 褰撳墠妯″紡绱㈠紩
/// bus鎺у埗鍛戒护浣跨敤
@@ -63,7 +55,7 @@
try
{
byte index = 0;
- switch (trait_mode.curValues.ToString())
+ switch (trait_mode.curValue.ToString())
{
case "auto":
index = 3;
@@ -97,22 +89,22 @@
switch (value)
{
case 0:
- trait_mode.curValues = "cool";
+ trait_mode.curValue = "cool";
break;
case 1:
- trait_mode.curValues = "heat";
+ trait_mode.curValue = "heat";
break;
case 2:
- trait_mode.curValues = "fan";
+ trait_mode.curValue = "fan";
break;
case 3:
- trait_mode.curValues = "auto";
+ trait_mode.curValue = "auto";
break;
case 4:
- trait_mode.curValues = "dry";
+ trait_mode.curValue = "dry";
break;
default:
- trait_mode.curValues = "cool";
+ trait_mode.curValue = "cool";
break;
}
@@ -130,7 +122,7 @@
try
{
byte index = 0;
- switch (trait_fan.curValues.ToString())
+ switch (trait_fan.curValue.ToString())
{
case "high":
index = 1;
@@ -161,140 +153,139 @@
switch (value)
{
case 0:
- trait_fan.curValues = "auto";
+ trait_fan.curValue = "auto";
break;
case 1:
- trait_fan.curValues = "high";
+ trait_fan.curValue = "high";
break;
case 2:
- trait_fan.curValues = "medium";
+ trait_fan.curValue = "medium";
break;
case 3:
- trait_fan.curValues = "low";
+ trait_fan.curValue = "low";
break;
default:
- trait_fan.curValues = "high";
+ trait_fan.curValue = "high";
break;
}
}
}
- Trait _trait_mode;
+
+ FunctionAttributes _trait_mode;
+ /// <summary>
+ /// 妯″紡灞炴��
+ /// </summary>
[Newtonsoft.Json.JsonIgnore]
- public Trait trait_mode
+ public FunctionAttributes trait_mode
{
get
{
if (_trait_mode == null)
{
- _trait_mode = propertList.Find((obj) => obj.attri == "mode");
+ _trait_mode = attributes.Find((obj) => obj.key == "mode");
//鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
if (_trait_mode == null)
{
- _trait_mode = new Trait()
+ _trait_mode = new FunctionAttributes()
{
- attri = "mode",
+ key = "mode",
value = new List<string> { "auto", "cool", "heat", "dry", "fan" },
max = 4,
min = 0,
};
}
- _trait_mode.curValues = _trait_mode.value.Count > 0 ? _trait_mode.value[0] : "";
+ if (_trait_mode.curValue.ToString() == "{}")
+ _trait_mode.curValue = "cool";
}
return _trait_mode;
}
}
- /// <summary>
- /// 绌鸿皟妯″紡
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public List<string> modeList
- {
- get
- {
- try
- {
- return trait_mode.value;
- }
- catch (Exception ex)
- {
- MainPage.Log($"ac get mode error : {ex.Message}");
- return new List<string> { "auto", "cool", "heat", "dry", "fan" };
- }
- }
- }
- Trait _trait_fan;
+ FunctionAttributes _trait_fan;
[Newtonsoft.Json.JsonIgnore]
- public Trait trait_fan {
+ public FunctionAttributes trait_fan
+ {
get
{
if (_trait_fan == null)
{
- _trait_fan = propertList.Find((obj) => obj.attri == "fan");
+ _trait_fan = attributes.Find((obj) => obj.key == "fan");
//鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
if (_trait_fan == null)
{
- _trait_fan = new Trait()
+ _trait_fan = new FunctionAttributes()
{
- attri = "fan",
+ key = "fan",
value = new List<string> { "high", "medium", "low", "auto" },
max = 3,
min = 0,
+ curValue = "high"
};
}
- _trait_fan.curValues = _trait_fan.value.Count > 0 ? _trait_fan.value[0] : "";
+ if (_trait_fan.curValue.ToString() == "{}")
+ _trait_fan.curValue = "high";
}
return _trait_fan;
}
}
- /// <summary>
- /// 绌鸿皟椋庨�熸ā寮�
- /// </summary>
- [Newtonsoft.Json.JsonIgnore]
- public List<string> fan_List
- {
- get
- {
- try
- {
- return trait_fan.value;
- }
- catch (Exception ex)
- {
- MainPage.Log($"ac get fan error : {ex.Message}");
- return new List<string> { "high", "medium", "low", "auto" };
- }
- }
- }
+
+ FunctionAttributes _trait_temp;
/// <summary>
/// 褰撳墠绌鸿皟娓╁害
/// </summary>
[Newtonsoft.Json.JsonIgnore]
- public int curTemp = 20;
- // temperature up, down, value
- // swing up/down/left/right
+ 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)
+ {
+ var vv = Convert.ToDouble(_trait_temp.curValue);
+ _trait_temp.curValue = Convert.ToInt32(vv);
+ }
+ return _trait_temp;
+ }
+ }
- Trait _trait_swting;
+ FunctionAttributes _trait_swting;
[Newtonsoft.Json.JsonIgnore]
- public Trait trait_swting
+ public FunctionAttributes trait_swting
{
get
{
if (_trait_swting == null)
{
- _trait_swting = propertList.Find((obj) => obj.attri == "swting");
+ _trait_swting = attributes.Find((obj) => obj.key == "swting");
//鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
if (_trait_swting == null)
{
- _trait_swting = new Trait()
+ _trait_swting = new FunctionAttributes()
{
- attri = "swting",
+ key = "swting",
value = new List<string> { "up", "down", "left", "right" },
max = 3,
min = 0,
};
}
- _trait_swting.curValues = _trait_swting.value.Count > 0 ? _trait_swting.value[trait_mode.min] : "";
+ if (_trait_swting.curValue.ToString() == "{}")
+ _trait_swting.curValue = "up";
}
return _trait_swting;
}
@@ -309,7 +300,6 @@
{
try
{
-
return trait_swting.value;
}
catch (Exception ex)
@@ -319,11 +309,40 @@
}
}
}
+ FunctionAttributes _trait_IndoorTemp;
/// <summary>
/// 瀹ゅ唴娓╁害
/// </summary>
[Newtonsoft.Json.JsonIgnore]
- public int indoorTemp = 20;
+ 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;
+ }
+ }
/// <summary>
/// 褰撳墠妯″紡鐨刬con璺緞
@@ -336,7 +355,7 @@
try
{
var imagePath = "FunctionIcon/AC/CoolIcon.png";
- switch (trait_mode.curValues.ToString())
+ switch (trait_mode.curValue.ToString())
{
case "auto":
imagePath = "FunctionIcon/AC/AutoIcon.png";
@@ -377,7 +396,7 @@
try
{
var imagePath = "FunctionIcon/AC/WindHighIcon.png";
- switch (trait_fan.curValues.ToString())
+ switch (trait_fan.curValue.ToString())
{
case "high":
imagePath = "FunctionIcon/AC/WindHighIcon.png";
@@ -403,28 +422,6 @@
}
}
}
- /// <summary>
- /// 鎷兼帴銆佽幏鍙朅鍗忚鎿嶄綔鏁版嵁
- /// </summary>
- public override JObject GetSendJObject(CommandType_A command)
- {
- var sendJob = new JObject();
- if (command == CommandType_A.write)
- {
- sendJob = new JObject { { "Namespace", vendor_code }, { "Command", command.ToString() }, { "Type", "device" } };
- JObject data = new JObject {{ "sid", sid } };
- sendJob.Add("objects", data);
- }
- else if (command == CommandType_A.read)
- {
- sendJob = new JObject { { "Namespace", vendor_code }, { "Command", command.ToString() }, { "Type", "device" } };
- var data = new JObject { { "sid", sid } };
- sendJob.Add("objects", data);
- }
- return sendJob;
- }
-
-
}
}
--
Gitblit v1.8.0