backend/src/controllers/ref.controllers.js
Fred Boniface 34d00ad16f /api/v2/ref now available
Signed-off-by: Fred Boniface <fred@fjla.uk>
2023-06-17 23:04:42 +01:00

52 lines
1.1 KiB
JavaScript

/* API V2 Exclusive Controller */
const ldb = require('../services/ldb.services');
const find = require('../services/find.services');
async function getReasonCode(req, res, next) {
try {
const code = req.params.code;
if (code === 'all') {
res.json(await ldb.getReasonCodeList());
}
res.json(await ldb.getReasonCode(code));
} catch (err) {
console.error('ERROR', err.message);
err.status = 500;
next(err);
}
}
async function getLocationReference(req, res, next) {
try {
const searchType = req.params.searchType;
const id = req.params.id;
switch (searchType) {
case 'name':
res.json(await find.name(id));
break;
case 'crs': // Same as 3alpha
case '3alpha':
res.json(await find.crs(id));
break;
case 'nlc':
res.json(await find.nlc(id));
break;
case 'tiploc':
res.json(await find.tiploc(id));
break;
case 'stanox':
res.json(await find.stanox(id));
break;
}
} catch (err) {
console.error('ERROR', err.message);
err.status = 500;
next(err);
}
}
module.exports = {
getReasonCode,
getLocationReference
};