se agregaron funciones de programa
This commit is contained in:
@@ -234,56 +234,28 @@ export class ProgramaService {
|
||||
correoOtroResponsable
|
||||
);
|
||||
|
||||
const user= await this.usuarioRepo.findOne({where:{idUsuario:idusuario}})
|
||||
let usuarioNuevo= await this.usuarioRepo.findOne({where:{idUsuario:idusuario}})
|
||||
|
||||
if (!user) throw new Error('No existe este usuario.');
|
||||
if (user.tipoUsuario.idTipoUsuario != 2) throw new Error('No es un usuario de tipo responsable');
|
||||
if (user.usuario === correoOtroResponsable) throw new Error('Son el mismo usuario.');
|
||||
if (!usuarioNuevo) throw new Error('No existe este usuario.');
|
||||
if (usuarioNuevo.tipoUsuario.idTipoUsuario != 2) throw new Error('No es un usuario de tipo responsable');
|
||||
if (usuarioNuevo.usuario === correoOtroResponsable) throw new Error('Son el mismo usuario.');
|
||||
|
||||
const nuevoResponsable=await this.usuarioRepo.findOne({where:{usuario:correoOtroResponsable}})
|
||||
let viejoResponsable=await this.usuarioRepo.findOne({where:{usuario:otroResponsable}})
|
||||
|
||||
if (!viejoResponsable) throw new Error('No existe este usuario.');
|
||||
|
||||
await this.programaRepo.update(
|
||||
{ usuario:viejoResponsable },
|
||||
{ usuario:usuarioNuevo }
|
||||
);
|
||||
|
||||
// Eliminar usuario antiguo
|
||||
await this.usuarioRepo.delete({idUsuario:viejoResponsable.idUsuario});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return {
|
||||
message: `Se eliminó correctamente al usuario ${correoOtroResponsable} y se reasignaron sus programas.`,
|
||||
}
|
||||
}
|
||||
|
||||
const reasignarProgramas = async (body) => {
|
||||
const idUsuario = validar.validarNumeroEntero(body.idUsuario, 'id usuario');
|
||||
const correoOtroResponsable = validar.validarCorreo(
|
||||
body.correoOtroResponsable
|
||||
);
|
||||
let otorResponsable = {};
|
||||
|
||||
return Usuario.findOne({
|
||||
where: { idUsuario },
|
||||
})
|
||||
.then((res) => {
|
||||
if (!res) throw new Error('No existe este usuario.');
|
||||
if (res.idTipoUsuario != 2)
|
||||
throw new Error('No es un usuario de tipo responsable');
|
||||
if (res.usuario === correoOtroResponsable)
|
||||
throw new Error('Son el mismo usuario.');
|
||||
return Usuario.findOne({ where: { usuario: correoOtroResponsable } });
|
||||
})
|
||||
.then((res) => {
|
||||
if (!res) throw new Error('No existe este usuario.');
|
||||
otorResponsable = res;
|
||||
return Programa.update(
|
||||
{ idUsuario },
|
||||
{
|
||||
where: { idUsuario: otorResponsable.idUsuario },
|
||||
}
|
||||
);
|
||||
})
|
||||
.then((res) =>
|
||||
Usuario.destroy({ where: { idUsuario: otorResponsable.idUsuario } })
|
||||
)
|
||||
.then((res) => ({
|
||||
message: `Se elimino correctamente al usuario ${correoOtroResponsable} y se reasigno correctamente sus programas.`,
|
||||
}));
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user