wei
2021-08-20 41995c4cd30ca1c5a814ea0af6f70d3b86368137
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
@@ -29,6 +29,8 @@
        /// </summary>
        FrameLayout sensorListView;
        VerticalScrolViewLayout sensorListContentView;
        /// <summary>
        /// 天气名称文本
        /// </summary>
@@ -237,17 +239,18 @@
            contentView.AddChidren(btnRoomClickRow);
            #endregion
            sensorListView = new FrameLayout()
            sensorListContentView = new VerticalScrolViewLayout()
            {
                Gravity = Gravity.CenterHorizontal,
                Y = Application.GetRealHeight(50),
                Height = Application.GetRealHeight(456),
                Height = Application.GetRealHeight(400),
                Radius = (uint)Application.GetRealWidth(12),
                BorderColor = 0x00000000,
                BorderWidth = 0,
            };
            contentView.AddChidren(sensorListView);
            contentView.AddChidren(sensorListContentView);
            sensorListView = new FrameLayout();
            sensorListContentView.AddChidren(sensorListView);
            LoadSenesorList();
@@ -271,7 +274,7 @@
            int index = 0;
            foreach (var sensor in FunctionList.List.GetEnvirSensorsList())
            {
                if(sensor.spk == SPK.SensorEnvironment)
                if(SPK.EvironmentSensorList().Contains(sensor.spk))
                {
                    foreach (var seTemp in sensor.attributes)
                    {
@@ -280,38 +283,52 @@
                            name = sensor.name,
                            sid = sensor.sid,
                            deviceId = sensor.deviceId,
                            attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", value = seTemp.value } },
                            roomIds = sensor.roomIds,
                            attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = seTemp.state, curValue = seTemp.curValue }
                            ,new FunctionAttributes { key = "spk"} }
                        };
                        switch (seTemp.key)
                        {
                            case "co2":
                                newTemp.spk = SPK.SensorCO2;
                                newTemp.SetAttrState("spk", "co2");
                                break;
                            case "pm25":
                                newTemp.spk = SPK.SensorPm25;
                                newTemp.SetAttrState("spk", "pm25");
                                break;
                            case "humidity":
                                newTemp.spk = SPK.SensorHumidity;
                                newTemp.SetAttrState("spk", "humidity");
                                break;
                            case "temperature":
                                newTemp.spk = SPK.SensorTemperature;
                                newTemp.SetAttrState("spk", "temperature");
                                break;
                            case "tvoc":
                                newTemp.spk = SPK.SensorTVOC;
                                newTemp.SetAttrState("spk", "tvoc");
                                break;
                            default:
                                continue;
                                break;
                        }
                        LoadSensorDiv(newTemp, index);
                        index++;
                        if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
                        {
                            LoadSensorDiv(newTemp, index);
                            index++;
                        }
                    }
                }
                else
                {
#if DEBUG
                    continue;
#endif
                    LoadSensorDiv(sensor, index);
                    if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
                    {
                        LoadSensorDiv(sensor, index);
                        index++;
                    }
                }
                index++;
                new System.Threading.Thread(() =>
                {
@@ -319,16 +336,16 @@
                })
                { IsBackground = true }.Start();
            }
            sensorListView.Height = Application.GetRealWidth(124 * (index + 1) / 2);
        }
        /// <summary>
        /// 加载传感器列表
        /// </summary>
        void LoadSensorDiv(Function sensor, int index)
        void LoadSensorDiv(Function sensor,int index)
        {
            var levelColorList = sensorTemp.GetLevelColorList(sensor.spk);
            var levelTextList = sensorTemp.GetLevelTextList(sensor.spk);
            if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
            {
                var sensorTag = sensor.spk + sensor.sid + sensor.deviceId;
                FrameLayout sensorView = new FrameLayout()
@@ -748,7 +765,7 @@
                {
                    if (bodyView != null)
                    {
                        if (updateTemp.spk == SPK.SensorEnvironment)
                        if (SPK.EvironmentSensorList().Contains(updateTemp.spk ))
                        {
                            foreach (var seTemp in updateTemp.attributes)
                            {
@@ -757,7 +774,7 @@
                                    name = updateTemp.name,
                                    sid = updateTemp.sid,
                                    deviceId = updateTemp.deviceId,
                                    attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", value = seTemp.value } },
                                    attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = seTemp.state ,curValue = seTemp.curValue} },
                                };
                                switch (seTemp.key)
                                {