This commit is contained in:
David Arranz 2019-08-30 12:03:56 +02:00
parent ff1d371897
commit 749f29dbb1
8 changed files with 71 additions and 33 deletions

View File

@ -64,7 +64,7 @@ function send(header, body) {
function sendTicket(header, values) {
const body = {
"TemplateID": 978886,
"TemplateID": 980158,
"TemplateLanguage": true,
"TemplateErrorDeliver": true,
"TemplateErrorReporting": {
@ -85,6 +85,27 @@ function sendTicket(header, values) {
return send(header, body);
};
function sendListaEspera(header, values) {
const body = {
"TemplateID": 980163,
"TemplateLanguage": true,
"TemplateErrorDeliver": true,
"TemplateErrorReporting": {
"Email": "info@rodax-software.com",
"Name": "Air traffic control"
},
"Variables": {
"tipoEntrada": values.tipoEntrada,
"eventName": values.eventName,
"dateInscription": values.dateInscription,
"color": values.color,
}
};
return send(header, body);
};
/**
* Enviar un email
* @header
@ -110,5 +131,7 @@ function sendMail(header, values) {
module.exports = {
sendMail,
sendTicket
sendTicket,
sendListaEspera,
};

View File

@ -113,15 +113,12 @@ function addMember(listId, member) {
});
};
/*
function deleteMember(listId, memberId) {
return new Promise(function (resolve, reject) {
logger.debug('deleteMember => ', '/lists/' + listId + '/members/' + memberId);
mailchimp.delete('/lists/' + listId + '/members/' + memberId)
.then(function (results) {
resolve(results);
})
.catch(function (error) {
if (error.status == 404) { // Miembro no existe
@ -132,10 +129,12 @@ function deleteMember(listId, memberId) {
})
});
}
*/
module.exports.getLists = getLists;
module.exports = {
getLists,
addMember,
deleteMember,
}
//module.exports.getMembers = getMembers;
module.exports.addMember = addMember;
//module.exports.deleteMember = deleteMember;

View File

@ -153,13 +153,20 @@ console.log(inscription);
console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>><Inscripcion borrada');
const EventOrReservationChangeId = ((inscription.reservationId) ? inscription.reservationId : ((inscription.overflowEventId) ? inscription.overflowEventId : inscription.eventId));
let NewConfirmed = 0;
console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>', inscription.reservationId);
if (inscription.reservationId)
let marketingListId = null;
console.log('Tengo reservation>>>>>>>>>>>>>>>>>>', inscription.reservationId);
if (inscription.reservationId){
NewConfirmed = await eventInscriptionService._getCountInscriptionsWithReservation(EventOrReservationChangeId)
else if (inscription.overflowEventId)
NewConfirmed = await eventInscriptionService._getCountInscriptionsWithOverflowEventId(EventOrReservationChangeId)
else
marketingListId = (await eventReservationService._getReservaById(EventOrReservationChangeId)).marketing_list;
}
else if (inscription.overflowEventId) {
NewConfirmed = await eventInscriptionService._getCountInscriptionsWithOverflowEventId(EventOrReservationChangeId);
marketingListId = (await eventService._getEvent(EventOrReservationChangeId)).marketing_list;
}
else if (inscription.eventId) {
NewConfirmed = await eventInscriptionService._getCountInscriptionsWithoutReservationAndOverflow(EventOrReservationChangeId);
marketingListId = (await eventService._getEvent(EventOrReservationChangeId)).marketing_list;
}
//Actualizamos aforo del evento o de la reserva
if (inscription.reservationId){
@ -172,8 +179,9 @@ console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>><Inscripcion borrada');
}
//FALTA
//_deleteMember();
//Eliminamos miembro de la lista de mailchimp a la que está asociado
await eventInscriptionService._deleteMember(marketingListId, inscription.marketing_memberId);
return handleResultResponse("Inscripción eliminada", null, params, res, httpStatus.DELETEOK);
}
else
@ -465,8 +473,10 @@ console.log(member);
}
console.log(headerMail, bodyMail);
// if ((member.validated))
emailHelper.sendTicket(headerMail, bodyMail);
if (member.validated)
emailHelper.sendTicket(headerMail, bodyMail)
else
emailHelper.sendListaEspera(headerMail, bodyMail);
return handleResultResponse(await dataInscription.inscription.toJSON(), null, params, res, httpStatus.CREATED)
},

View File

@ -90,19 +90,6 @@ const extraMethods = {
});
},
_deleteMember: () => {
return true;
var marketingList = (inscription.type == 'regular') ? inscription.conference.marketingList : inscription.level.partner.marketingList;
return new Promise(function (resolve, reject) {
if (!marketingList) {
resolve();
} else {
resolve(marketing.deleteMember(marketingList, inscription.marketingMemberId))
}
});
},
};
module.exports = generateService(models.Event, extraMethods);

View File

@ -188,6 +188,19 @@ const extraMethods = {
});
},
_deleteMember: (marketingListId, marketingMemberId) => {
console.log('Elimino miembro de la lista de milchimp>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<', marketingListId, marketingMemberId);
return new Promise(function (resolve, reject) {
if ((!marketingListId) || (!marketingMemberId)) {
resolve();
} else {
resolve(marketing.deleteMember(marketingListId, marketingMemberId))
}
});
},
_getInscriptionsExcel: (user, eventId, callback) => {
models.EventInscription.findAll({
where: {

View File

@ -13,6 +13,12 @@ const cdnHelper = require('../../helpers/cdn.helper');
const extraMethods = {
_getReservaById: (Id) => {
return models.EventReservation.findOne({
where: { id: Id },
})
},
_getReservaByCode: (eventId, code) => {
return models.EventReservation.findOne({
where: { reservation_code: code, eventId: eventId },