wxr
2023-04-07 a3313818a548d51777ae4e6cc006e9d1e2c1036e
HDL_ON/Entity/Function/Function.cs
@@ -523,6 +523,14 @@
                SetAttrState(sta.key, sta.value);
            }
        }
        /// <summary>
        /// 功能列表排序
        /// </summary>
        public int FunctionOrderNumber = 9999;
        /// <summary>
        /// 房间列表排序
        /// </summary>
        public int RoomOrderNumber = 9999;
        /// <summary>
@@ -553,13 +561,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)
@@ -742,6 +764,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:
@@ -1336,6 +1370,10 @@
    public static class SPK
    {
        /// <summary>
        /// 群控(自定义)
        /// </summary>
        public const string GroupControl = "GroupControl";
        /// <summary>
        /// 通用开关
        /// </summary>
        public const string OtherCommon = "other.common";
@@ -1362,6 +1400,7 @@
        /// 门锁
        /// </summary>
        public const string DoorLock = "security.door";
        /// <summary>
        /// 门锁spk列表
        /// </summary>
@@ -1372,8 +1411,20 @@
            list.Add(DoorLock);
            return list;
        }
        /// <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>
@@ -1466,7 +1517,7 @@
        public const string HvacAC = "hvac.ac";
        /// <summary>
        /// 毛细管空调
        /// </summary>
        /// </summaryc
        public const string HvacCac = "hvac.cac";
        /// <summary>
@@ -1748,7 +1799,7 @@
            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);
@@ -1778,7 +1829,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;