Combine energy and water api calls to reduce overhead

This commit is contained in:
J. Nick Koston 2023-02-11 18:19:58 -06:00
parent a325d32d09
commit 9df1acb7d0

View File

@ -405,30 +405,18 @@ const getEnergyData = async (
volume: lengthUnit === "km" ? "L" : "gal", volume: lengthUnit === "km" ? "L" : "gal",
}; };
const stats = { const stats =
...(energyStatIds.length energyStatIds.length || waterStatIds.length
? await fetchStatistics( ? await fetchStatistics(
hass!, hass!,
startMinHour, startMinHour,
end, end,
energyStatIds, [...energyStatIds, ...waterStatIds],
period, period,
energyUnits, { ...energyUnits, ...waterUnits },
["sum"] ["sum"]
) )
: {}), : {};
...(waterStatIds.length
? await fetchStatistics(
hass!,
startMinHour,
end,
waterStatIds,
period,
waterUnits,
["sum"]
)
: {}),
};
let statsCompare; let statsCompare;
let startCompare; let startCompare;
@ -444,32 +432,19 @@ const getEnergyData = async (
const compareStartMinHour = addHours(startCompare, -1); const compareStartMinHour = addHours(startCompare, -1);
endCompare = addMilliseconds(start, -1); endCompare = addMilliseconds(start, -1);
statsCompare = { statsCompare =
...(energyStatIds.length energyStatIds.length || waterStatIds.length
? await fetchStatistics( ? await fetchStatistics(
hass!, hass!,
compareStartMinHour, compareStartMinHour,
endCompare, endCompare,
energyStatIds, [...energyStatIds, ...waterStatIds],
period, period,
energyUnits, { ...energyUnits, ...waterUnits },
["sum"] ["sum"]
) )
: {}), : {};
...(waterStatIds.length
? await fetchStatistics(
hass!,
compareStartMinHour,
endCompare,
waterStatIds,
period,
waterUnits,
["sum"]
)
: {}),
};
} }
let fossilEnergyConsumption: FossilEnergyConsumption | undefined; let fossilEnergyConsumption: FossilEnergyConsumption | undefined;
let fossilEnergyConsumptionCompare: FossilEnergyConsumption | undefined; let fossilEnergyConsumptionCompare: FossilEnergyConsumption | undefined;