Re-implement ensureArray

Signed-off-by: Fred Boniface <fred@fjla.uk>
This commit is contained in:
Fred Boniface
2023-07-01 21:07:18 +01:00
parent 49ad201522
commit cf87c1a2b6
5 changed files with 44 additions and 14 deletions

View File

@@ -62,7 +62,10 @@ async function arrDepBoardStaff(CRS) {
services: 'PBS'
};
const api = new ldb(ldbsvKey,true);
return await api.call('GetArrivalDepartureBoardByCRS',options,false,false);
let data = await api.call(
'GetArrivalDepartureBoardByCRS',
options, false, false);
return await util.cleanData(data);
} catch (err) {
log.out(`ldbService.arrDepBoardStaff: Lookup Failed for: ${CRS}`, 'warn');
log.out(`ldbService.arrDepBoardStaff: ${err}`);

View File

@@ -4,6 +4,10 @@ const db = require('../services/dbAccess.services');
const log = require('../utils/log.utils');
const clean = require('../utils/sanitizer.utils');
const supported = [
'GW'
];
async function findPisByOrigDest(start,end) {
log.out('pisServices.findPisByOrigDest: Searching for PIS for Orig: ' +
`${start}, Dest: ${end}`, 'dbug');
@@ -46,6 +50,7 @@ async function findByTiplocArray(tiplocArray) {
}
module.exports = {
supported,
findPisByOrigDest,
findPisByCode,
findByTiplocArray

View File

@@ -20,15 +20,17 @@ async function findByHeadcodeToday(headcode) {
let trainData = await parseTrains(queryData);
let preparedData = [];
for (let trainService in trainData) {
if (pis.supported.includes(trainData?.operator)) {
// Search for PIS Code for each service
const tiplocList = await getPublicStops(trainData[trainService]['stops']);
//console.log(tiplocList.length); console.log(tiplocList);
if (tiplocList.length) {
const pisDetail = await pis.findByTiplocArray(tiplocList);
trainData[trainService]['pis'] = pisDetail?.[0]?.['code'] ?? 'None';
} else {
trainData[trainService]['pis'] = '0015'; // Not in Service code
// '0015' is a string otherwise it is interpreted as octal 13.
const tiplocList = await getPublicStops(trainData[trainService]['stops']);
//console.log(tiplocList.length); console.log(tiplocList);
if (tiplocList.length) {
const pisDetail = await pis.findByTiplocArray(tiplocList);
trainData[trainService]['pis'] = pisDetail?.[0]?.['code'] ?? 'None';
} else {
trainData[trainService]['pis'] = '0015'; // Not in Service code
// '0015' is a string becuase 0015 is not a valid number..
}
}
preparedData.push(trainData[trainService]);
}