Use date only for days endpoint model

This commit is contained in:
2023-09-03 11:59:56 +02:00
parent 84a358cfe6
commit 8e92490c8f
2 changed files with 4 additions and 5 deletions

View File

@@ -2,19 +2,19 @@ using Electricity.Api.Extensions;
namespace Electricity.Api.Models; namespace Electricity.Api.Models;
public record Day(uint DateTime, double TotalPowerUse, double TotalPowerReturn, double TotalGasUse) public record Day(string Date, double TotalPowerUse, double TotalPowerReturn, double TotalGasUse)
{ {
public static Day Empty(DateOnly date) public static Day Empty(DateOnly date)
{ {
return new Day( return new Day(
date.ToDateTime(new TimeOnly(0, 0), DateTimeKind.Utc).ToEpoch(), date.ToString(Constants.isoDateFormat),
0, 0, 0); 0, 0, 0);
} }
public static Day FromEntity(Entities.ElectricityLog entity) public static Day FromEntity(Entities.ElectricityLog entity)
{ {
return new Day( return new Day(
DateTime: entity.GetDateTime().ToEpoch(), Date: entity.Date,
TotalPowerUse: entity.TotalPowerConsumptionDay + entity.TotalPowerConsumptionNight, TotalPowerUse: entity.TotalPowerConsumptionDay + entity.TotalPowerConsumptionNight,
TotalPowerReturn: entity.TotalPowerReturnDay + entity.TotalPowerReturnNight, TotalPowerReturn: entity.TotalPowerReturnDay + entity.TotalPowerReturnNight,
TotalGasUse: entity.GasConsumptionInCubicMeters TotalGasUse: entity.GasConsumptionInCubicMeters

View File

@@ -56,9 +56,8 @@ public class ElectricityService
} }
var lastAsModel = Day.FromEntity(last); var lastAsModel = Day.FromEntity(last);
// TODO fix UTC issues here (just return the date, don't use timestamps)
return new Day( return new Day(
lastAsModel.DateTime, lastAsModel.Date,
lastAsModel.TotalPowerUse - firstAsModel.TotalPowerUse, lastAsModel.TotalPowerUse - firstAsModel.TotalPowerUse,
lastAsModel.TotalPowerReturn - firstAsModel.TotalPowerReturn, lastAsModel.TotalPowerReturn - firstAsModel.TotalPowerReturn,
lastAsModel.TotalGasUse - firstAsModel.TotalGasUse lastAsModel.TotalGasUse - firstAsModel.TotalGasUse