From 9cba77428a389c5dec6201422a877cb580166389 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期四, 21 十月 2021 10:03:26 +0800
Subject: [PATCH] 2021-10-21-01
---
HDL_ON/Entity/Function/Function.cs | 305 +++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 239 insertions(+), 66 deletions(-)
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index d24bbdf..64bc159 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -146,7 +146,48 @@
{
get
{
- return spk.Replace(".","");
+ string iconPath = spk.Replace(".", "");
+ switch (spk)
+ {
+ case SPK.PanelSocket:
+ iconPath = "electricalsocket";
+ break;
+ case SPK.SenesorMegahealth2:
+ iconPath = "sensormegahealth";
+ break;
+ case SPK.SensorEnvironmentHailin:
+ iconPath = "sensorenvironment";
+ break;
+ case SPK.HvacAirFresh:
+ iconPath = "airFreshstandard";
+ break;
+ case SPK.HvacAirFreshJinmao:
+ iconPath = "airFreshjinmao";
+ break;
+ case SPK.HvacAC:
+ iconPath = "acstandard";
+ break;
+ case SPK.HvacFan:
+ iconPath = "electricalfan";
+ break;
+ case SPK.ElectricTuyaFan2:
+ iconPath = "electricaltyqborgovyzytytz";
+ break;
+ case SPK.ElectricTuyaAirCleaner2:
+ iconPath = "electricalQ1RsefNf91tIXyyQ";
+ break;
+ case SPK.ElectricTuyaWaterValve2:
+ iconPath = "electricalkoiGhMKwLf2ZP81g";
+ break;
+ case SPK.ElectricTuyaWeepRobot2:
+ iconPath = "electricalai6HtccKFIw3dxo3";
+ break;
+ case SPK.AvMusic:
+ iconPath = "musicstandard";
+ break;
+
+ }
+ return iconPath;
}
}
@@ -188,24 +229,87 @@
/// </summary>
public string spk = "";
- string spk_Prefix;
+ private string _SpkCategory = string.Empty;
/// <summary>
- /// spk鍓嶇紑
- /// 澶х被
- /// 鍔熻兘绫诲埆
- /// 濡傦細绌鸿皟绫汇�佺伅鍏夌被銆佺獥甯樼被
+ /// spk 浜у搧鐨勫搧绫�
/// </summary>
- public string Spk_Prefix
+ public string SpkCategory
{
get
{
- if (string.IsNullOrEmpty(spk_Prefix))
+ if (string.IsNullOrEmpty(_SpkCategory))
{
- spk_Prefix = spk.Split(".")[0];
+ var arr = spk.Split(".");
+ if (arr.Length > 0)
+ {
+ _SpkCategory = arr[0];
+ }
}
- return spk_Prefix;
+ return _SpkCategory;
}
}
+
+ private string _SpkClassification = string.Empty;
+ /// <summary>
+ /// spk 浜у搧鍝佺被涓嬬殑鍒嗙被
+ /// </summary>
+ public string SpkClassification
+ {
+ get
+ {
+ if (string.IsNullOrEmpty(_SpkClassification))
+ {
+ var arr = spk.Split(".");
+ if (arr.Length > 1)
+ {
+ _SpkClassification = arr[1];
+ }
+ }
+ return _SpkClassification;
+ }
+ }
+
+ string _SpkManufacturer = string.Empty;
+ /// <summary>
+ /// spk 浜у搧鐨勫巶鍟�
+ /// </summary>
+ public string SpkManufacturer
+ {
+ get
+ {
+ if (string.IsNullOrEmpty(_SpkManufacturer))
+ {
+ var arr = spk.Split(".");
+ if (arr.Length > 2)
+ {
+ _SpkManufacturer = arr[2];
+ }
+ }
+ return _SpkManufacturer;
+ }
+ }
+
+
+ //string spk_Prefix;
+ ///// <summary>
+ ///// spk鍓嶇紑
+ ///// 澶х被
+ ///// 鍔熻兘绫诲埆
+ ///// 濡傦細绌鸿皟绫汇�佺伅鍏夌被銆佺獥甯樼被
+ ///// </summary>
+ //public string Spk_Prefix
+ //{
+ // get
+ // {
+ // if (string.IsNullOrEmpty(spk_Prefix))
+ // {
+ // spk_Prefix = spk.Split(".")[0];
+ // }
+ // return spk_Prefix;
+ // }
+ //}
+
+
/// <summary>
/// A鍗忚鍔熻兘鐨勭壒鎬�
/// 濡傦細鏄疉C鍔熻兘锛氱壒鎬э細on_off,mode,fan,temperature
@@ -515,6 +619,8 @@
case FunctionAttributeKey.SetTemp:
case FunctionAttributeKey.FanSpeed:
case FunctionAttributeKey.Percent:
+ case FunctionAttributeKey.CCT:
+ case FunctionAttributeKey.RGB:
//case FunctionAttributeKey.FadeTime:
if (attr.curValue.ToString() == "{}")
{
@@ -553,12 +659,13 @@
{
vv = 26;
}
- sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = Convert.ToInt32(vv).ToString() });
+ sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = Convert.ToInt32(vv).ToString(), max = attr.max, min = attr.min });
}
else
{
- sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = attr.curValue.ToString() });
+ sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = attr.curValue.ToString(), max = attr.max, min = attr.min });
}
+
break;
}
}
@@ -815,10 +922,29 @@
/// value
/// </summary>
public const string Value = "value";
+
+ public const string Co2 = "co2";
+ public const string Temperature = "temperature";
+ public const string Hcho = "hcho";
+ public const string Humidity = "humidity";
+ public const string Pm25 = "pm25";
+ public const string Tvoc = "tvoc";
/// <summary>
/// 鐘舵��,浼犳劅鍣�
/// </summary>
public const string Status = "status";
+ /// <summary>
+ /// 鐘舵��(鏈夋棤浜�)
+ /// </summary>
+ public const string PeopleStatus = "people_status";
+ /// <summary>
+ /// 鐘舵��(鎶ヨ)
+ /// </summary>
+ public const string AlarmStatus = "alarm_status";
+ /// <summary>
+ /// 鐘舵��(闂悎銆佹墦寮�)
+ /// </summary>
+ public const string ContactStatus = "contact_status";
/// <summary>
/// 姣背娉紶鎰熷櫒锛屽姩浣滅姸鎬�
/// </summary>
@@ -896,14 +1022,6 @@
/// 鑺傝兘
/// </summary>
public const string Energy = "energy";
- /// <summary>
- /// 婀垮害
- /// </summary>
- public const string Humidity = "humidity";
- /// <summary>
- /// 娓╁害
- /// </summary>
- public const string Temperature = "temperature";
/// <summary>
/// 瀹ゅ唴娓╁害
/// </summary>
@@ -1075,6 +1193,10 @@
/// 锛堢孩澶栫┖璋冿級
/// </summary>
public const string AcIr= "ir.ac";
+ /// <summary>
+ /// 绌鸿皟
+ /// </summary>
+ public const string HvacAC = "hvac.ac";
/// <summary>
/// 绌鸿皟spk鍒楄〃
@@ -1084,6 +1206,7 @@
{
var spkList = new List<string>();
spkList.Add(AcStandard);
+ spkList.Add(HvacAC);
spkList.Add(AcIr);
return spkList;
}
@@ -1094,6 +1217,10 @@
/// 锛堝湴鐑級
/// </summary>
public const string FloorHeatStandard = "floorHeat.standard";
+ /// <summary>
+ /// 鍦版殩
+ /// </summary>
+ public const string HvacFloorHeat = "hvac.floorHeat";
/// <summary>
/// 鍦扮儹spk鍒楄〃
@@ -1103,6 +1230,7 @@
{
var spkList = new List<string>();
spkList.Add(FloorHeatStandard);
+ spkList.Add(HvacFloorHeat);
return spkList;
}
#endregion
@@ -1113,9 +1241,17 @@
/// </summary>
public const string AirFreshStandard = "airFresh.standard";
/// <summary>
+ /// 鏂伴
+ /// </summary>
+ public const string HvacAirFresh = "hvac.airFresh";
+ /// <summary>
/// 鏂伴 鈥斺�旈噾鑼傚畾鍒�
/// </summary>
public const string AirFreshJinmao = "airFresh.jinmao";
+ /// <summary>
+ /// 鏂伴 鈥斺�旈噾鑼傚畾鍒�
+ /// </summary>
+ public const string HvacAirFreshJinmao = "hvac.airFresh.jinmao";
/// <summary>
/// 鏂伴spk鍒楄〃
@@ -1126,6 +1262,8 @@
var spkList = new List<string>();
spkList.Add(AirFreshStandard);
spkList.Add(AirFreshJinmao);
+ spkList.Add(HvacAirFresh);
+ spkList.Add(HvacAirFreshJinmao);
return spkList;
}
#endregion
@@ -1157,6 +1295,10 @@
/// 锛堥煶涔愶級
/// </summary>
public const string MusicStandard = "music.standard";
+ /// <summary>
+ /// 闊充箰
+ /// </summary>
+ public const string AvMusic = "av.music";
/// <summary>
/// 闊充箰spk鍒楄〃
@@ -1166,11 +1308,13 @@
{
var spkList = new List<string>();
spkList.Add(MusicStandard);
+ spkList.Add(AvMusic);
return spkList;
}
#endregion
#region 浼犳劅鍣�
+
#region 瀹夐槻浼犳劅鍣�
/// <summary>
/// 锛堜寒搴︿紶鎰熷櫒锛�
@@ -1212,10 +1356,12 @@
/// 锛堝共鎺ョ偣锛�
/// </summary>
public const string SensorDryContact = "sensor.dryContact";
+ public const string SensorDryContact2 = "dryContact.standard";
/// <summary>
/// 姣背娉紶鎰熷櫒
/// </summary>
public const string SenesorMegahealth = "sensor.megahealth";
+ public const string SenesorMegahealth2 = "sensor.megahealth.zg";
/// <summary>
/// 瀹夐槻浼犳劅鍣╯pk鍒楄〃
/// </summary>
@@ -1233,7 +1379,9 @@
//spkList.Add(SensorDuiShe);
//spkList.Add(SensoruUtrasonic);
spkList.Add(SensorDryContact);
+ spkList.Add(SensorDryContact2);
spkList.Add(SenesorMegahealth);
+ spkList.Add(SenesorMegahealth2);
return spkList;
}
#endregion
@@ -1274,6 +1422,7 @@
/// 闈掕悕鐜浼犳劅鍣�
/// </summary>
public const string SensorEnvironment3 = "sensor.environment3";
+ public const string SensorEnvironmentHailin = "sensor.environment.hailin";
/// <summary>
/// 鐢查啗
/// </summary>
@@ -1335,6 +1484,10 @@
/// </summary>
public const string ElectricSocket = "electrical.socket";
/// <summary>
+ /// 闈㈡澘銆佹彃搴с�侀潰鏉�
+ /// </summary>
+ public const string PanelSocket = "panel.socket";
+ /// <summary>
/// 瀹剁數銆佺數瑙�
/// </summary>
public const string ElectricTV = "electrical.tv";
@@ -1350,6 +1503,7 @@
/// 瀹剁數銆侀鎵�
/// </summary>
public const string ElectricFan = "electrical.fan";
+ public const string HvacFan = "hvac.fan";
/// <summary>
/// 鍑夐湼
/// </summary>
@@ -1392,18 +1546,22 @@
/// 瀹剁數銆佹秱楦︾┖姘斿噣鍖栧櫒
/// </summary>
public const string ElectricTuyaAirCleaner = "electrical.Q1RsefNf91tIXyyQ";
+ public const string ElectricTuyaAirCleaner2 = "hvac.air.tuya_epi345";
/// <summary>
/// 瀹剁數銆佹秱楦︾數椋庢墖
/// </summary>
public const string ElectricTuyaFan = "electrical.tyqborgovyzytytz";
+ public const string ElectricTuyaFan2 = "hvac.fan.tuya_ef101";
/// <summary>
/// 瀹剁數銆佹秱楦︽壂鍦版満鍣ㄤ汉
/// </summary>
public const string ElectricTuyaWeepRobot = "electrical.ai6HtccKFIw3dxo3";
+ public const string ElectricTuyaWeepRobot2 = "electrical.sweep.tuya";
/// <summary>
/// 瀹剁數銆佹秱楦︽按闃�
/// </summary>
public const string ElectricTuyaWaterValve = "electrical.koiGhMKwLf2ZP81g";
+ public const string ElectricTuyaWaterValve2 = "electrical.watervalve.tuya_aw713";
#endregion
@@ -1415,19 +1573,25 @@
{
var spkList = new List<string>();
spkList.Add(ElectricSocket);
+ spkList.Add(PanelSocket);
spkList.Add(ElectricTV);
spkList.Add(TvIr);
spkList.Add(TvXmIr);
spkList.Add(ElectricFan);
+ spkList.Add(HvacFan);
spkList.Add(FanIr);
spkList.Add(ClothesHanger);
spkList.Add(IrLearn);
spkList.Add(PjtIr);
spkList.Add(StbIr);
spkList.Add(ElectricTuyaAirCleaner);
+ spkList.Add(ElectricTuyaAirCleaner2);
spkList.Add(ElectricTuyaFan);
+ spkList.Add(ElectricTuyaFan2);
spkList.Add(ElectricTuyaWeepRobot);
+ spkList.Add(ElectricTuyaWeepRobot2);
spkList.Add(ElectricTuyaWaterValve);
+ spkList.Add(ElectricTuyaWaterValve2);
spkList.Add(AirSwitch);
return spkList;
}
@@ -1462,10 +1626,15 @@
{
var spkList = new List<string>();
spkList.Add(ElectricTuyaAirCleaner);
+ spkList.Add(ElectricTuyaAirCleaner2);
spkList.Add(ElectricTuyaFan);
+ spkList.Add(ElectricTuyaFan2);
spkList.Add(ElectricTuyaWaterValve);
+ spkList.Add(ElectricTuyaWaterValve2);
spkList.Add(ElectricTuyaWeepRobot);
+ spkList.Add(ElectricTuyaWeepRobot2);
spkList.Add(SenesorMegahealth);
+ spkList.Add(SenesorMegahealth2);
return spkList;
}
/// <summary>
@@ -1483,6 +1652,10 @@
list.Add(ElectricTuyaFan);
list.Add(ElectricTuyaWaterValve);
list.Add(ElectricTuyaWeepRobot);
+ list.Add(ElectricTuyaAirCleaner2);
+ list.Add(ElectricTuyaFan2);
+ list.Add(ElectricTuyaWaterValve2);
+ list.Add(ElectricTuyaWeepRobot2);
break;
case BrandType.All3tyBrand:
list.Add(SenesorMegahealth);//鍏嗚
@@ -1520,56 +1693,56 @@
}
- /// <summary>
- /// 鍔熻兘绫诲埆
- /// </summary>
- public static class FunctionCategory
- {
- /// <summary>
- ///锛堢伅锛�
- /// </summary>
- public const string Light = "light";
- /// <summary>
- /// 锛堢獥甯橈級
- /// </summary>
- public const string Curtain = "curtain";
- /// <summary>
- /// 锛堢┖璋冿級
- /// </summary>
- public const string AC = "ac";
- /// <summary>
- /// 锛堝湴鐑級
- /// </summary>
- public const string FloorHeat = "floorHeat";
- /// <summary>
- /// 锛堟柊椋庯級
- /// </summary>
- public const string AirFresh = "airFresh";
- /// <summary>
- /// 锛堥煶涔愶級
- /// </summary>
- public const string Music = "music";
- /// <summary>
- /// 锛堜紶鎰熷櫒锛�
- /// </summary>
- public const string Sensor = "sensor";
- /// <summary>
- /// 锛堝共鎺ョ偣锛�
- /// </summary>
- public const string DryContact = "dryContact";
- /// <summary>
- /// 瀹剁數
- /// </summary>
- public const string Electric = "electrical";
- /// <summary>
- /// 绾㈠璁惧
- /// </summary>
- public const string IR = "ir";
+ ///// <summary>
+ ///// 鍔熻兘绫诲埆
+ ///// </summary>
+ //public static class FunctionCategory
+ //{
+ // /// <summary>
+ // ///锛堢伅锛�
+ // /// </summary>
+ // public const string Light = "light";
+ // /// <summary>
+ // /// 锛堢獥甯橈級
+ // /// </summary>
+ // public const string Curtain = "curtain";
+ // /// <summary>
+ // /// 锛堢┖璋冿級
+ // /// </summary>
+ // public const string AC = "ac";
+ // /// <summary>
+ // /// 锛堝湴鐑級
+ // /// </summary>
+ // public const string FloorHeat = "floorHeat";
+ // /// <summary>
+ // /// 锛堟柊椋庯級
+ // /// </summary>
+ // public const string AirFresh = "airFresh";
+ // /// <summary>
+ // /// 锛堥煶涔愶級
+ // /// </summary>
+ // public const string Music = "music";
+ // /// <summary>
+ // /// 锛堜紶鎰熷櫒锛�
+ // /// </summary>
+ // public const string Sensor = "sensor";
+ // /// <summary>
+ // /// 锛堝共鎺ョ偣锛�
+ // /// </summary>
+ // public const string DryContact = "dryContact";
+ // /// <summary>
+ // /// 瀹剁數
+ // /// </summary>
+ // public const string Electric = "electrical";
+ // /// <summary>
+ // /// 绾㈠璁惧
+ // /// </summary>
+ // public const string IR = "ir";
- }
+ //}
public class VersionInfo
--
Gitblit v1.8.0