2019-07-09 08:51:00 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
2019-07-14 16:44:59 +00:00
|
|
|
const httpStatus = require('http-status');
|
2019-07-09 08:51:00 +00:00
|
|
|
const generateControllers = require('../../core/controllers');
|
|
|
|
|
const eventService = require('./event.service');
|
2019-07-09 15:37:56 +00:00
|
|
|
const { extractParamsFromRequest, handleErrorResponse, handleResultResponse } = require('../../helpers/controller.helper');
|
2019-07-09 08:51:00 +00:00
|
|
|
|
2019-07-16 18:18:28 +00:00
|
|
|
//PRUEBA
|
|
|
|
|
const SchemaValidator = require('../../middlewares/schemaValidator');
|
|
|
|
|
const eventValidation = require('./event.validations');
|
|
|
|
|
const Joi = require('joi');
|
2019-07-09 08:51:00 +00:00
|
|
|
|
|
|
|
|
// Module Name
|
|
|
|
|
const MODULE_NAME = '[event.controller]';
|
|
|
|
|
|
|
|
|
|
const controllerOptions = { MODULE_NAME };
|
2019-07-09 15:37:56 +00:00
|
|
|
const extraControllers = {
|
|
|
|
|
|
2019-07-17 12:07:35 +00:00
|
|
|
findNext: (config) => {
|
|
|
|
|
config = config || {
|
|
|
|
|
scopes: [],
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return async function (req, res, next) {
|
|
|
|
|
const params = extractParamsFromRequest(req, res, { includeAll: false });
|
|
|
|
|
try {
|
|
|
|
|
const result = await eventService.fetch(params, {
|
|
|
|
|
user: req.user,
|
|
|
|
|
scopes: config.scopes,
|
|
|
|
|
lapse: 'next'
|
|
|
|
|
});
|
|
|
|
|
console.log('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa');
|
|
|
|
|
// Joi validation options
|
|
|
|
|
const _validationOptions = {
|
|
|
|
|
abortEarly: false, // abort after the last validation error
|
|
|
|
|
allowUnknown: true, // allow unknown keys that will be ignored
|
|
|
|
|
stripUnknown: true // remove unknown keys from the validated data
|
|
|
|
|
};
|
|
|
|
|
console.log('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa222');
|
|
|
|
|
const data = Joi.validate(result.dataValues, eventValidation.EventsListOutputType, _validationOptions);
|
|
|
|
|
console.log('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa333');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
console.log(data);
|
|
|
|
|
return handleResultResponse(result, result.count, params, res);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
handleErrorResponse(MODULE_NAME, 'findNext', error, res);
|
|
|
|
|
}
|
2019-07-10 17:26:22 +00:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
findCurrent: async (req, res, next) => {
|
|
|
|
|
const params = extractParamsFromRequest(req, res, {});
|
|
|
|
|
try {
|
|
|
|
|
const result = await eventService.fetch(params, { user: req.user, lapse: 'current' });
|
|
|
|
|
return handleResultResponse(result, result.count, params, res);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
handleErrorResponse(MODULE_NAME, 'findNext', error, res);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
findPass: async (req, res, next) => {
|
|
|
|
|
const params = extractParamsFromRequest(req, res, {});
|
|
|
|
|
try {
|
|
|
|
|
const result = await eventService.fetch(params, { user: req.user, lapse: 'pass' });
|
2019-07-09 15:37:56 +00:00
|
|
|
return handleResultResponse(result, result.count, params, res);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
handleErrorResponse(MODULE_NAME, 'findNext', error, res);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
2019-07-12 09:48:04 +00:00
|
|
|
createInscription: async(req, res, next) => {
|
|
|
|
|
const params = extractParamsFromRequest(req, res, {});
|
|
|
|
|
console.log('crear inscripcionnnnnnnnnnnnnnnnnnnnnnnnnnnn');
|
|
|
|
|
|
2019-07-14 16:44:59 +00:00
|
|
|
return handleResultResponse(result, result.count, params, res);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
2019-07-17 15:34:54 +00:00
|
|
|
findOne2: async (req, res, next) => {
|
2019-07-14 16:44:59 +00:00
|
|
|
const params = extractParamsFromRequest(req, res, { includeAll: false });
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
const result = await eventService.fetchOne(params, { user: req.user });
|
|
|
|
|
return handleResultResponse(result, null, params, res, (result === null) ? httpStatus.NOT_FOUND : httpStatus.OK);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
handleErrorResponse(MODULE_NAME, 'findOne', error, res)
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
2019-07-09 15:37:56 +00:00
|
|
|
|
|
|
|
|
};
|
2019-07-09 08:51:00 +00:00
|
|
|
|
|
|
|
|
module.exports = generateControllers(eventService, extraControllers, controllerOptions);
|
|
|
|
|
|