From b69dd68dffbc86e730d55c7873fe403d4fb8d2c9 Mon Sep 17 00:00:00 2001 From: david Date: Tue, 9 Jul 2019 10:51:00 +0200 Subject: [PATCH] events route --- core/controllers/index.js | 1 - core/passport.js | 1 + modules/auth/auth.controller.js | 4 +--- modules/auth/auth.validations.js | 7 ++----- modules/auth/user.model.js | 4 ---- modules/events/event.controller.js | 14 ++++++++++++++ modules/events/event.model.js | 4 +++- modules/events/event.routes.js | 21 +++++++++++++++++++++ modules/events/event.service.js | 10 ++++++++++ modules/events/events_reservations.model.js | 4 +++- 10 files changed, 55 insertions(+), 15 deletions(-) create mode 100644 modules/events/event.controller.js create mode 100644 modules/events/event.routes.js create mode 100644 modules/events/event.service.js diff --git a/core/controllers/index.js b/core/controllers/index.js index 0a1888e..02367d3 100644 --- a/core/controllers/index.js +++ b/core/controllers/index.js @@ -26,7 +26,6 @@ const generateControllers = (service, extraControllers = {}, options = {}) => { const defaultControllers = { find: async (req, res, next) => { const params = extractParamsFromRequest(req, res, _options.params.find); - try { const result = await service.fetchAll(params, buildContext(req, res)); return handleResultResponse(result.rows, result.count, params, res); diff --git a/core/passport.js b/core/passport.js index f50abd3..19ba7f1 100644 --- a/core/passport.js +++ b/core/passport.js @@ -69,6 +69,7 @@ const localPhoneOptions = { passport.use('local-phone', new LocalStrategy(localPhoneOptions, async (phone, fbuid, done) => { try { +console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><'); //Comprobamos si el usuario ya existe en nuestro sistema const user = await authService.extraMethods.findUser({ phone, fbuid }); diff --git a/modules/auth/auth.controller.js b/modules/auth/auth.controller.js index 03ad82c..5b13c71 100644 --- a/modules/auth/auth.controller.js +++ b/modules/auth/auth.controller.js @@ -59,9 +59,7 @@ console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>regsitro'); name: req.body.name, surname: req.body.surname, entityid: req.body.entityid, - entityname: req.body.entityname, - profile_picture: req.body.profile_picture, - accessibility: req.body.accessibility, + accessibility: req.body.accessibility }; console.log(data); res.json({ diff --git a/modules/auth/auth.validations.js b/modules/auth/auth.validations.js index b8bca81..66b8860 100644 --- a/modules/auth/auth.validations.js +++ b/modules/auth/auth.validations.js @@ -10,11 +10,8 @@ const RegisterInputType = Joi.object().keys({ email: Joi.string().required(), fbuid: Joi.string().required(), name: Joi.string().required(), - surname: Joi.string(), - entityid: Joi.string(), - entityname: Joi.string(), - profile_picture: Joi.string(), - accessibility: Joi.string(), + surname: Joi.string(), + entityid: Joi.string() }); const LoginOutputType = Joi.object().keys({ diff --git a/modules/auth/user.model.js b/modules/auth/user.model.js index bedd8bd..6051aa0 100644 --- a/modules/auth/user.model.js +++ b/modules/auth/user.model.js @@ -33,10 +33,6 @@ module.exports = function (sequelize, DataTypes) { surname: { type: DataTypes.STRING, }, - entityId: { - type: DataTypes.UUID, - foreignKey : true, - }, profile_picture: { type: DataTypes.STRING, defaultValue: 'media/defaultProfile.png', diff --git a/modules/events/event.controller.js b/modules/events/event.controller.js new file mode 100644 index 0000000..0f507ea --- /dev/null +++ b/modules/events/event.controller.js @@ -0,0 +1,14 @@ +'use strict'; + +const generateControllers = require('../../core/controllers'); +const eventService = require('./event.service'); + + +// Module Name +const MODULE_NAME = '[event.controller]'; + +const controllerOptions = { MODULE_NAME }; +const extraControllers = {}; + +module.exports = generateControllers(eventService, extraControllers, controllerOptions); + diff --git a/modules/events/event.model.js b/modules/events/event.model.js index acf62e6..8fb7568 100644 --- a/modules/events/event.model.js +++ b/modules/events/event.model.js @@ -87,7 +87,9 @@ module.exports = function (sequelize, DataTypes) { }); Event.associate = function (models) { - Event.OverflowEvent = Event.belongsTo(models.Event, { foreignKey: 'overflow_eventId' }); + Event.OverflowEvent = Event.belongsTo(models.Event, { + as: 'EventTo', + foreignKey: 'overflow_eventId' }); Event.EventType = Event.belongsTo(models.EventType, { foreignKey: 'typeId' }); Event.UserCreate = Event.belongsTo(models.User, { foreignKey: 'userId' }); Event.Venue = Event.belongsTo(models.Venue, { foreignKey: 'venueId' }); diff --git a/modules/events/event.routes.js b/modules/events/event.routes.js new file mode 100644 index 0000000..43bb718 --- /dev/null +++ b/modules/events/event.routes.js @@ -0,0 +1,21 @@ +const routes = require('express').Router(); + +const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator'); +const SchemaValidator = require('../../middlewares/schemaValidator'); + +/*const PaginateMiddleware = require('../../middlewares/paginate'); +const FieldMiddleware = require('../../middlewares/fields');*/ +//const SortMiddleware = require('../../middlewares/sort'); + +//const entityValidation = require('./entity.validations'); +const eventController = require('./event.controller'); + +routes.get('/events', eventController.find); +//routes.get('/venues', isLoggedUser, SortMiddleware.middleware({ default: "name" }), venueController.find); +//routes.get('/venues/:id', isLoggedUser, venueController.findOne); + +//routes.post('/entity/', SchemaValidator(VenueValidation.VenueInputType, true), venueController.create); +//routes.put('/venues/:id', isAdministratorUser, venueController.update); +//routes.delete('/venues/:id', isAdministratorUser, venueController.delete); + +module.exports = routes; \ No newline at end of file diff --git a/modules/events/event.service.js b/modules/events/event.service.js new file mode 100644 index 0000000..1cdcb49 --- /dev/null +++ b/modules/events/event.service.js @@ -0,0 +1,10 @@ +/* global Venue */ +'use strict'; + +const _ = require('lodash'); +const { generateService, parseParamsToFindOptions } = require('../../helpers/service.helper'); +const models = require('../../core/models'); + +const extraMethods = {}; + +module.exports = generateService(models.Event, extraMethods); \ No newline at end of file diff --git a/modules/events/events_reservations.model.js b/modules/events/events_reservations.model.js index bee7a32..412b976 100644 --- a/modules/events/events_reservations.model.js +++ b/modules/events/events_reservations.model.js @@ -66,7 +66,9 @@ module.exports = function (sequelize, DataTypes) { }); EventReservation.associate = function (models) { - EventReservation.OverflowEventReservation = EventReservation.belongsTo(models.EventReservation, { foreignKey: 'overflow_event_reservationId' }); + EventReservation.OverflowEventReservation = EventReservation.belongsTo(models.EventReservation, { + as: 'EventToEvent', + foreignKey: 'overflow_event_reservationId' }); EventReservation.Entity = EventReservation.belongsTo(models.Entity, { foreignKey: 'entityId' }); EventReservation.Event = EventReservation.belongsTo(models.Event, { foreignKey: 'eventId' }); EventReservation.UserCreate = EventReservation.belongsTo(models.User, { foreignKey: 'userId' });