Co-authored-by: Patrick Mueller <patrick@mueller-patrick.tech> Reviewed-on: #16 Co-authored-by: Patrick Müller <patrick@plutodev.de> Co-committed-by: Patrick Müller <patrick@plutodev.de>
This commit was merged in pull request #16.
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
import express, {Request, Response} from 'express';
|
||||
import * as RatingService from './routeRatings.service';
|
||||
import {Guid} from 'guid-typescript';
|
||||
import logger from '../../../middleware/logger';
|
||||
|
||||
export const routeRatingsRouter = express.Router();
|
||||
|
||||
routeRatingsRouter.get('/by/route/:id', async (req: Request, res: Response) => {
|
||||
try {
|
||||
let route_id = req.params.id;
|
||||
|
||||
let rating = await RatingService.getStarsForRoute(route_id);
|
||||
|
||||
res.status(200).send({'rating': rating});
|
||||
} catch (e) {
|
||||
let errorGuid = Guid.create().toString();
|
||||
logger.error('Error handling a request: ' + e.message, {reference: errorGuid});
|
||||
res.status(500).send({
|
||||
'status': 'PROCESSING_ERROR',
|
||||
'message': 'Internal Server Error. Try again later.',
|
||||
'reference': errorGuid
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
routeRatingsRouter.post('/', async (req: Request, res: Response) => {
|
||||
try {
|
||||
let route_id = req.query.route_id as string;
|
||||
let stars = Number(req.query.stars);
|
||||
let captcha_token = req.query.captcha_token as string;
|
||||
|
||||
if (!route_id || isNaN(stars) || !captcha_token) {
|
||||
console.log(route_id, stars, captcha_token);
|
||||
res.status(400).send({'message': 'Missing parameters'});
|
||||
return;
|
||||
}
|
||||
|
||||
// Verify captcha
|
||||
/*if (!await verifyCaptcha(captcha_token)) {
|
||||
res.status(403).send({'message': 'Invalid Captcha. Please try again.'});
|
||||
return;
|
||||
}*/
|
||||
|
||||
let result = await RatingService.createRating(route_id, stars);
|
||||
|
||||
if (result) {
|
||||
res.status(201).send({'rating_id': result});
|
||||
} else {
|
||||
res.status(500).send({});
|
||||
}
|
||||
} catch (e) {
|
||||
let errorGuid = Guid.create().toString();
|
||||
logger.error('Error handling a request: ' + e.message, {reference: errorGuid});
|
||||
res.status(500).send({
|
||||
'status': 'PROCESSING_ERROR',
|
||||
'message': 'Internal Server Error. Try again later.',
|
||||
'reference': errorGuid
|
||||
});
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user