From 6cfdbd698333a906b12d89e4439cfe356b9485df Mon Sep 17 00:00:00 2001 From: KevinMidboe Date: Sun, 7 Jun 2020 23:50:24 +0200 Subject: [PATCH] Db functions as resources for endpoints. Db functoins for: - getting event by id. - getting events where secuential statues are truncated. - get events, but w/ select on date & isOk status. --- .gitignore | 1 + src/db.js | 20 +++++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 39cafe7..b5eb5fd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # Project files to ignore config.js +pdfExports/* *.swp .DS_Store diff --git a/src/db.js b/src/db.js index 41d1367..e55f2f4 100644 --- a/src/db.js +++ b/src/db.js @@ -26,8 +26,26 @@ const commitServiceEventToDatabase = async (serviceMessages, pdfFilename) => { } const getAllEvents = () => Event.find().exec() +const getEventById = (id) => Event.findById(id).exec() + +const getAlternatingEventStatuses = () => Event.find().exec() + .then(events => { + let lastEventStatus; + return events.filter(event => { + if (event.isOk != lastEventStatus) { + lastEventStatus = event.isOk; + return event + } + }) + }) + +const getEventStatus = () => Event.find().select('date isOk').exec() + .then(events => events.reverse()) module.exports = { commitServiceEventToDatabase, - getAllEvents + getAllEvents, + getEventById, + getAlternatingEventStatuses, + getEventStatus } \ No newline at end of file