private void checkHourlyStats(string name, string city) { AirMonit_SERVICE.Controllers.SensorsController service = new AirMonit_SERVICE.Controllers.SensorsController(); List <Sensor> sensors = service.GetSensorByNameAndCity(name, city); hourlyAvg(sensors); }
private static void client_MqttMsgPublishReceived(object sender, MqttMsgPublishEventArgs e) { // try //{ string data = Encoding.UTF8.GetString(e.Message); AirMonit_SERVICE.Controllers.SensorsController service = new AirMonit_SERVICE.Controllers.SensorsController(); if (e.Topic == "alarm") { data = Regex.Replace(data, "<.*?>", "#"); String[] wordsA = data.Split('#'); Sensor sensorAlarm = new Sensor(); sensorAlarm.Id = Int32.Parse(wordsA[4]); sensorAlarm.Name = wordsA[6]; sensorAlarm.Date = wordsA[8]; sensorAlarm.Time = wordsA[8]; sensorAlarm.City = wordsA[10]; sensorAlarm.Value = Int32.Parse(wordsA[12]); sensorAlarm.Trigger_rule = wordsA[14]; sensorAlarm.Trigger_value = Int32.Parse(wordsA[16]); service.PostAlarm(sensorAlarm); Console.WriteLine("Foi escrito um alarme na tabela Alarms!"); } else { data = Regex.Replace(data, "<.*?>", "#"); String[] words = data.Split('#'); Sensor sensor = new Sensor(); sensor.Id = Int32.Parse(words[2]); sensor.Name = words[4]; sensor.Value = Int32.Parse(words[6]); sensor.Date = words[8]; sensor.Time = words[8]; sensor.City = words[10]; service.PostSensor(sensor); Console.WriteLine("Foi escrito um sensor na tabela Sensors!"); } }
private void btnSearch_Click(object sender, EventArgs e) { lstSensorsInfo.Items.Clear(); string[] sensorType = checkSensorType(); string city = checkCity(); string date = checkDate(); string[] dates = date.Split('#'); if (sensorType.Length == 3) { lblSensorTest.Text = sensorType[0] + " " + sensorType[1] + " " + sensorType[2]; } else if (sensorType.Length == 2) { lblSensorTest.Text = sensorType[0] + " " + sensorType[1]; } else if (sensorType.Length == 1) { lblSensorTest.Text = sensorType[0]; } lblCityTest.Text = city; lblDateTest.Text = date; /*lstHourlyInfo.Items.Add(dates[0]); * lstHourlyInfo.Items.Add(dates[1]);*/ AirMonit_SERVICE.Controllers.SensorsController service = new AirMonit_SERVICE.Controllers.SensorsController(); //List<Sensor> sensors = service.GetSensorByNameAndCity(sensorType, city); if (cbHourlyStats.Checked) { label5.Text = "[Sensors]:"; if (cbNO2.Checked) { checkHourlyStats("NO2", city); } if (cbCO.Checked) { checkHourlyStats("CO", city); } if (cbO3.Checked) { checkHourlyStats("O3", city); } } for (int i = 0; i < sensorType.Length; i++) { if (city == "Todas") { lblCityTest.Text = "Leiria Coimbra Lisboa Porto"; string[] allCities = { "Leiria", "Coimbra", "Lisboa", "Porto" }; for (int j = 0; j < allCities.Length; j++) { if (dates.Length == 2) { List <Sensor> sensorsAllCitiesBetweenTwoDates = service.GetSensorByNameAndCityAndBetweenTwoDates(sensorType[i], allCities[j], dates[0], dates[1]); foreach (Sensor s in sensorsAllCitiesBetweenTwoDates) { lstSensorsInfo.Items.Add("Id: " + s.Id + " - Name: " + s.Name + " - City: " + s.City + " - Value: " + s.Value + " - Date: " + s.Date); } } else { List <Sensor> sensorsAllCities = service.GetSensorByNameAndCityAndDate(sensorType[i], allCities[j], date); foreach (Sensor s in sensorsAllCities) { lstSensorsInfo.Items.Add("Id: " + s.Id + " - Name: " + s.Name + " - City: " + s.City + " - Value: " + s.Value + " - Date: " + s.Date); } } } } else { if (dates.Length == 2) { List <Sensor> sensorsAllCitiesBetweenTwoDates = service.GetSensorByNameAndCityAndBetweenTwoDates(sensorType[i], city, dates[0], dates[1]); foreach (Sensor s in sensorsAllCitiesBetweenTwoDates) { lstSensorsInfo.Items.Add("Id: " + s.Id + " - Name: " + s.Name + " - City: " + s.City + " - Value: " + s.Value + " - Date: " + s.Date); } } else { List <Sensor> sensors = service.GetSensorByNameAndCityAndDate(sensorType[i], city, date); foreach (Sensor s in sensors) { lstSensorsInfo.Items.Add("Id: " + s.Id + " - Name: " + s.Name + " - City: " + s.City + " - Value: " + s.Value + " - Date: " + s.Date); } } } } }