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(),
routes.get ('/entities/colleges',
cacheSuccesses('24 hours'),
// PaginateMiddleware.middleware(),
FieldMiddleware.middleware({ FieldMiddleware.middleware({
invalidFields: generalInvalidFields invalidFields: generalInvalidFields,
}), }),
SortMiddleware.middleware({ default: "name" }), SortMiddleware.middleware({ default: "name" }),
(req, res, next) => {
if (req.query && req.query.country) {
if (!["ES", "MX"].includes(req.query.country)) {
delete req.query["country"];
}
}
next();
},
entityController.find({ entityController.find({
scopes: ['defaultScope', 'onlyColleges'], scopes: ["defaultScope", "onlyColleges"],
}), })
); );
routes.get ('/entities/partners', routes.get(
cacheSuccesses('24 hours'), "/entities/partners",
// PaginateMiddleware.middleware(), cacheSuccesses("1 hours"),
// PaginateMiddleware.middleware(),
FieldMiddleware.middleware({ FieldMiddleware.middleware({
invalidFields: generalInvalidFields invalidFields: generalInvalidFields,
}), }),
SortMiddleware.middleware({ default: "name" }), SortMiddleware.middleware({ default: "name" }),
(req, res, next) => {
if (req.query && req.query.country) {
if (!["ES", "MX"].includes(req.query.country)) {
delete req.query["country"];
}
}
next();
},
entityController.find({ entityController.find({
scopes: ['defaultScope', 'onlyPartners'], scopes: ["defaultScope", "onlyPartners"],
}), })
); );
/******************************************************************************************************** /********************************************************************************************************
* ADMINISTRACIÓN * ADMINISTRACIÓN
********************************************************************************************************* *********************************************************************************************************
*/ */
routes.get('/admin/entities', routes.get(
"/admin/entities",
isAdministratorUser, isAdministratorUser,
// FieldMiddleware.middleware({ // FieldMiddleware.middleware({
// invalidFields: generalInvalidFields // invalidFields: generalInvalidFields
// }), // }),
// PaginateMiddleware.middleware(), // PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "name" }), SortMiddleware.middleware({ default: "name" }),
entityController.find(), 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(
"/admin/entities/:id",
//isAdministratorUser, //isAdministratorUser,
entityController.findOne({ entityController.findOne({
scopes: ['withEntityTypes'], scopes: ["withEntityTypes"],
}), })
); );
routes.get('/admin/entitytypes/', routes.get(
"/admin/entitytypes/",
//isAdministratorUser, //isAdministratorUser,
entityTypeController.find(), entityTypeController.find()
); );
routes.put('/admin/entities/:id', routes.put(
"/admin/entities/:id",
isAdministratorUser, isAdministratorUser,
//SchemaValidator(eventValidation.ReservationInputType, true), //SchemaValidator(eventValidation.ReservationInputType, true),
entityController.update(), entityController.update()
); );
routes.post('/admin/entities', routes.post(
"/admin/entities",
isAdministratorUser, isAdministratorUser,
//SchemaValidator(eventValidation.ReservationInputType, true), //SchemaValidator(eventValidation.ReservationInputType, true),
entityController.create(), entityController.create()
); );
routes.post('/admin/entities/:id', routes.post(
"/admin/entities/:id",
isAdministratorUser, isAdministratorUser,
//SchemaValidator(eventValidation.ReservationInputType, true), //SchemaValidator(eventValidation.ReservationInputType, true),
entityController.delete(), 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",