Modificación de un usuario
This commit is contained in:
parent
3e7d9ecbf1
commit
883770e80f
@ -93,6 +93,33 @@ function _createMember(member) {
|
||||
});
|
||||
};
|
||||
|
||||
function _updateMember(email, member) {
|
||||
const api = new SibApiV3Sdk.ContactsApi();
|
||||
|
||||
return new Promise(function (resolve, reject) {
|
||||
const updateContact = new SibApiV3Sdk.UpdateContact();
|
||||
|
||||
updateContact.attributes = {
|
||||
NOMBRE: member.name,
|
||||
APELLIDOS: member.surname,
|
||||
SMS: member.phone,
|
||||
EMAIL: member.email,
|
||||
ENTITYNAME: (member.entity) ? member.entity.name : '',
|
||||
}
|
||||
|
||||
api.updateContact(email, updateContact)
|
||||
.then(function (data) {
|
||||
console.debug('API called successfully. Returned data: ' + data);
|
||||
resolve(updateContact);
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.error(error);
|
||||
reject(error);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
function _addMemberToList(member, listId) {
|
||||
const api = new SibApiV3Sdk.ContactsApi();
|
||||
|
||||
@ -157,7 +184,7 @@ function getLists() {
|
||||
};
|
||||
|
||||
|
||||
function addMember(listId, member) {
|
||||
function addMemberToList(listId, member) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
_createMember(member)
|
||||
.then(function (contact) {
|
||||
@ -174,15 +201,20 @@ function addMember(listId, member) {
|
||||
})
|
||||
};
|
||||
|
||||
function deleteMember(listId, member) {
|
||||
function deleteMemberFromList(listId, member) {
|
||||
return _removeMemberFromList(member, listId);
|
||||
}
|
||||
|
||||
function updateMemberByEmail(userEmail, userData) {
|
||||
return _updateMember(userEmail, userData);
|
||||
}
|
||||
|
||||
|
||||
module.exports = {
|
||||
sendEmailTransactional,
|
||||
getLists,
|
||||
addMember,
|
||||
deleteMember,
|
||||
addMemberToList,
|
||||
deleteMemberFromList,
|
||||
updateMemberByEmail
|
||||
}
|
||||
|
||||
|
||||
@ -8,6 +8,7 @@ const crypto = require("crypto");
|
||||
const securityHelper = require("../../helpers/security.helper");
|
||||
const authService = require("./auth.service");
|
||||
const userService = require("./user.service");
|
||||
const marketing = require("../../helpers/sendinblue.helper");
|
||||
const eventInscriptionService = require("../events/events_inscriptions.service");
|
||||
const { RequestContactImportNewList } = require("sib-api-v3-sdk");
|
||||
moment.locale("es");
|
||||
@ -167,23 +168,23 @@ async function register(req, res, next) {
|
||||
console.log("COMPROBAMOS SI EXISTE EN NUESTRO SISTEMA", values.phone);
|
||||
let newUser = await authService.extraMethods.findUserByPhone(values.phone);
|
||||
|
||||
const data = {
|
||||
//refresh_token: tokens.refreshToken,
|
||||
phone: req.body.phone,
|
||||
fbuid: req.body.fbuid,
|
||||
email: req.body.email,
|
||||
name: req.body.name,
|
||||
surname: req.body.surname,
|
||||
entityId: req.body.entityid,
|
||||
accessibility: req.body.accessibility,
|
||||
profile: req.body.profile,
|
||||
app_version: appVersion,
|
||||
lastlogin: moment().utc(),
|
||||
};
|
||||
|
||||
if (!newUser) {
|
||||
console.log("NO EXISTE");
|
||||
try {
|
||||
const data = {
|
||||
//refresh_token: tokens.refreshToken,
|
||||
phone: req.body.phone,
|
||||
fbuid: req.body.fbuid,
|
||||
email: req.body.email,
|
||||
name: req.body.name,
|
||||
surname: req.body.surname,
|
||||
entityId: req.body.entityid,
|
||||
accessibility: req.body.accessibility,
|
||||
profile: req.body.profile,
|
||||
app_version: appVersion,
|
||||
lastlogin: moment().utc(),
|
||||
};
|
||||
|
||||
newUser = await authService.extraMethods.createUser(data);
|
||||
console.log("CREAMOS EL USUARIO EN NUESTRO SISTEMA", newUser);
|
||||
} catch (error) {
|
||||
@ -195,6 +196,27 @@ async function register(req, res, next) {
|
||||
res
|
||||
);
|
||||
}
|
||||
} else {
|
||||
console.log("EXISTE");
|
||||
try {
|
||||
const oldUserData = newUser;
|
||||
|
||||
newUser = await authService.extraMethods.updateUser(newUser.id, data);
|
||||
console.log(newUser);
|
||||
marketing.updateMemberByEmail(oldUserData.email, newUser);
|
||||
|
||||
console.log("MODIFICAMOS EL USUARIO EN NUESTRO SISTEMA", newUser);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
return controllerHelper.handleErrorResponse(
|
||||
MODULE_NAME,
|
||||
register.name,
|
||||
error,
|
||||
res
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (newUser) {
|
||||
@ -206,7 +228,6 @@ async function register(req, res, next) {
|
||||
newUser.id,
|
||||
appVersion
|
||||
);
|
||||
console.log("PRUEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEBA>>>> ", result);
|
||||
newUser.app_version = appVersion;
|
||||
}
|
||||
}
|
||||
@ -490,6 +511,24 @@ async function getOrCreateUser(req, res, next) {
|
||||
next();
|
||||
}
|
||||
|
||||
async function deleteUser(req, res, next) {
|
||||
const params = controllerHelper.extractParamsFromRequest(req, res, {});
|
||||
let dataUser = {
|
||||
id: req.body ? req.body.id : null,
|
||||
phone: req.body ? req.body.phone : null, //((req.body.phone != '+34') ? req.body.phone : null), lo quitamos de momento por la de movistar
|
||||
email: req.body ? req.body.email : null,
|
||||
};
|
||||
|
||||
const resultCount = await authService.deleteUser(dataUser.id, dataUser.email, dataUser.phone);
|
||||
if (resultCount < 1) {
|
||||
// No se ha encontrado
|
||||
return controllerHelper.handleResultResponse(
|
||||
"No se ha podido encontrar el usuario", null, params, res, httpStatus.NOT_FOUND);
|
||||
}
|
||||
|
||||
return controllerHelper.handleResultResponse(resultCount, resultCount, params, res, httpStatus.OK);
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
login,
|
||||
loginWithPhone,
|
||||
@ -500,5 +539,6 @@ module.exports = {
|
||||
adminVerify,
|
||||
verify,
|
||||
getOrCreateUser,
|
||||
deleteUser,
|
||||
MODULE_NAME,
|
||||
};
|
||||
|
||||
@ -52,6 +52,31 @@ const extraMethods = {
|
||||
{ where: { id: userId } }
|
||||
);
|
||||
},
|
||||
|
||||
|
||||
updateUser: async (userId, params, context) => {
|
||||
let result = await models.User.update(params, {
|
||||
where: { id: userId }
|
||||
});
|
||||
|
||||
return await extraMethods.findUser({
|
||||
id: userId
|
||||
}
|
||||
);
|
||||
|
||||
},
|
||||
|
||||
|
||||
deleteUser: async (userId, userEmail, userPhone) => {
|
||||
return await models.User.destroy({
|
||||
where: {
|
||||
id: userId,
|
||||
email: userEmail,
|
||||
userPhone: userPhone,
|
||||
entityLevel: 1,
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
|
||||
@ -77,7 +77,7 @@ async function _addMember(inscriptionDTO) {
|
||||
resolve(inscriptionDTO);
|
||||
} else {
|
||||
marketing
|
||||
.addMember(inscriptionDTO.event_marketing_list, inscriptionDTO)
|
||||
.addMemberToList(inscriptionDTO.event_marketing_list, inscriptionDTO)
|
||||
.then(function (result) {
|
||||
resolve(result.ID);
|
||||
})
|
||||
@ -99,7 +99,7 @@ async function _deleteMember(idLista, email) {
|
||||
if (!idLista || !email) {
|
||||
resolve();
|
||||
} else {
|
||||
resolve(marketing.deleteMember(idLista, email));
|
||||
resolve(marketing.deleteMemberFromList(idLista, email));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user