Add dashboard previous-period comparison metrics

This commit is contained in:
Chris Walsh 2021-08-12 16:01:51 -07:00
parent ae7186c32a
commit 0c304a2abc
No known key found for this signature in database
GPG key ID: 28EE0CCA6032019E
4 changed files with 91 additions and 10 deletions

View file

@ -14,10 +14,18 @@ export default async (req, res) => {
const startDate = new Date(+start_at);
const endDate = new Date(+end_at);
const distance = end_at - start_at;
const prevStartDate = new Date(+start_at - distance);
const prevEndDate = new Date(+end_at - distance);
const metrics = await getWebsiteStats(websiteId, startDate, endDate, { url });
const prevPeriod = await getWebsiteStats(websiteId, prevStartDate, prevEndDate, { url });
const stats = Object.keys(metrics[0]).reduce((obj, key) => {
obj[key] = Number(metrics[0][key]) || 0;
obj[key] = {
value: Number(metrics[0][key]) || 0,
change: Number(metrics[0][key] - prevPeriod[0][key]) || 0,
};
return obj;
}, {});