From 203c3a3ffde6259413d9743f6a723b95b1e7989c Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 06 七月 2023 22:43:05 +0800 Subject: [PATCH] 门锁功能 --- HDL_ON/Entity/Function/Function.cs | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 100 insertions(+), 9 deletions(-) diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs index 96d30fd..3854755 100644 --- a/HDL_ON/Entity/Function/Function.cs +++ b/HDL_ON/Entity/Function/Function.cs @@ -565,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) @@ -766,6 +780,31 @@ } } + string us = ""; + switch (attr.key) + { + case FunctionAttributeKey.SetTemp: + case FunctionAttributeKey.RoomTemp: + us = "掳C"; + var tempType = attributes.Find((obj) => obj.key == FunctionAttributeKey.TempType); + if (tempType != null) + { + us = tempType.curValue.ToString(); + } + break; + case FunctionAttributeKey.Percent: + case FunctionAttributeKey.Brightness: + us = "%"; + break; + case FunctionAttributeKey.CCT: + us = "K"; + break; + case FunctionAttributeKey.Angle: + us = "掳"; + break; + } + + switch (attr.key) { case FunctionAttributeKey.OnOff: @@ -777,11 +816,15 @@ case FunctionAttributeKey.CCT: case FunctionAttributeKey.RGB: case FunctionAttributeKey.Angle: + case FunctionAttributeKey.Colorful: + case FunctionAttributeKey.ColorfulBegin: + case FunctionAttributeKey.ColorfulEnd: + case FunctionAttributeKey.ColorfulTime: case "security": //case FunctionAttributeKey.FadeTime: if (attr.curValue.ToString() == "{}") { - if (attr.key == FunctionAttributeKey.OnOff) + if (attr.key == FunctionAttributeKey.OnOff || attr.key == FunctionAttributeKey.Colorful) { attr.curValue = "off"; } @@ -820,13 +863,16 @@ { vv = 26; } - sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = Convert.ToInt32(vv).ToString(), max = attr.max, min = attr.min }); + sFunc.status.Add(new SceneFunctionStatus() { + UintString = us, + 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(), max = attr.max, min = attr.min }); + sFunc.status.Add(new SceneFunctionStatus() { + UintString = us, + key = attr.key, value = attr.curValue.ToString(), max = attr.max, min = attr.min }); } - break; } } @@ -1051,6 +1097,22 @@ /// 浜害 /// </summary> public const string Brightness = "brightness"; + /// <summary> + /// 鐐僵寮�鍏� + /// </summary> + public const string Colorful = "colorful"; + /// <summary> + /// 鐐僵寮�鍚鑹� + /// </summary> + public const string ColorfulBegin = "colorful_begin"; + /// <summary> + /// 鐐僵缁撴潫棰滆壊 + /// </summary> + public const string ColorfulEnd = "colorful_end"; + /// <summary> + /// 鐐僵杩愯鏃堕棿 + /// </summary> + public const string ColorfulTime = "colorful_time"; /// <summary> /// 棰滆壊 /// </summary> @@ -1360,9 +1422,17 @@ public static class SPK { /// <summary> + /// 缇ゆ帶锛堣嚜瀹氫箟锛� + /// </summary> + public const string GroupControl = "GroupControl"; + /// <summary> /// 閫氱敤寮�鍏� /// </summary> public const string OtherCommon = "other.common"; + /// <summary> + /// 搴忓垪 + /// </summary> + public const string CommonSeries = "other.series"; /// <summary> /// 澶у崕鎽勫儚澶� /// </summary> @@ -1398,6 +1468,7 @@ return list; } + /// <summary> /// 鐚溂 /// </summary> @@ -1407,6 +1478,10 @@ /// </summary> public const string VideoDoorLock="security.door.ezviz"; /// <summary> + /// 钀ょ煶鎽勫儚澶� + /// </summary> + public const string Ev_Ipcam = "security.ipcam.ez"; + /// <summary> /// 钀ょ煶瑙嗛闂ㄩ攣spk鍒楄〃 /// </summary> /// <returns></returns> @@ -1414,6 +1489,17 @@ { var list = new List<string>(); list.Add(VideoDoorLock); + return list; + } + + /// <summary> + /// 钀ょ煶鎽勫儚澶磗pk鍒楄〃 + /// </summary> + /// <returns></returns> + public static List<string> GetEvIpcamSPKList() + { + var list = new List<string>(); + list.Add(Ev_Ipcam); return list; } @@ -1508,7 +1594,7 @@ public const string HvacAC = "hvac.ac"; /// <summary> /// 姣涚粏绠$┖璋� - /// </summary> + /// </summaryc public const string HvacCac = "hvac.cac"; /// <summary> @@ -1647,6 +1733,10 @@ /// </summary> public const string SensorPir = "sensor.pir"; /// <summary> + /// 浜轰綋瀛樺湪浼犳劅鍣� + /// </summary> + public const string SensorPirHold = "sensor.pir_hold"; + /// <summary> /// 锛堥棬绐椾紶鎰熷櫒锛� /// </summary> public const string SensorDoorWindow = "sensor.doorwindow"; @@ -1701,6 +1791,7 @@ var spkList = new List<string>(); //spkList.Add(SensorLight); spkList.Add(SensorPir); + spkList.Add(SensorPirHold); spkList.Add(SensorHelp); spkList.Add(SensorDoorWindow); spkList.Add(SensorSmoke); -- Gitblit v1.8.0