wei
2021-03-03 d4811b7d34b45ff6b21b97f11da128b5572ec526
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSciencePage.cs
@@ -3,6 +3,7 @@
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using System.Collections.Generic;
using HDL_ON.DriverLayer;
namespace HDL_ON.UI
{
@@ -283,11 +284,7 @@
            bodyView.AddChidren(contentView);
            #region 房间顶部切换显示区域
            room = new Room();
            if (DB_ResidenceData.residenceData.rooms.Count > 0)
            {
                room = DB_ResidenceData.residenceData.rooms[0];
            }
            room = new Room() { roomName = Language.StringByID(StringId.All)};
            btnFoorDownIcon = new Button()
            {
                Width = Application.GetMinRealAverage(16),
@@ -307,7 +304,7 @@
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                TextAlignment = TextAlignment.CenterLeft,
                Text = room.name,
                Text = room.roomName,
            };
            contentView.AddChidren(btnRoom);
@@ -331,16 +328,10 @@
            };
            contentView.AddChidren(sensorListView);
            int index = 0;
            foreach(var sensor in DB_ResidenceData.residenceData.functionList.sensorsEnvironmentalScience)
            {
                if ( sensor.functionType == FunctionType.WindPower)
                {
                    continue;
                }
                LoadSensorDiv(sensor, index);
                index++;
            }
            LoadSenesorList();
            LoadEventList();
            #endregion
@@ -350,18 +341,29 @@
            new TopViewDiv(bodyView, Language.StringByID(StringId.EnvironmentalScience)).LoadTopView();
        }
        /// <summary>
        /// 加载传感器列表
        /// </summary>
        void LoadSenesorList()
        {
            sensorListView.RemoveAll();
            int index = 0;
            foreach (var sensor in FunctionList.List.sensorsEnvironmentalScience)
            {
                LoadSensorDiv(sensor, index);
                index++;
            }
        }
        /// <summary>
        /// 加载传感器列表
        /// </summary>
        void LoadSensorDiv(Sensor sensor,int index)
        {
            if (sensor.roomIdList.Contains(room.sid))
            if (room.roomId == "" ||  sensor.roomIds.Contains(room.roomId))
            {
                var sensorTag = sensor.sid;
                if (sensor.bus_Data != null)
                {
                    sensorTag = ((int)sensor.functionType % 256) + "_" + sensor.bus_Data.SubnetID + "_" + sensor.bus_Data.DeviceID + "_" + sensor.bus_Data.LoopID;
                }
                FrameLayout sensorView = new FrameLayout()
                {
                    Width = Application.GetRealWidth(148),
@@ -412,27 +414,26 @@
                };
                sensorView.AddChidren(btnSensorTitle);
                btnSensorTitle.MouseUpEventHandler = (sender, e) => {
                    #region
                    var esp = new EnvironmentalSensorPage(sensor);
                    MainPage.BasePageView.AddChidren(esp);
                    esp.LoadPage();
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                    #endregion
                };
                if ( sensor.functionType != FunctionType.WindPower)
                var btnInfoIcon = new Button()
                {
                    var btnInfoIcon = new Button()
                    {
                        X = Application.GetRealWidth(120),
                        Width = Application.GetRealWidth(28),
                        Height = Application.GetRealWidth(28),
                        UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/TipInfoIcon.png",
                    };
                    sensorView.AddChidren(btnInfoIcon);
                    btnInfoIcon.MouseUpEventHandler = (sender, e) =>
                    {
                        LoadInfo(sensor);
                    };
                }
                    X = Application.GetRealWidth(120),
                    Width = Application.GetRealWidth(28),
                    Height = Application.GetRealWidth(28),
                    UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/TipInfoIcon.png",
                };
                sensorView.AddChidren(btnInfoIcon);
                btnInfoIcon.MouseUpEventHandler = (sender, e) =>
                {
                    LoadInfo(sensor);
                };
                var btnSensorValues = new Button()
                {
@@ -463,8 +464,7 @@
                };
                sensorView.AddChidren(btnLevel);
                //Control.Send(CommandType_A.read, sensor);
                Control.SendReadCommand(sensor);
                Control.Ins.SendReadCommand(sensor);
            }
        }
@@ -506,29 +506,21 @@
            };
            infoView.AddChidren(btnTitle);
            switch (sensor.functionType)
            switch (sensor.spk)
            {
                case FunctionType.PM10:
                    btnTitle.Text = "PM1.0(ug/m²)";
                    break;
                case FunctionType.PM25:
                case SPK.SensorPm25:
                    btnTitle.Text = "PM2.5(ug/m²)";
                    break;
                case FunctionType.WindPower:
                    break;
                //case FunctionType.Noise:
                //    break;
                case FunctionType.Temp:
                case SPK.SensorTemperature:
                    btnTitle.Text = Language.StringByID(StringId.Temp) + "(°C)";
                    break;
                case FunctionType.TVOC:
                case SPK.SensorTVOC:
                    btnTitle.Text = "TVOC(PPM)";
                    break;
                case FunctionType.CO2:
                case SPK.SensorCO2:
                    btnTitle.Text = "CO2(PPM)";
                    break;
                case FunctionType.Humidity:
                case SPK.SensorHumidity:
                    btnTitle.Text = Language.StringByID(StringId.Humidity) + "(%)";
                    break;
            }
@@ -642,7 +634,7 @@
                var dispalyView = new FrameLayout()
                {
                    X = Application.GetRealWidth(10),
                    Y = Application.GetRealHeight(100),
                    Y = Application.GetRealHeight(266),
                    Width = Application.GetRealWidth(160),
                    Height = Application.GetRealHeight(110),
                    BackgroundImagePath = "PersonalCenter/HomeList1bg.png",
@@ -659,15 +651,15 @@
                };
                dispalyView.AddChidren(contentView);
                if (DB_ResidenceData.residenceData.rooms.Count < 2)
                if (SpatialInfo.CurrentSpatial.RoomList.Count < 2)
                {
                }
                else if (DB_ResidenceData.residenceData.rooms.Count < 3)
                else if (SpatialInfo.CurrentSpatial.RoomList.Count < 3)
                {
                    dispalyView = new FrameLayout()
                    {
                        X = Application.GetRealWidth(10),
                        Y = Application.GetRealHeight(100),
                        Y = Application.GetRealHeight(266),
                        Width = Application.GetRealWidth(160),
                        Height = Application.GetRealHeight(155),
                        BackgroundImagePath = "PersonalCenter/HomeList2bg.png",
@@ -677,12 +669,12 @@
                    contentView.Height = Application.GetRealHeight(45 * 3);
                    dispalyView.AddChidren(contentView);
                }
                else if (DB_ResidenceData.residenceData.rooms.Count < 4)
                else if (SpatialInfo.CurrentSpatial.RoomList.Count < 4)
                {
                    dispalyView = new FrameLayout()
                    {
                        X = Application.GetRealWidth(10),
                        Y = Application.GetRealHeight(100),
                        Y = Application.GetRealHeight(266),
                        Width = Application.GetRealWidth(160),
                        Height = Application.GetRealHeight(200),
                        BackgroundImagePath = "PersonalCenter/HomeList3bg.png",
@@ -697,7 +689,7 @@
                    dispalyView = new FrameLayout()
                    {
                        X = Application.GetRealWidth(10),
                        Y = Application.GetRealHeight(100),
                        Y = Application.GetRealHeight(266),
                        Width = Application.GetRealWidth(160),
                        Height = Application.GetRealHeight(245),
                        BackgroundImagePath = "PersonalCenter/HomeList4bg.png",
@@ -710,10 +702,13 @@
                }
                var showListRoom = new List<Room>();
                showListRoom.Add(new Room() { roomName = Language.StringByID(StringId.All) });
                showListRoom.AddRange(SpatialInfo.CurrentSpatial.RoomList);
                foreach (var roomTemp in DB_ResidenceData.residenceData.rooms)
                foreach (var roomTemp in showListRoom)
                {
                    string roomName = roomTemp.name;
                    string roomName = roomTemp.roomName;
                    var btnRoomName = new Button()
                    {
                        Gravity = Gravity.CenterHorizontal,
@@ -735,6 +730,7 @@
                        dialog.Close();
                        btnRoom.Text = roomName;
                        room = roomTemp;
                        LoadSenesorList();
                    };
                }