From d593c0095f9f6f591f5b2f84537ccfd49d6934f9 Mon Sep 17 00:00:00 2001 From: Chris Kaczor Date: Sun, 6 Oct 2019 19:01:35 -0400 Subject: [PATCH] Change value history to not group --- .../Service/Controllers/ReadingsController.cs | 4 ++-- Weather/Service/Data/Database.cs | 4 ++-- .../Data/Resources/GetReadingValueHistory.sql | 16 ++++------------ Weather/Service/Models/WeatherValue.cs | 4 ++-- 4 files changed, 10 insertions(+), 18 deletions(-) diff --git a/Weather/Service/Controllers/ReadingsController.cs b/Weather/Service/Controllers/ReadingsController.cs index b7f5e8e..2bab50f 100644 --- a/Weather/Service/Controllers/ReadingsController.cs +++ b/Weather/Service/Controllers/ReadingsController.cs @@ -33,9 +33,9 @@ namespace ChrisKaczor.HomeMonitor.Weather.Service.Controllers } [HttpGet("value-history")] - public async Task>> GetValueHistory(WeatherValueType weatherValueType, DateTimeOffset start, DateTimeOffset end, int bucketMinutes = 2) + public async Task>> GetValueHistory(WeatherValueType weatherValueType, DateTimeOffset start, DateTimeOffset end) { - return (await _database.GetReadingValueHistory(weatherValueType, start, end, bucketMinutes)).ToList(); + return (await _database.GetReadingValueHistory(weatherValueType, start, end)).ToList(); } [HttpGet("history-grouped")] diff --git a/Weather/Service/Data/Database.cs b/Weather/Service/Data/Database.cs index 0ca12a2..3245248 100644 --- a/Weather/Service/Data/Database.cs +++ b/Weather/Service/Data/Database.cs @@ -98,7 +98,7 @@ namespace ChrisKaczor.HomeMonitor.Weather.Service.Data return await connection.QueryAsync(query, new { Start = start, End = end }); } - public async Task> GetReadingValueHistory(WeatherValueType weatherValueType, DateTimeOffset start, DateTimeOffset end, int bucketMinutes) + public async Task> GetReadingValueHistory(WeatherValueType weatherValueType, DateTimeOffset start, DateTimeOffset end) { await using var connection = CreateConnection(); @@ -106,7 +106,7 @@ namespace ChrisKaczor.HomeMonitor.Weather.Service.Data query = query.Replace("@Value", weatherValueType.ToString()); - return await connection.QueryAsync(query, new { Start = start, End = end, BucketMinutes = bucketMinutes }); + return await connection.QueryAsync(query, new { Start = start, End = end }); } public async Task> GetReadingHistoryGrouped(DateTimeOffset start, DateTimeOffset end, int bucketMinutes) diff --git a/Weather/Service/Data/Resources/GetReadingValueHistory.sql b/Weather/Service/Data/Resources/GetReadingValueHistory.sql index e9d7c8d..b57b542 100644 --- a/Weather/Service/Data/Resources/GetReadingValueHistory.sql +++ b/Weather/Service/Data/Resources/GetReadingValueHistory.sql @@ -1,12 +1,4 @@ -SELECT bucket, - AVG(Value) AS AverageValue -FROM ( - SELECT CAST(FORMAT(Timestamp, 'yyyy-MM-ddTHH:') + - RIGHT('00' + CAST(DATEPART(MINUTE, Timestamp) / @BucketMinutes * @BucketMinutes AS VARCHAR), 2) - + ':00+00:00' AS DATETIMEOFFSET) AS Bucket, - @Value AS Value - FROM Reading - WHERE Timestamp BETWEEN @Start AND @End - ) AS Data -GROUP BY Bucket -ORDER BY Bucket \ No newline at end of file +SELECT Timestamp, + @Value AS Value +FROM Reading +WHERE Timestamp BETWEEN @Start AND @End diff --git a/Weather/Service/Models/WeatherValue.cs b/Weather/Service/Models/WeatherValue.cs index 6a41ad6..0b5200a 100644 --- a/Weather/Service/Models/WeatherValue.cs +++ b/Weather/Service/Models/WeatherValue.cs @@ -6,8 +6,8 @@ namespace ChrisKaczor.HomeMonitor.Weather.Service.Models [PublicAPI] public class WeatherValue { - public DateTimeOffset Bucket { get; set; } + public DateTimeOffset Timestamp { get; set; } - public decimal AverageValue { get; set; } + public decimal Value { get; set; } } }