wei
2021-01-27 7232642ff48a7fbde2018cde652f3e771fa58025
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs
@@ -3,6 +3,7 @@
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using System.Collections.Generic;
using HDL_ON.DAL.Server;
namespace HDL_ON.UI
{
@@ -162,10 +163,9 @@
            };
            diagramView.AddChidren(tipTextView);
            switch (sensor.functionType)
            switch (sensor.spk)
            {
                case FunctionType.PM10:
                case FunctionType.PM25:
                case SPK.SensorPm25:
                    tipValuesView.AddChidren(new Button()
                    {
                        Width = Application.GetRealWidth(101),
@@ -223,7 +223,7 @@
                        TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
                    });
                    break;
                //case FunctionType.PM25:
                //case SPK.SensorPm25:
                //_intervalValue.Add("0 ~ 35");
                //_intervalValue.Add("36 ~ 75");
                //_intervalValue.Add("76 ~ 115");
@@ -233,11 +233,7 @@
                //_levelTextList.Add(StringId.MildPollution);
                //_levelTextList.Add(StringId.HeavyPollution);
                //break;
                //case FunctionType.Noise:
                //    break;
                case FunctionType.WindPower:
                    break;
                case FunctionType.CO2:
                case SPK.SensorCO2:
                    tipValuesView.AddChidren(new Button()
                    {
                        Width = Application.GetRealWidth(101),
@@ -295,7 +291,7 @@
                        TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
                    });
                    break;
                case FunctionType.Temp:
                case SPK.SensorTemperature:
                    tipValuesView.AddChidren(new Button()
                    {
                        Width = Application.GetRealWidth(50),
@@ -415,7 +411,7 @@
                    //_levelTextList.Add(StringId.);
                    //_levelTextList.Add(StringId.ExtremeHeat);
                    break;
                case FunctionType.TVOC:
                case SPK.SensorTVOC:
                    tipValuesView.AddChidren(new Button()
                    {
                        Width = Application.GetRealWidth(101),
@@ -473,7 +469,7 @@
                        TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
                    });
                    break;
                case FunctionType.Humidity:
                case SPK.SensorHumidity:
                    tipValuesView.AddChidren(new Button()
                    {
                        Width = Application.GetRealWidth(151),
@@ -646,13 +642,13 @@
            bool initTitleButton = true;
            foreach (var tempSensor in DB_ResidenceData.residenceData.functionList.sensorsEnvironmentalScience)
            foreach (var tempSensor in FunctionList.List.sensorsEnvironmentalScience)
            {
                if (tempSensor.sid == sensor.sid)
                {
                    continue;
                }
                if (tempSensor.functionType != sensor.functionType)
                if (tempSensor.spk != sensor.spk)
                {
                    continue;
                }
@@ -832,7 +828,7 @@
                try
                {
                    Application.RunOnMainThread(() => {
                        loadPage.Start("Loading...");
                        loadPage.Start(Language.StringByID(StringId.PleaseWait));
                    });
                    var curMonth = 0;
                    if(curQueryType == QueryType.NowMonth)
@@ -840,9 +836,66 @@
                        curMonth = DateTime.Now.Month;
                    }
                    int i = 0;
                    foreach (var sr in DB_ResidenceData.residenceData.functionList.sensorsEnvironmentalScience)
//#if DEBUG
//                    var sItem = new EchartSeriesItem
//                    {
//                        name = sensor.GetRoomListName(),
//                        data = new List<int>(),
//                        lineStyle = new EchartLineStyle()
//                        {
//                            color = tipColorStringList[i],
//#if __IOS__
//                            width = 5,
//#elif __ANDROID__
//                                        width = 2,
//#endif
//                        },
//                    };
//                    Random random = new Random();
//                    double level = 0.0;
//                    int countddd = 24;
//                    for (int j = 0; j < countddd; j++)
//                    {
//                        switch (sensor.functionType)
//                        {
//                            case SPK.SensorPm25:
//                                level = Math.Round(random.NextDouble() * 130, 0);
//                                break;
//                            case SPK.SensorCO2:
//                                level = Math.Round(random.NextDouble() * 6000, 0);
//                                break;
//                            case SPK.SensorTemperature:
//                                level = Math.Round(random.NextDouble() * 40, 0);
//                                break;
//                            case SPK.SensorTVOC:
//                                level = Math.Round(random.NextDouble() * 10, 1);
//                                break;
//                            case SPK.SensorHumidity:
//                                level = Math.Round(random.NextDouble() * 100, 0);
//                                break;
//                        }
//                        sItem.data.Add((int)level);
//                    }
//                        seriesList.Add(sItem);
//                    echartRootJson.series = seriesList;
//#if __IOS__
//                    echartRootJson.xAxis.axisLabel.fontSize = 22;
//                    echartRootJson.yAxis.axisLabel.fontSize = 22;
//#else
//                    echartRootJson.xAxis.axisLabel.fontSize = 8;
//                    echartRootJson.yAxis.axisLabel.fontSize = 8;
//#endif
//                    echartRootJsonString = Newtonsoft.Json.JsonConvert.SerializeObject(echartRootJson);
//                    Application.RunOnMainThread(() =>
//                    {
//                        myEchartsView.ShowWithOptionJsonString(echartRootJsonString);
//                    });
//#endif
                    foreach (var sr in FunctionList.List.sensorsEnvironmentalScience)
                    {
                        if (sr.functionType != sensor.functionType)
                        if (sr.spk != sensor.spk)
                        {
                            continue;
                        }
@@ -851,13 +904,33 @@
                            i++;
                            continue;
                        }
                        var revertObj = new DAL.Server.HttpServerRequest().GetSensorHistory(sr.bus_Data.SubnetID, sr.bus_Data.DeviceID,
                               5, (int)(sr.functionType) % 256, (int)curQueryType, sr.bus_Data.LoopID, curMonth,
                               DB_ResidenceData.residenceData.residenceGatewayMAC);
                        byte sensorType = 0;
                        switch (sr.spk)
                        {
                            case SPK.SensorTemperature:
                                sensorType = 2;
                                break;
                            case SPK.SensorHumidity:
                                sensorType = 3;
                                break;
                            case SPK.SensorTVOC:
                                sensorType = 5;
                                break;
                            case SPK.SensorPm25:
                                sensorType = 6;
                                break;
                            case SPK.SensorCO2:
                                sensorType = 7;
                                break;
                        }
                        var revertObj = new HttpServerRequest().GetSensorHistory(sr.bus.SubnetID, sr.bus.DeviceID,
                               5, sensorType, (int)curQueryType, sr.bus.LoopId, curMonth,
                               DB_ResidenceData.Instance.residenceGatewayMAC);
                        if (revertObj != null)
                        {
                            if (revertObj.StateCode == "SUCCESS")
                            if (revertObj.StateCode == StateCode.SUCCESS)
                            {
                                var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SensorPushHistoryRes>>(revertObj.ResponseData.ToString());
@@ -879,7 +952,7 @@
                                int ass = 0;
                                for (int j = 0; j < revertData.Count; j++)
                                {
                                    if (curQueryType == QueryType.NowMonth && revertData[j].CreatedOnUtc.Day > DateTime.Now.Day )
                                    if (curQueryType == QueryType.NowMonth && revertData[j].CreatedOnUtc.Day > DateTime.Now.Day)
                                    {
                                        continue;
                                    }
@@ -918,8 +991,6 @@
                        i++;
                    }
                    //echartRootJson.title.text = "温度(℃)";lineStyle
                    //echartRootJson.color = new List<string> { "#80AEFF" };//, "FFD154", "FF9D54", "FE6A6A", "B183C3", "ADE764"
                    echartRootJson.series = seriesList;