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) {
|
function _addMemberToList(member, listId) {
|
||||||
const api = new SibApiV3Sdk.ContactsApi();
|
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) {
|
return new Promise(function (resolve, reject) {
|
||||||
_createMember(member)
|
_createMember(member)
|
||||||
.then(function (contact) {
|
.then(function (contact) {
|
||||||
@ -174,15 +201,20 @@ function addMember(listId, member) {
|
|||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
|
||||||
function deleteMember(listId, member) {
|
function deleteMemberFromList(listId, member) {
|
||||||
return _removeMemberFromList(member, listId);
|
return _removeMemberFromList(member, listId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function updateMemberByEmail(userEmail, userData) {
|
||||||
|
return _updateMember(userEmail, userData);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
sendEmailTransactional,
|
sendEmailTransactional,
|
||||||
getLists,
|
getLists,
|
||||||
addMember,
|
addMemberToList,
|
||||||
deleteMember,
|
deleteMemberFromList,
|
||||||
|
updateMemberByEmail
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ const crypto = require("crypto");
|
|||||||
const securityHelper = require("../../helpers/security.helper");
|
const securityHelper = require("../../helpers/security.helper");
|
||||||
const authService = require("./auth.service");
|
const authService = require("./auth.service");
|
||||||
const userService = require("./user.service");
|
const userService = require("./user.service");
|
||||||
|
const marketing = require("../../helpers/sendinblue.helper");
|
||||||
const eventInscriptionService = require("../events/events_inscriptions.service");
|
const eventInscriptionService = require("../events/events_inscriptions.service");
|
||||||
const { RequestContactImportNewList } = require("sib-api-v3-sdk");
|
const { RequestContactImportNewList } = require("sib-api-v3-sdk");
|
||||||
moment.locale("es");
|
moment.locale("es");
|
||||||
@ -167,23 +168,23 @@ async function register(req, res, next) {
|
|||||||
console.log("COMPROBAMOS SI EXISTE EN NUESTRO SISTEMA", values.phone);
|
console.log("COMPROBAMOS SI EXISTE EN NUESTRO SISTEMA", values.phone);
|
||||||
let newUser = await authService.extraMethods.findUserByPhone(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) {
|
if (!newUser) {
|
||||||
console.log("NO EXISTE");
|
console.log("NO EXISTE");
|
||||||
try {
|
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);
|
newUser = await authService.extraMethods.createUser(data);
|
||||||
console.log("CREAMOS EL USUARIO EN NUESTRO SISTEMA", newUser);
|
console.log("CREAMOS EL USUARIO EN NUESTRO SISTEMA", newUser);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@ -195,6 +196,27 @@ async function register(req, res, next) {
|
|||||||
res
|
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) {
|
if (newUser) {
|
||||||
@ -206,7 +228,6 @@ async function register(req, res, next) {
|
|||||||
newUser.id,
|
newUser.id,
|
||||||
appVersion
|
appVersion
|
||||||
);
|
);
|
||||||
console.log("PRUEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEBA>>>> ", result);
|
|
||||||
newUser.app_version = appVersion;
|
newUser.app_version = appVersion;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -490,6 +511,24 @@ async function getOrCreateUser(req, res, next) {
|
|||||||
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 = {
|
module.exports = {
|
||||||
login,
|
login,
|
||||||
loginWithPhone,
|
loginWithPhone,
|
||||||
@ -500,5 +539,6 @@ module.exports = {
|
|||||||
adminVerify,
|
adminVerify,
|
||||||
verify,
|
verify,
|
||||||
getOrCreateUser,
|
getOrCreateUser,
|
||||||
|
deleteUser,
|
||||||
MODULE_NAME,
|
MODULE_NAME,
|
||||||
};
|
};
|
||||||
|
|||||||
@ -52,6 +52,31 @@ const extraMethods = {
|
|||||||
{ where: { id: userId } }
|
{ 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 = {
|
module.exports = {
|
||||||
|
|||||||
@ -77,7 +77,7 @@ async function _addMember(inscriptionDTO) {
|
|||||||
resolve(inscriptionDTO);
|
resolve(inscriptionDTO);
|
||||||
} else {
|
} else {
|
||||||
marketing
|
marketing
|
||||||
.addMember(inscriptionDTO.event_marketing_list, inscriptionDTO)
|
.addMemberToList(inscriptionDTO.event_marketing_list, inscriptionDTO)
|
||||||
.then(function (result) {
|
.then(function (result) {
|
||||||
resolve(result.ID);
|
resolve(result.ID);
|
||||||
})
|
})
|
||||||
@ -99,7 +99,7 @@ async function _deleteMember(idLista, email) {
|
|||||||
if (!idLista || !email) {
|
if (!idLista || !email) {
|
||||||
resolve();
|
resolve();
|
||||||
} else {
|
} else {
|
||||||
resolve(marketing.deleteMember(idLista, email));
|
resolve(marketing.deleteMemberFromList(idLista, email));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user