From ba870748ddaf7fd71c8d00ea3ce88de0891c390f Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期四, 25 三月 2021 14:19:45 +0800
Subject: [PATCH] 2021-3-25-2
---
HDL_ON/Entity/FunctionList.cs | 133 +++++++++++--------------------------------
1 files changed, 35 insertions(+), 98 deletions(-)
diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index 8d83075..fe72790 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -41,19 +41,8 @@
/// <returns></returns>
public List<Function> GetAcList()
{
- return Functions.FindAll((obj) => obj.spk == SPK.AcStandard);
- }
-
- /// <summary>
- ///
- /// </summary>
- /// <returns></returns>
- public List<Function> GetList()
- {
- List<Function> list = new List<Function>();
-
-
- return list;
+ var spkList = SPK.AcSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
/// <summary>
@@ -61,24 +50,16 @@
/// </summary>
public List<Function> GetLightList()
{
- return Functions.FindAll((obj) =>
- obj.spk == SPK.LightSwitch
- || obj.spk == SPK.LightDimming
- || obj.spk == SPK.LightRGB
- || obj.spk == SPK.LightRGBW
- || obj.spk == SPK.LightCCT);
+ var spkList = SPK.LightSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
/// <summary>
/// 绐楀笜鍒楄〃
/// </summary>
public List<Function> GetCurtainList()
{
- return Functions.FindAll((obj) =>
- obj.spk == SPK.CurtainRoller
- || obj.spk == SPK.CurtainShades
- || obj.spk == SPK.CurtainSwitch
- || obj.spk == SPK.CurtainTrietex
- );
+ var spkList = SPK.CurtainSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
/// <summary>
@@ -86,7 +67,8 @@
/// </summary>
public List<Function> GetFloorHeatingList()
{
- return Functions.FindAll((obj) => obj.spk == SPK.FloorHeatStandard);
+ var spkList = SPK.FhSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
#region 瀹剁數鍒楄〃 electricals
/// <summary>
@@ -94,64 +76,11 @@
/// </summary>
public List<Function> GetElectricals()
{
-
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricFan || obj.spk == SPK.ElectricTuyaFan
- || obj.spk == SPK.ElectricSocket
- || obj.spk == SPK.ElectricTV
- || obj.spk == SPK.ElectricTuyaAirCleaner
- || obj.spk == SPK.ElectricTuyaWeepRobot
- || obj.spk == SPK.ElectricTuyaWaterValve
- || obj.spk == SPK.ClothesHanger);
+ var spkList = SPK.ElectricalSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
- /// <summary>
- /// 椋庢墖鍒楄〃
- /// </summary>
- public List<Function> GetFanList()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricFan || obj.spk == SPK.ElectricTuyaFan);
- }
- /// <summary>
- /// 鐢佃鍒楄〃
- /// </summary>
- public List<Function> GetTVList()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricTV);
- }
- /// <summary>
- /// 瀹剁數鎻掑骇鍒楄〃
- /// </summary>
- public List<Function> GetElectricSocketList()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricSocket);
- }
- /// <summary>
- /// 绌烘皵鍑�鍖栧櫒鍒楄〃
- /// </summary>
- public List<Function> GetAirCleanerList()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricTuyaAirCleaner);
- }
- /// <summary>
- /// 鎵湴鏈哄櫒浜哄垪琛�
- /// </summary>
- public List<Function> GetWeepRobotList()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricTuyaWeepRobot);
- }
- /// <summary>
- /// 姘撮榾鍒楄〃
- /// </summary>
- public List<Function> GetWaterValveList()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ElectricTuyaWaterValve);
- }
- /// <summary>
- /// 鍑夐湼鍒楄〃
- /// </summary>
- public List<Function> GetClothesHangerList ()
- {
- return Functions.FindAll((obj) => obj.spk == SPK.ClothesHanger);
- }
+
+
/// <summary>
/// 绾㈠瀹濆垪琛�
/// </summary>
@@ -166,23 +95,16 @@
/// </summary>
public List<Function> GetEnvirSensorsList()
{
- return Functions.FindAll((obj) => obj.spk == SPK.SensorPm25
- || obj.spk == SPK.SensorCO2
- || obj.spk == SPK.SensorTVOC
- || obj.spk == SPK.SensorTemperature
- || obj.spk == SPK.SensorHumidity
- );
+ var spkList = SPK.EnvironSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
/// <summary>
/// 瀹夐槻璁惧鍒楄〃
/// </summary>
public List<Function> GetArmSensorList()
{
- return Functions.FindAll((obj) => obj.spk == SPK.SensorSmoke
- || obj.spk == SPK.SensorWater
- || obj.spk == SPK.SensorDoorWindow
- || obj.spk == SPK.SensorPir
- );
+ var spkList = SPK.ArmSensorSpkList();
+ return Functions.FindAll((obj) => spkList.Contains(obj.spk));
}
public List<Scene> scenes = new List<Scene>();
@@ -191,7 +113,11 @@
/// 鍔犺浇鍔熻兘鍒楄〃
/// </summary>
/// <param name="filePath"></param>
- public void IniFunctionList(string filePath)
+ /// <param name="checkRepeat">
+ /// <para>鑰冭檻鍒版�ц兘闂杩藉姞姝ゅ彉閲�,鏄惁妫�娴嬮噸澶�,鍙function鏈夋晥</para>
+ /// <para>true:褰撻噸澶嶅瓨鍦ㄦ椂,鏇挎崲鎺�</para>
+ /// <para>false:鐩存帴鏃犳潯浠舵坊鍔�</para></param>
+ public void IniFunctionList(string filePath, bool checkRepeat = false)
{
// todo 澧炲姞璁惧锛屽鍔犲姛鑳借繘鍔熻兘鍒楄〃
if (filePath.StartsWith("FunctionData_"))
@@ -204,10 +130,21 @@
FileUtlis.Files.DeleteFile(filePath);
return;
}
-
-
+ if (checkRepeat == true)
+ {
+ //妫�娴嬮噸澶�
+ for (int i = 0; i < Functions.Count; i++)
+ {
+ if (Functions[i].deviceId == tempFunction.deviceId)
+ {
+ //鍏堢Щ闄ゆ帀鍐嶅姞
+ Functions.RemoveAt(i);
+ Functions.Add(tempFunction);
+ return;
+ }
+ }
+ }
Functions.Add(tempFunction);
-
}
if (filePath.StartsWith("SceneData_"))
{
--
Gitblit v1.8.0