app2-api/modules/entities/entity.routes.js

79 lines
2.2 KiB
JavaScript
Raw Normal View History

2019-07-08 11:11:40 +00:00
const routes = require('express').Router();
2019-09-03 08:40:10 +00:00
const { cacheSuccesses } = require('../../middlewares/cache');
2019-07-08 11:11:40 +00:00
const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator');
const SchemaValidator = require('../../middlewares/schemaValidator');
2019-07-10 17:26:22 +00:00
const PaginateMiddleware = require('../../middlewares/paginate');
const FieldMiddleware = require('../../middlewares/fields');
const SortMiddleware = require('../../middlewares/sort');
2019-07-08 11:11:40 +00:00
//const entityValidation = require('./entity.validations');
const entityController = require('./entity.controller');
2019-10-21 16:17:18 +00:00
const entityTypeController = require('./entity_type.controller');
2019-07-08 11:11:40 +00:00
2019-07-19 10:17:52 +00:00
const generalInvalidFields = [
'state',, 'createdAt', 'updatedAt'
];
routes.get('/entities',
2019-07-21 14:15:22 +00:00
isLoggedUser,
2019-09-03 08:40:10 +00:00
cacheSuccesses('24 hours'),
2019-07-19 10:17:52 +00:00
FieldMiddleware.middleware({
invalidFields: generalInvalidFields
}),
2019-10-21 09:25:37 +00:00
// PaginateMiddleware.middleware(),
2019-07-19 10:17:52 +00:00
SortMiddleware.middleware({ default: "name" }),
entityController.find({
scopes: ['defaultScope'],
}),
);
2019-07-10 17:26:22 +00:00
routes.get ('/entities/colleges',
2019-09-03 08:40:10 +00:00
cacheSuccesses('24 hours'),
2019-07-11 18:05:06 +00:00
// PaginateMiddleware.middleware(),
2019-07-10 17:26:22 +00:00
FieldMiddleware.middleware({
2019-07-19 10:17:52 +00:00
invalidFields: generalInvalidFields
2019-07-10 17:26:22 +00:00
}),
SortMiddleware.middleware({ default: "name" }),
2019-07-19 10:17:52 +00:00
entityController.find({
scopes: ['defaultScope', 'onlyColleges'],
}),
2019-07-10 17:26:22 +00:00
);
routes.get ('/entities/partners',
2019-09-03 08:40:10 +00:00
cacheSuccesses('24 hours'),
2019-07-11 18:05:06 +00:00
// PaginateMiddleware.middleware(),
2019-07-11 10:05:31 +00:00
FieldMiddleware.middleware({
2019-07-19 10:17:52 +00:00
invalidFields: generalInvalidFields
}),
SortMiddleware.middleware({ default: "name" }),
entityController.find({
scopes: ['defaultScope', 'onlyPartners'],
2019-07-11 10:05:31 +00:00
}),
2019-07-10 17:26:22 +00:00
);
2019-07-08 11:11:40 +00:00
2019-08-15 18:09:50 +00:00
/********************************************************************************************************
* ADMINISTRACIÓN
*********************************************************************************************************
*/
routes.get('/admin/entities/partners/:id',
//isAdministratorUser,
entityController.findOne(),
);
2019-07-08 11:11:40 +00:00
2019-10-21 15:05:09 +00:00
routes.get('/admin/entities/:id',
//isAdministratorUser,
entityController.findOne(),
);
2019-10-21 16:17:18 +00:00
routes.get('/admin/entitytypes/',
//isAdministratorUser,
entityTypeController.find(),
);
2019-07-08 11:11:40 +00:00
module.exports = routes;