wxr
2021-07-01 43b0d5870d528f23ecd6aeceb6cfd4325188b46f
HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -23,7 +23,7 @@
        {
            MainPage.BasePageView.RemoveViewByTag("Logic");
        }
        /// <summary> Converts an array of bytes into a formatted string of hex digits (ex: E4 CA B2)</summary>
        /// <param name="data"> The array of bytes to be translated into a string of hex digits. </param>
        /// <returns> Returns a well formatted string of hex digits with spacing. </returns>
@@ -262,6 +262,7 @@
            return roomName.TrimEnd(',');
        }
        #region   动一改四
        /// <summary>
        /// 获取设备类型图标
        /// </summary>
@@ -298,6 +299,20 @@
                        strPath = "LogicIcon/heatlogic.png";
                    }
                    break;
                case SPK.SensorSmoke:
                case SPK.SensorWater:
                case SPK.SensorGas:
                case SPK.SensorDryContact:
                case SPK.SensorShanLan:
                case SPK.SensorDuiShe:
                case SPK.SensorPir:
                case SPK.SensorDoorWindow:
                case SPK.SensoruUtrasonic:
                case SPK.SenesorMegahealth:
                    {
                        strPath = "LogicIcon/sensor.png";
                    }
                    break;
            }
            return strPath;
@@ -311,13 +326,21 @@
        {
            List<string> deviceStrTypeList = new List<string>();
            deviceStrTypeList.Clear();
            var lightjosn = deviceList.Find((device) => device.spk == SPK.LightSwitch || device.spk == SPK.LightDimming || device.spk == SPK.LightCCT || device.spk == SPK.LightRGB || device.spk == SPK.LightRGBW);
            var lightjosn = deviceList.Find((device) =>
            device.spk == SPK.LightSwitch
            || device.spk == SPK.LightDimming
            || device.spk == SPK.LightCCT
            || device.spk == SPK.LightRGB
            || device.spk == SPK.LightRGBW);
            if (lightjosn != null)
            {
                deviceStrTypeList.Add(Language.StringByID(StringId.Lights));
            }
            var curtainjosn = deviceList.Find((device) => device.spk == SPK.CurtainSwitch || device.spk == SPK.CurtainTrietex || device.spk == SPK.CurtainRoller);
            var curtainjosn = deviceList.Find((device) =>
            device.spk == SPK.CurtainSwitch
            || device.spk == SPK.CurtainTrietex
            || device.spk == SPK.CurtainRoller);
            if (curtainjosn != null)
            {
                deviceStrTypeList.Add(Language.StringByID(StringId.Curtain));
@@ -332,6 +355,22 @@
            if (floorHeating != null)
            {
                deviceStrTypeList.Add(Language.StringByID(StringId.FloorHeating));
            }
            var sensor = deviceList.Find((device) =>
            device.spk == SPK.SensorWater
            || device.spk == SPK.SensorGas
            || device.spk == SPK.SensorSmoke
            || device.spk == SPK.SensorDryContact
            || device.spk == SPK.SensorShanLan
            || device.spk == SPK.SensorDuiShe
            || device.spk == SPK.SensorPir
            || device.spk == SPK.SensorDoorWindow
            || device.spk == SPK.SensoruUtrasonic
            || device.spk == SPK.SenesorMegahealth
            );
            if (sensor != null)
            {
                deviceStrTypeList.Add(Language.StringByID(StringId.Sensor));
            }
            return deviceStrTypeList;
@@ -366,6 +405,20 @@
            {
                functionTypeList.Add(SPK.FloorHeatStandard);
            }
            else if (deviceType == Language.StringByID(StringId.Sensor))
            {
                functionTypeList.Add(SPK.SensorSmoke);
                functionTypeList.Add(SPK.SensorWater);
                functionTypeList.Add(SPK.SensorGas);
                functionTypeList.Add(SPK.SensorDryContact);
                functionTypeList.Add(SPK.SensorShanLan);
                functionTypeList.Add(SPK.SensorDuiShe);
                functionTypeList.Add(SPK.SensorPir);
                functionTypeList.Add(SPK.SensorDoorWindow);
                functionTypeList.Add(SPK.SensoruUtrasonic);
                functionTypeList.Add(SPK.SenesorMegahealth);
            }
            return functionTypeList;
        }
@@ -390,6 +443,16 @@
                        deviceTypeList.Add(SPK.CurtainTrietex);
                        deviceTypeList.Add(SPK.AcStandard);
                        deviceTypeList.Add(SPK.FloorHeatStandard);
                        deviceTypeList.Add(SPK.SensorSmoke);
                        deviceTypeList.Add(SPK.SensorWater);
                        deviceTypeList.Add(SPK.SensorGas);
                        deviceTypeList.Add(SPK.SensorDryContact);
                        deviceTypeList.Add(SPK.SensorShanLan);
                        deviceTypeList.Add(SPK.SensorDuiShe);
                        deviceTypeList.Add(SPK.SensorPir);
                        deviceTypeList.Add(SPK.SensorDoorWindow);
                        deviceTypeList.Add(SPK.SensoruUtrasonic);
                        deviceTypeList.Add(SPK.SenesorMegahealth);
                    }
                    break;
                case target_if:
@@ -409,6 +472,7 @@
            }
            return deviceTypeList;
        }
        #endregion
        /// <summary>
        /// 显示的设备列表
        /// </summary>
@@ -421,9 +485,9 @@
            for (int i = 0; i < deviceList.Count; i++)
            {
                var dev = deviceList[i];
                //过滤掉不需要显示的设备
                if (functionType.Contains(dev.spk))
                {
                    ///过滤掉不需要显示的设备
                    devList.Add(dev);
                }
@@ -446,5 +510,39 @@
            var list = GetShowDeviceList(functionTypeList, roomDeviceList);
            return list;
        }
        /// <summary>
        /// 网关ID(获取嘉乐网关ID)
        /// </summary>
        public static string GatewayId
        {
            get
            {
                if (Entity.DB_ResidenceData.Instance.HomeGateway == null)
                {
                    return DriverLayer.Control.Ins.GatewayId;
                }
                return Entity.DB_ResidenceData.Instance.HomeGateway.gatewayId;
            }
        }
        /// <summary>
        /// 住宅ID
        /// </summary>
        public static string HomeId
        {
            get
            {
                return Entity.DB_ResidenceData.Instance.CurrentRegion.id;
            }
        }
        /// <summary>
        /// 是否为其他主用户分享过来的住宅
        /// </summary>
        public static bool IsOthreShare
        {
            get
            {
                return Entity.DB_ResidenceData.Instance.CurrentRegion.isOtherShare;
            }
        }
    }
}