From 452e8cef1c740d18ee398be6971d9952e41dbd4a Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期三, 12 四月 2023 16:11:50 +0800
Subject: [PATCH] 1
---
HDL_ON/Entity/Function/Function.cs | 123 +++++++++++++++++++++++++++++++++++++---
1 files changed, 112 insertions(+), 11 deletions(-)
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index 3f7a233..a562b51 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -273,6 +273,14 @@
/// </summary>
public string deviceId = "0";
/// <summary>
+ /// 绗笁鏂硅澶囨墿灞昳d
+ /// </summary>
+ public string extDevId = string.Empty;
+ /// <summary>
+ /// 鐗╃悊璁惧(妯″潡)鍨嬪彿
+ /// </summary>
+ public string omodel =string.Empty;
+ /// <summary>
/// 璁惧spk
/// </summary>
public string spk = "";
@@ -519,6 +527,14 @@
SetAttrState(sta.key, sta.value);
}
}
+ /// <summary>
+ /// 鍔熻兘鍒楄〃鎺掑簭
+ /// </summary>
+ public int FunctionOrderNumber = 9999;
+ /// <summary>
+ /// 鎴块棿鍒楄〃鎺掑簭
+ /// </summary>
+ public int RoomOrderNumber = 9999;
/// <summary>
@@ -549,13 +565,27 @@
new System.Threading.Thread(() =>
{
- if (collect)
- {
- result = ApiUtlis.Ins.HttpRequest.CollectDevice(deviceId).Code;
+ if (spk == SPK.GroupControl) {
+ var groupControl = FunctionList.List.groupControls.Find((obj) => obj.sid == sid);
+ if (collect)
+ {
+ result = ApiUtlis.Ins.HttpRequest.CollectGroupControl(groupControl.userDeviceGroupControlId).Code;
+ }
+ else
+ {
+ result = ApiUtlis.Ins.HttpRequest.CancelCollectGroupControl(groupControl.userDeviceGroupControlId).Code;
+ }
}
else
{
- result = ApiUtlis.Ins.HttpRequest.CancelCollectDevice(deviceId).Code;
+ if (collect)
+ {
+ result = ApiUtlis.Ins.HttpRequest.CollectDevice(deviceId).Code;
+ }
+ else
+ {
+ result = ApiUtlis.Ins.HttpRequest.CancelCollectDevice(deviceId).Code;
+ }
}
//鎻愮ず閿欒
if (result != StateCode.SUCCESS)
@@ -738,6 +768,18 @@
var sFunc = new SceneFunction();
foreach (var attr in attributes)
{
+ //绐楀笜鍚屾椂鍙戦�佸紑鍏宠窡鐧惧垎姣斾細鏈夐棶棰橈紝
+ if(spk == SPK.CurtainRoller || spk == SPK.CurtainTrietex || spk == SPK.CurtainDream)
+ {
+ if (attr.key == FunctionAttributeKey.OnOff)
+ {
+ if (attributes.Find((obj) => obj.key == FunctionAttributeKey.Percent) != null)
+ {
+ continue;
+ }
+ }
+ }
+
switch (attr.key)
{
case FunctionAttributeKey.OnOff:
@@ -749,6 +791,7 @@
case FunctionAttributeKey.CCT:
case FunctionAttributeKey.RGB:
case FunctionAttributeKey.Angle:
+ case "security":
//case FunctionAttributeKey.FadeTime:
if (attr.curValue.ToString() == "{}")
{
@@ -773,6 +816,10 @@
attr.curValue = "day";
}
}
+ }
+ else if(attr.key == "security")
+ {
+ attr.curValue = "false";
}
else
{
@@ -974,6 +1021,11 @@
/// </summary>
public List<string> value = new List<string>();
/// <summary>
+ /// 姝ヨ繘
+ /// 绌鸿皟娓╁害鎺у埗 0.5 1
+ /// </summary>
+ public string step = "1";
+ /// <summary>
/// 鏈�澶у��
/// </summary>
public int max = 100;
@@ -1001,6 +1053,10 @@
public static class FunctionAttributeKey
{
public const string _null = "";
+ /// <summary>
+ /// 瀹夐槻甯冮槻鐘舵��
+ /// </summary>
+ public const string Security = "security";
/// <summary>
/// 寮�鍏�
/// </summary>
@@ -1318,10 +1374,21 @@
public static class SPK
{
/// <summary>
+ /// 缇ゆ帶锛堣嚜瀹氫箟锛�
+ /// </summary>
+ public const string GroupControl = "GroupControl";
+ /// <summary>
/// 閫氱敤寮�鍏�
/// </summary>
public const string OtherCommon = "other.common";
-
+ /// <summary>
+ /// 澶у崕鎽勫儚澶�
+ /// </summary>
+ public const string IpCam_Imou = "security.ipcam.imou";
+ /// <summary>
+ /// 鏈烘鎵�
+ /// </summary>
+ public const string MechanicalArm = "electrical.mechanical_arm";
/// <summary>
/// 绌鸿皟绉戞妧绯荤粺锛堢豢寤猴級
/// 鎬绘帶
@@ -1337,6 +1404,7 @@
/// 闂ㄩ攣
/// </summary>
public const string DoorLock = "security.door";
+
/// <summary>
/// 闂ㄩ攣spk鍒楄〃
/// </summary>
@@ -1347,8 +1415,25 @@
list.Add(DoorLock);
return list;
}
-
-
+
+ /// <summary>
+ /// 鐚溂
+ /// </summary>
+ public const string Peephole = "peephole";
+ /// <summary>
+ /// 钀ょ煶瑙嗛闂ㄩ攣
+ /// </summary>
+ public const string VideoDoorLock="security.door.ezviz";
+ /// <summary>
+ /// 钀ょ煶瑙嗛闂ㄩ攣spk鍒楄〃
+ /// </summary>
+ /// <returns></returns>
+ public static List<string> GetVideoDoorLockSPKList()
+ {
+ var list = new List<string>();
+ list.Add(VideoDoorLock);
+ return list;
+ }
#region 鐏厜
/// <summary>
@@ -1441,7 +1526,7 @@
public const string HvacAC = "hvac.ac";
/// <summary>
/// 姣涚粏绠$┖璋�
- /// </summary>
+ /// </summaryc
public const string HvacCac = "hvac.cac";
/// <summary>
@@ -1520,6 +1605,10 @@
/// 閫嗗彉鍣�
/// </summary>
public const string Inverter = "energy.inverter";
+ /// <summary>
+ /// 涓夌浉閫嗗彉鍣�
+ /// </summary>
+ public const string InverterRst = "energy.inverter_rst";
/// <summary>
/// 鑳芥簮妯″潡
/// </summary>
@@ -1614,6 +1703,10 @@
public const string SenesorMegahealth = "sensor.megahealth";
public const string SenesorMegahealth2 = "sensor.megahealth.zg";
/// <summary>
+ /// 姣背娉紶鎰熷櫒锛堝Э鎬佺増锛�
+ /// </summary>
+ public const string SensorMmvPose = "sensor.mmv_pose";
+ /// <summary>
/// 绱ф�ュ懠鍙�
/// </summary>
public const string SensorHelp = "sensor.help";
@@ -1638,6 +1731,7 @@
spkList.Add(SensorDryContact2);
spkList.Add(SenesorMegahealth);
spkList.Add(SenesorMegahealth2);
+ spkList.Add(SensorMmvPose);
return spkList;
}
#endregion
@@ -1656,6 +1750,10 @@
}
#region 鐜浼犳劅鍣�
+ /// <summary>
+ /// 锛圥M10浼犳劅鍣級
+ /// </summary>
+ public const string SensorPm10 = "sensor.pm10";
/// <summary>
/// 锛堟俯搴︿紶鎰熷櫒锛�
/// </summary>
@@ -1705,11 +1803,12 @@
{
var spkList = new List<string>();
spkList.Add(SensorTemperature);
+ spkList.Add(SensorPm10);
spkList.Add(SensorPm25);
spkList.Add(SensorCO2);
spkList.Add(SensorTVOC);
spkList.Add(SensorHumidity);
- spkList.Add(SensorEnvironment);
+ spkList.Add(SensorEnvironment); spkList.Add(SensorEnvironmentHailin);
spkList.Add(SensorEnvironment2);
spkList.Add(SensorEnvironment3);
spkList.Add(SensorHcho);
@@ -1723,6 +1822,7 @@
{
var spkList = new List<string>();
spkList.Add(SensorTemperature);
+ spkList.Add(SensorPm10);
spkList.Add(SensorPm25);
spkList.Add(SensorCO2);
spkList.Add(SensorTVOC);
@@ -1738,7 +1838,7 @@
public static List<string> EvironmentSensorList()
{
var spkList = new List<string>();
- spkList.Add(SensorEnvironment);
+ spkList.Add(SensorEnvironment); spkList.Add(SensorEnvironmentHailin);
spkList.Add(SensorEnvironment2);
spkList.Add(SensorEnvironment3);
return spkList;
@@ -1909,6 +2009,7 @@
spkList.Add(ElectricTuyaWaterValve2);
spkList.Add(ElectricTuyaWeepRobot);
spkList.Add(ElectricTuyaWeepRobot2);
+ spkList.Add(SensorMmvPose);
spkList.Add(SenesorMegahealth);
spkList.Add(SenesorMegahealth2);
return spkList;
@@ -1934,7 +2035,7 @@
list.Add(ElectricTuyaWeepRobot2);
break;
case BrandType.All3tyBrand:
- list.Add(SenesorMegahealth);//鍏嗚
+ list.Add(SenesorMegahealth2);//鍏嗚
break;
}
return list;
--
Gitblit v1.8.0