From 421827450c6c2550d97b6889d9312f79567ba02d Mon Sep 17 00:00:00 2001 From: david Date: Tue, 16 Jul 2019 18:27:54 +0200 Subject: [PATCH] a --- modules/events/event.model.js | 37 +++++++++++++++++-- modules/events/events_inscripcions.service.js | 10 +++++ 2 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 modules/events/events_inscripcions.service.js diff --git a/modules/events/event.model.js b/modules/events/event.model.js index 84dfea3..944764e 100644 --- a/modules/events/event.model.js +++ b/modules/events/event.model.js @@ -1,4 +1,6 @@ 'use strict'; +const moment = require('moment'); +const Sequelize = require('sequelize'); module.exports = function (sequelize, DataTypes) { const Event = sequelize.define('Event', { @@ -54,6 +56,7 @@ module.exports = function (sequelize, DataTypes) { overflow_eventId: { type: DataTypes.UUID, foreignKey: true, + require: false, }, state: { type: DataTypes.STRING, @@ -89,12 +92,38 @@ module.exports = function (sequelize, DataTypes) { tableName: 'events', freezeTableName: true, timestamps: true, - }); + defaultScope: { +//Se pude poner algo en función del usuario????? + }, + + scopes: { + next: { + where: { + date: { + [Sequelize.Op.gte]: moment().add(1, 'days').startOf('day').utc() + } + }, + }, + current: { + where: { + date: { + [Sequelize.Op.gte]: moment().startOf('day').utc(), + [Sequelize.Op.lt]: moment().add(1, 'days').startOf('day').utc(), + } + } + + }, + } + }); + + + Event.associate = function (models) { - Event.OverflowEvent = Event.belongsTo(models.Event, { - as: 'overflowEvent', - foreignKey: 'overflow_eventId' }); +// Event.OverflowEvent = Event.belongsTo(models.Event, { +// as: 'overflowEvent', +// foreignKey: 'overflow_eventId', +// required: false }); Event.Type = Event.belongsTo(models.EventType, { foreignKey: 'typeId', as: "type" }); Event.UserCreate = Event.belongsTo(models.User, { foreignKey: 'userId', as: "user" }); Event.Venue = Event.belongsTo(models.Venue, { foreignKey: 'venueId', as: "venue" }); diff --git a/modules/events/events_inscripcions.service.js b/modules/events/events_inscripcions.service.js new file mode 100644 index 0000000..bf4bb62 --- /dev/null +++ b/modules/events/events_inscripcions.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.EventInscription, extraMethods); \ No newline at end of file