diff --git a/modules/events/marketing_list.service.js b/modules/events/marketing_list.service.js index 957f4f3..214f815 100644 --- a/modules/events/marketing_list.service.js +++ b/modules/events/marketing_list.service.js @@ -16,35 +16,45 @@ const marketing = require("../../helpers/sendinblue.helper"); marketingListOfInscription = dataInscription.event.marketingList; */ function _generateMarketingDTO(dataInscription) { + console.log('entro _generateMarketingDTO >>> ', dataInscription); + + let { event, inscription, user, reservation } = dataInscription; let inscriptionDTO = {}; - console.log('entro>>> ', dataInscription); - let inscription = dataInscription.inscription ? dataInscription.inscription : dataInscription; + //let inscription = dataInscription.inscription ? dataInscription.inscription : dataInscription; + + if (!event) { + throw new Error('Falta datos del evento en la inscripción (_generateMarketingDTO)'); + } + + if (!event.marketing_list) { + throw new Error('Falta rellenar la lista de Sendinblue en el evento (_generateMarketingDTO)'); + } console.log('inscripción>>> ', inscription); if (inscription) { inscriptionDTO.id = inscription.id; inscriptionDTO.source = inscription.source; - inscriptionDTO.event_name = inscription.event ? inscription.event.name : "N/A"; - inscriptionDTO.event_date = inscription.event ? inscription.event.init_date : "N/A"; - inscriptionDTO.event_marketing_list = inscription.event ? inscription.event.marketing_list : null; + inscriptionDTO.event_name = event.name ? event.name : "N/A"; + inscriptionDTO.event_date = event.init_date ? event.init_date : "N/A"; + inscriptionDTO.event_marketing_list = event ? event.marketing_list : null; inscriptionDTO.date_inscription = inscription.date; inscriptionDTO.code_ticket = inscription.code_ticket; inscriptionDTO.validated = inscription.validated; - inscriptionDTO.reservation_code = inscription.reservation ? inscription.reservation.reservation_code : null; - inscriptionDTO.color = inscription.reservation ? inscription.reservation.color : null; - inscriptionDTO.description = (inscription.reservation ? inscription.reservation.description : "Entrada").toUpperCase(); + inscriptionDTO.reservation_code = reservation ? reservation.reservation_code : null; + inscriptionDTO.color = reservation ? reservation.color : null; + inscriptionDTO.description = (reservation ? reservation.description : "Entrada").toUpperCase(); inscriptionDTO.qrConfig = null; inscriptionDTO.qrCode = null; - if (inscription.user) { + if (user) { //Era para mailchimp /// inscriptionDTO.marketing_memberId = inscription.marketing_memberId ? inscription.marketing_memberId : null; - inscriptionDTO.email = inscription.user.email; - inscriptionDTO.name = inscription.user.name; - inscriptionDTO.surname = inscription.user.surname; - inscriptionDTO.userId = inscription.user.id; - inscriptionDTO.entity = inscription.reservation && inscription.reservation.Entity ? inscription.reservation.Entity.name : (inscription.user.Entity ? inscription.user.Entity.name : inscription.user.entityId); + inscriptionDTO.email = user.email; + inscriptionDTO.name = user.name; + inscriptionDTO.surname = user.surname; + inscriptionDTO.userId = user.id; + inscriptionDTO.entity = reservation && reservation.Entity ? reservation.Entity.name : (user.Entity ? user.Entity.name : user.entityId); }; }