wxr
2024-06-06 f54a487bb42ac49bf81bd7b5eea311fc79231bc6
HDL_ON/Entity/FunctionList.cs
@@ -14,6 +14,21 @@
    {
        static FunctionList _FunctionList;
        //public static void ClearData()
        //{
        //    try
        //    {
        //        _FunctionList._IpCamImou = null;
        //        _FunctionList.ClearDatas();
        //        _FunctionList = null;
        //    }
        //    catch (Exception ex)
        //    {
        //        MainPage.Log($"清理FunctionList异常:{ex.Message}");
        //        _FunctionList = null;
        //    }
        //}
        public static FunctionList List
        {
            get
@@ -55,6 +70,7 @@
            return Functions.FindAll((obj) => obj.spk == SPK.MechanicalArm);
        }
        /// <summary>
        /// 绿建科技系统
@@ -126,6 +142,24 @@
            var spkList = SPK.GetDoorLockSPKList();
            return Functions.FindAll((obj) => spkList.Contains(obj.spk));
        }
        /// <summary>
        /// 获取萤石视频门锁
        /// </summary>
        /// <returns></returns>
        public List<Function> GetVideoDoorLockList()
        {
            var spkList = SPK.GetVideoDoorLockSPKList();
            return Functions.FindAll((obj) => spkList.Contains(obj.spk));
        }
        /// <summary>
        /// 获取萤石摄像头
        /// </summary>
        /// <returns></returns>
        public List<Function> GetEzMonitorList()
        {
            var spkList = SPK.GetEvIpcamSPKList();
            return Functions.FindAll((obj) => spkList.Contains(obj.spk));
        }
        /// <summary>
        /// 获取影音中控列表
@@ -162,11 +196,11 @@
        /// </summary>
        public List<Function> GetElectricals()
        {
        var spkList = SPK.ElectricalSpkList();
            var spkList = SPK.ElectricalSpkList();
            return Functions.FindAll((obj) => spkList.Contains(obj.spk));
        }
        /// <summary>
        /// 红外宝列表
        /// </summary>
@@ -174,7 +208,7 @@
        {
            return Functions.FindAll((obj) => obj.spk == SPK.IrModule);
        }
#endregion
        #endregion
        /// <summary>
        /// 音乐列表
@@ -238,7 +272,7 @@
        {
            get
            {
                if(_OtherBrandFunction == null)
                if (_OtherBrandFunction == null)
                {
                    _OtherBrandFunction = new List<Function>();
                    var spkList = SPK.GetAll3tySPK();
@@ -306,9 +340,9 @@
                    {
                        //检测重复
                        var same = Functions.FindAll((obj) => obj.deviceId == tempFunction.deviceId);
                        if(same!= null)
                        if (same != null)
                        {
                            foreach(var sameTemp in same)
                            foreach (var sameTemp in same)
                            {
                                Functions.Remove(sameTemp);
                            }
@@ -380,7 +414,7 @@
            {
            }
            else
            {
            {
                switch (brandType)
                {
                    case SPK.BrandType.Hdl:
@@ -430,6 +464,7 @@
        {
            try
            {
                _FunctionList = new FunctionList();
            }
            catch (Exception ex)
@@ -442,11 +477,11 @@
        /// <summary>
        /// 功能绑定房间
        /// </summary>
        public string FunctionsBindRooms(List<string> roomIds,List<string> deviceIds)
        public string FunctionsBindRooms(List<string> roomIds, List<string> deviceIds)
        {
            var pm = new HttpServerRequest();
            var pack = pm.BindDeviceToRoom(deviceIds, roomIds);
            if(pack.Code == StateCode.SUCCESS)
            if (pack.Code == StateCode.SUCCESS)
            {
            }
@@ -460,7 +495,7 @@
        /// <summary>
        /// 删除场景
        /// </summary>
        public void DeleteScene(Scene scene,bool upSevser)
        public void DeleteScene(Scene scene, bool upSevser)
        {
            if (upSevser)
            {
@@ -543,7 +578,7 @@
                {
                    Read3tyFunctionStatus();
                    if(DriverLayer.Control.Ins.GatewayOnline_Local)
                    if (DriverLayer.Control.Ins.GatewayOnline_Local)
                    {
                        //List<Function> functions = GetDeviceFunctionList(SPK.BrandType.Hdl);
@@ -607,12 +642,12 @@
                    MainPage.Log($"结束--读取");
                }
            })
            { IsBackground = true }.Start();
        }
#region 场景相关
        #region 场景相关
        /// <summary>
        /// 添加场景
        /// </summary>
@@ -644,10 +679,10 @@
            }
            return revPack.Code;
        }
#endregion
        #endregion
#region 收藏功能
        #region 收藏功能
        /// <summary>
        /// 收藏场景
        /// </summary>
@@ -672,14 +707,14 @@
            return result;
        }
#endregion
        #endregion
#region
        #region
#endregion
        #endregion
    }
}