diff --git a/UpNext.md b/UpNext.md index 348163a..6437919 100644 --- a/UpNext.md +++ b/UpNext.md @@ -1,3 +1,3 @@ # What to do next: -* Ensure existing 'meta' entries are updated and new entries aren't made. \ No newline at end of file +* List services changed to read from db rather than request fresh data each time. \ No newline at end of file diff --git a/src/services/dbAccess.services.js b/src/services/dbAccess.services.js index e57e86b..d59cb16 100644 --- a/src/services/dbAccess.services.js +++ b/src/services/dbAccess.services.js @@ -75,9 +75,10 @@ async function updateMeta(type, target, unixTime){ async function query(collection, query){ await client.connect(); - let qcoll = db.collection(collection); - let qcursor = qcoll.find(query) - let qresult = await qcursor.toArray(); + var qcoll = db.collection(collection); + var qcursor = qcoll.find(query) + qcursor.project({_id: 0}) + var qresult = await qcursor.toArray(); return qresult; } diff --git a/src/services/list.services.js b/src/services/list.services.js index bb6b60a..59fe57a 100644 --- a/src/services/list.services.js +++ b/src/services/list.services.js @@ -1,13 +1,17 @@ +const log = require('../utils/log.utils'); // Log Helper +const db = require('../services/dbAccess.services') const corpus = require('../services/corpus.services'); async function getStations(){ - // Databse lookup, get list of all stations as per the Python script output - return {state:"No can do, not fully implemented."}; + var out = await db.query("stations") + log.out(`listServices.getStations: fetched stations list`) + return out; } async function getCorpus(){ - // Raw corpus data, currently fetches from Network Rail each time its called - return corpus.get(); + var out = await db.query("corpus") + log.out(`listServices.getCorpus: fetched CORPUS list`) + return out; } module.exports = {