No filtrar entidades cuando el país no es España ni México

This commit is contained in:
David Arranz 2024-10-30 10:44:32 +01:00
parent 4bc2298fa8
commit 95b8359400
2 changed files with 88 additions and 71 deletions

View File

@ -1,98 +1,115 @@
const routes = require('express').Router(); const routes = require("express").Router();
const { cacheSuccesses } = require('../../middlewares/cache'); const { cacheSuccesses } = require("../../middlewares/cache");
const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator'); const { isAdministratorUser, isLoggedUser } = require("../../middlewares/accessValidator");
const SchemaValidator = require('../../middlewares/schemaValidator'); const SchemaValidator = require("../../middlewares/schemaValidator");
const PaginateMiddleware = require('../../middlewares/paginate'); const PaginateMiddleware = require("../../middlewares/paginate");
const FieldMiddleware = require('../../middlewares/fields'); const FieldMiddleware = require("../../middlewares/fields");
const SortMiddleware = require('../../middlewares/sort'); const SortMiddleware = require("../../middlewares/sort");
//const entityValidation = require('./entity.validations'); //const entityValidation = require('./entity.validations');
const entityController = require('./entity.controller'); const entityController = require("./entity.controller");
const entityTypeController = require('./entity_type.controller'); const entityTypeController = require("./entity_type.controller");
const generalInvalidFields = ["state", "contact_person", "contact_email", "createdAt", "updatedAt"];
const generalInvalidFields = [ routes.get(
'state', 'contact_person', 'contact_email', 'createdAt', 'updatedAt' "/entities/colleges",
]; cacheSuccesses("1 hours"),
// PaginateMiddleware.middleware(),
FieldMiddleware.middleware({
routes.get ('/entities/colleges', invalidFields: generalInvalidFields,
cacheSuccesses('24 hours'), }),
// PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "name" }),
FieldMiddleware.middleware({ (req, res, next) => {
invalidFields: generalInvalidFields if (req.query && req.query.country) {
}), if (!["ES", "MX"].includes(req.query.country)) {
SortMiddleware.middleware({ default: "name" }), delete req.query["country"];
entityController.find({ }
scopes: ['defaultScope', 'onlyColleges'], }
}), next();
},
entityController.find({
scopes: ["defaultScope", "onlyColleges"],
})
); );
routes.get ('/entities/partners', routes.get(
cacheSuccesses('24 hours'), "/entities/partners",
// PaginateMiddleware.middleware(), cacheSuccesses("1 hours"),
FieldMiddleware.middleware({ // PaginateMiddleware.middleware(),
invalidFields: generalInvalidFields FieldMiddleware.middleware({
}), invalidFields: generalInvalidFields,
SortMiddleware.middleware({ default: "name" }), }),
entityController.find({ SortMiddleware.middleware({ default: "name" }),
scopes: ['defaultScope', 'onlyPartners'], (req, res, next) => {
}), if (req.query && req.query.country) {
if (!["ES", "MX"].includes(req.query.country)) {
delete req.query["country"];
}
}
next();
},
entityController.find({
scopes: ["defaultScope", "onlyPartners"],
})
); );
/******************************************************************************************************** /********************************************************************************************************
* ADMINISTRACIÓN * ADMINISTRACIÓN
********************************************************************************************************* *********************************************************************************************************
*/ */
routes.get('/admin/entities', routes.get(
isAdministratorUser, "/admin/entities",
// FieldMiddleware.middleware({ isAdministratorUser,
// invalidFields: generalInvalidFields // FieldMiddleware.middleware({
// }), // invalidFields: generalInvalidFields
// PaginateMiddleware.middleware(), // }),
SortMiddleware.middleware({ default: "name" }), // PaginateMiddleware.middleware(),
entityController.find(), SortMiddleware.middleware({ default: "name" }),
entityController.find()
); );
routes.get(
"/admin/entities/partners/:id",
routes.get('/admin/entities/partners/:id', //isAdministratorUser,
//isAdministratorUser, entityController.findOne()
entityController.findOne(),
); );
routes.get('/admin/entities/:id', routes.get(
//isAdministratorUser, "/admin/entities/:id",
entityController.findOne({ //isAdministratorUser,
scopes: ['withEntityTypes'], entityController.findOne({
}), scopes: ["withEntityTypes"],
})
); );
routes.get('/admin/entitytypes/', routes.get(
//isAdministratorUser, "/admin/entitytypes/",
entityTypeController.find(), //isAdministratorUser,
entityTypeController.find()
); );
routes.put('/admin/entities/:id', routes.put(
isAdministratorUser, "/admin/entities/:id",
//SchemaValidator(eventValidation.ReservationInputType, true), isAdministratorUser,
entityController.update(), //SchemaValidator(eventValidation.ReservationInputType, true),
entityController.update()
); );
routes.post('/admin/entities', routes.post(
isAdministratorUser, "/admin/entities",
//SchemaValidator(eventValidation.ReservationInputType, true), isAdministratorUser,
entityController.create(), //SchemaValidator(eventValidation.ReservationInputType, true),
entityController.create()
); );
routes.post('/admin/entities/:id', routes.post(
isAdministratorUser, "/admin/entities/:id",
//SchemaValidator(eventValidation.ReservationInputType, true), isAdministratorUser,
entityController.delete(), //SchemaValidator(eventValidation.ReservationInputType, true),
entityController.delete()
); );
module.exports = routes; module.exports = routes;

View File

@ -1,6 +1,6 @@
{ {
"name": "lqdvi-api3", "name": "lqdvi-api3",
"version": "1.4.4", "version": "1.4.5",
"description": "", "description": "",
"author": "Rodax Software", "author": "Rodax Software",
"license": "ISC", "license": "ISC",