Роуты теперь в отдельной папке

This commit is contained in:
Данил 2024-10-02 22:35:49 +03:00
parent e7b232d189
commit 57c3920853
3 changed files with 77 additions and 67 deletions

View file

@ -20,74 +20,11 @@ const fastify = require('fastify')({
: false),
});
const rate = require('../shared/database/src/main.js');
const chart = require('../chart/chart.js');
const getChartRoute = require('./routes/getChart.js');
const getRateRoute = require('./routes/getRate.js');
fastify.get('/api/getRate/', async function (req, res) {
const query = req.query;
if (!query['from_currency'] || !query['conv_currency']) {
return res.status(400).send({
status: 400,
message: 'The from_currency and conv_currency fields are required',
});
}
if (query['date'])
return rate.getDay(
query['from_currency'],
query['conv_currency'],
query['date'],
);
else if (query['start_date'] && query['end_date'])
return rate.getPeriod(
query['from_currency'],
query['conv_currency'],
query['start_date'],
query['end_date'],
);
else
return res.status(400).send({
status: 400,
message:
'The date or period field is incorrect. ' +
"There must be fields 'date' or 'start_date' and 'end_date'. " +
'Read more in the documentation',
});
});
fastify.get('/api/getChart/', async function (req, res) {
const query = req.query;
if (!query['from_currency'] || !query['conv_currency']) {
return res.status(400).send({
status: 400,
message: 'The from_currency and conv_currency fields are required',
});
}
if (!query['start_date'] || !query['end_date'])
return res.status(400).send({
status: 400,
message: 'start_date and end_date is required',
});
const charts = await chart.gen_chart(
query['from_currency'],
query['conv_currency'],
query['start_date'],
query['end_date'],
);
if (config['currency']['chart']['save'])
chart.save_chart(
charts,
`${query['from_currency']} ${query['conv_currency']} ` +
`(${query['start_date']} - ${query['end_date']}).png`,
);
return res.status(200).send({
status: 200,
message: charts,
});
});
fastify.register(getChartRoute);
fastify.register(getRateRoute);
fastify.listen(
{