lts-stats-api/test.js
2023-01-22 00:02:30 +01:00

73 lines
2.1 KiB
JavaScript

require('dotenv').config();
const data = require('./testData/short.json');
const { analize, getShortStates, getAirTime } = require('./app/controllers/trackerAnalizer');
const { getSessions, getSessionTracks, updateSessionTracks } = require('./app/db/mongo/mongoSessions');
const { getIvaoPilotsNow } = require('./app/requests/ivao/session');
const { createUserMongo } = require('./app/db/mongo/mongoUsers');
const { getHashedPassword } = require('./app/controllers/adminController');
// const { getHistoricalSessions, getSessionTracks } = require('./app/requests/ivao/session');
// const { getUsers } = require('./app/db/mysql/lsaUsers');
// const { RedisClient } = require('./app/db/redis/redis');
async function recalculateTime() {
// console.log(await getShortStates(data.tracks).map(d => ({ time: d.time, state: d.state, onGround: d.onGround })));
// console.log(await getAirTime(data.tracks));
const sessions = await getSessions('2022-01-01', '2023-11-01');
console.log('sessions.length :>> ', sessions.length);
let errs = [];
for (let index = 0; index < sessions.length; index++) {
let session;
try {
session = sessions[index];
const tracks = await getSessionTracks(session.id);
if (tracks) {
const newCalculatedTime = getAirTime(tracks.tracks);
// console.log(session.id, tracks.calculatedTime, newCalculatedTime);
tracks.calculatedTime = newCalculatedTime;
await updateSessionTracks(tracks);
}
} catch (err) {
console.log(session.id);
errs.push(session.id, err.message);
}
}
if (!errs.length) {
console.log('process ended OK');
} else {
console.log(errs);
}
}
async function f() {
const crypto = require('crypto');
await createUserMongo({
id: crypto.randomBytes(16).toString("hex"),
username: 'admin',
hash: getHashedPassword('nevada98'),
roles: ['admin']
});
await createUserMongo({
id: crypto.randomBytes(16).toString("hex"),
username: 'capcabal',
hash: getHashedPassword('Kpitan123'),
roles: ['cabal'],
firstname: 'Carlos',
lastname: 'Cabal',
vid: 665507
});
}
f();
// require('./app/tasks/sync')();