From aed01bdfb53f21d5cf5365feb563087f855ed4fe Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期日, 26 九月 2021 20:01:15 +0800
Subject: [PATCH] 2021-9-26-01
---
HDL_ON/Entity/Function/Function.cs | 338 ++++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 277 insertions(+), 61 deletions(-)
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index 38ecf24..4c47af2 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
@@ -285,6 +389,16 @@
/// 鍔熻兘鐨勫睘鎬х姸鎬佸垪琛�
/// </summary>
public List<AttributesStatus> status = new List<AttributesStatus>();
+ /// <summary>
+ /// 閫氳繃鐘舵�佸垪琛ㄧ粍瑁呭睘鎬ч噷闈㈢殑鐘舵��
+ /// </summary>
+ public void AssembleStatus()
+ {
+ foreach (var sta in status)
+ {
+ SetAttrState(sta.key, sta.value);
+ }
+ }
/// <summary>
@@ -685,7 +799,7 @@
/// 鍔熻兘灞炴��
/// 灞炴�у瓧娈佃В鏋愶細attri :灞炴�у唴瀹癸紝value 灞炴�х殑鍊硷紝max 鏈�澶у�� min 鏈�灏忓��
/// </summary>
- [System.Serializable]
+ [Serializable]
public class FunctionAttributes
{
/// <summary>
@@ -907,7 +1021,7 @@
/// </summary>
public const string FilterRemain = "filter_remain";
/// <summary>
- /// 杩囨护缃戞槸鍚﹁秴鏃惰鍛�
+ /// 杩囨护缃戞槸鍚﹁秴鏃惰鍛�
/// </summary>
public const string FilterTimeout = "filter_timeout";
@@ -1065,6 +1179,10 @@
/// 锛堢孩澶栫┖璋冿級
/// </summary>
public const string AcIr= "ir.ac";
+ /// <summary>
+ /// 绌鸿皟
+ /// </summary>
+ public const string HvacAC = "hvac.ac";
/// <summary>
/// 绌鸿皟spk鍒楄〃
@@ -1074,6 +1192,7 @@
{
var spkList = new List<string>();
spkList.Add(AcStandard);
+ spkList.Add(HvacAC);
spkList.Add(AcIr);
return spkList;
}
@@ -1084,6 +1203,10 @@
/// 锛堝湴鐑級
/// </summary>
public const string FloorHeatStandard = "floorHeat.standard";
+ /// <summary>
+ /// 鍦版殩
+ /// </summary>
+ public const string HvacFloorHeat = "hvac.floorHeat";
/// <summary>
/// 鍦扮儹spk鍒楄〃
@@ -1093,6 +1216,7 @@
{
var spkList = new List<string>();
spkList.Add(FloorHeatStandard);
+ spkList.Add(HvacFloorHeat);
return spkList;
}
#endregion
@@ -1103,9 +1227,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鍒楄〃
@@ -1116,6 +1248,8 @@
var spkList = new List<string>();
spkList.Add(AirFreshStandard);
spkList.Add(AirFreshJinmao);
+ spkList.Add(HvacAirFresh);
+ spkList.Add(HvacAirFreshJinmao);
return spkList;
}
#endregion
@@ -1147,6 +1281,10 @@
/// 锛堥煶涔愶級
/// </summary>
public const string MusicStandard = "music.standard";
+ /// <summary>
+ /// 闊充箰
+ /// </summary>
+ public const string AvMusic = "av.music";
/// <summary>
/// 闊充箰spk鍒楄〃
@@ -1156,11 +1294,13 @@
{
var spkList = new List<string>();
spkList.Add(MusicStandard);
+ spkList.Add(AvMusic);
return spkList;
}
#endregion
#region 浼犳劅鍣�
+
#region 瀹夐槻浼犳劅鍣�
/// <summary>
/// 锛堜寒搴︿紶鎰熷櫒锛�
@@ -1206,6 +1346,7 @@
/// 姣背娉紶鎰熷櫒
/// </summary>
public const string SenesorMegahealth = "sensor.megahealth";
+ public const string SenesorMegahealth2 = "sensor.megahealth.zg";
/// <summary>
/// 瀹夐槻浼犳劅鍣╯pk鍒楄〃
/// </summary>
@@ -1218,12 +1359,13 @@
spkList.Add(SensorDoorWindow);
spkList.Add(SensorSmoke);
spkList.Add(SensorWater);
- //spkList.Add(SensorGas);
+ spkList.Add(SensorGas);
//spkList.Add(SensorShanLan);
//spkList.Add(SensorDuiShe);
//spkList.Add(SensoruUtrasonic);
- //spkList.Add(SensorDryContact);
+ spkList.Add(SensorDryContact);
spkList.Add(SenesorMegahealth);
+ spkList.Add(SenesorMegahealth2);
return spkList;
}
#endregion
@@ -1256,7 +1398,38 @@
/// 璇pk鍔熻兘鏄幆澧冧紶鎰熷櫒鍔熻兘鐨勯泦鎴�
/// </summary>
public const string SensorEnvironment = "sensor.environment";
+ /// <summary>
+ /// 闈掕悕鐜浼犳劅鍣�
+ /// </summary>
+ public const string SensorEnvironment2 = "sensor.environment2";
+ /// <summary>
+ /// 闈掕悕鐜浼犳劅鍣�
+ /// </summary>
+ public const string SensorEnvironment3 = "sensor.environment3";
+ public const string SensorEnvironmentHailin = "sensor.environment.hailin";
+ /// <summary>
+ /// 鐢查啗
+ /// </summary>
+ public const string SensorHcho = "sensor.hcho";
+ /// <summary>
+ /// 鐜浼犳劅鍣ㄨ澶噑pk鍒楄〃
+ /// </summary>
+ /// <returns></returns>
+ public static List<string> EnvironDeviceSpkList()
+ {
+ var spkList = new List<string>();
+ spkList.Add(SensorTemperature);
+ spkList.Add(SensorPm25);
+ spkList.Add(SensorCO2);
+ spkList.Add(SensorTVOC);
+ spkList.Add(SensorHumidity);
+ spkList.Add(SensorEnvironment);
+ spkList.Add(SensorEnvironment2);
+ spkList.Add(SensorEnvironment3);
+ spkList.Add(SensorHcho);
+ return spkList;
+ }
/// <summary>
/// 鐜浼犳劅鍣╯pk鍒楄〃
/// </summary>
@@ -1269,9 +1442,23 @@
spkList.Add(SensorCO2);
spkList.Add(SensorTVOC);
spkList.Add(SensorHumidity);
- spkList.Add(SensorEnvironment);
+ spkList.Add(SensorHcho);
return spkList;
}
+
+ /// <summary>
+ /// 鐜浼犳劅鍣ㄨ澶囧垪琛�
+ /// </summary>
+ /// <returns></returns>
+ public static List<string> EvironmentSensorList()
+ {
+ var spkList = new List<string>();
+ spkList.Add(SensorEnvironment);
+ spkList.Add(SensorEnvironment2);
+ spkList.Add(SensorEnvironment3);
+ return spkList;
+ }
+
#endregion
#endregion
@@ -1280,6 +1467,10 @@
/// 瀹剁數銆佹彃搴�
/// </summary>
public const string ElectricSocket = "electrical.socket";
+ /// <summary>
+ /// 闈㈡澘銆佹彃搴с�侀潰鏉�
+ /// </summary>
+ public const string PanelSocket = "panel.socket";
/// <summary>
/// 瀹剁數銆佺數瑙�
/// </summary>
@@ -1296,6 +1487,7 @@
/// 瀹剁數銆侀鎵�
/// </summary>
public const string ElectricFan = "electrical.fan";
+ public const string HvacFan = "hvac.fan";
/// <summary>
/// 鍑夐湼
/// </summary>
@@ -1328,24 +1520,32 @@
/// 绾㈠椋庢墖
/// </summary>
public const string FanIr = "ir.fan";
+ /// <summary>
+ /// 鏅鸿兘绌哄紑
+ /// </summary>
+ public const string AirSwitch = "electrical.breaker";
#region 娑傞甫
/// <summary>
/// 瀹剁數銆佹秱楦︾┖姘斿噣鍖栧櫒
/// </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
@@ -1357,19 +1557,26 @@
{
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;
}
@@ -1403,10 +1610,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>
@@ -1424,6 +1636,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);//鍏嗚
@@ -1461,56 +1677,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