login de usuario mejorado
This commit is contained in:
+10
-51
@@ -77,57 +77,16 @@ export class AuthService {
|
||||
}
|
||||
|
||||
loginUsuario(usuario: string, password: string) {
|
||||
return this.usuarioService
|
||||
.findByUsuario(usuario, false, false, true)
|
||||
.then((usuario) => {
|
||||
this.validarLogin(usuario, password);
|
||||
|
||||
const instituciones: {
|
||||
id_institucion_usuario: number;
|
||||
institucionCarrera: {
|
||||
id_institucion_carrera: number;
|
||||
institucion: { id_institucion: number };
|
||||
carrera: { id_carrera: number };
|
||||
};
|
||||
}[] = [];
|
||||
|
||||
for (let i = 0; i < usuario.instituciones.length; i++)
|
||||
if (
|
||||
usuario.instituciones[i].activo &&
|
||||
!usuario.instituciones[i].multa
|
||||
)
|
||||
instituciones.push({
|
||||
id_institucion_usuario:
|
||||
usuario.instituciones[i].id_institucion_usuario,
|
||||
institucionCarrera: {
|
||||
id_institucion_carrera:
|
||||
usuario.instituciones[i].institucionCarrera
|
||||
.id_institucion_carrera,
|
||||
carrera: {
|
||||
id_carrera:
|
||||
usuario.instituciones[i].institucionCarrera.carrera
|
||||
.id_carrera,
|
||||
},
|
||||
institucion: {
|
||||
id_institucion:
|
||||
usuario.instituciones[i].institucionCarrera.institucion
|
||||
.id_institucion,
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
const payload: JwtPayload = {
|
||||
id_usuario: usuario.id_usuario,
|
||||
nombre: usuario.nombre,
|
||||
usuario: usuario.usuario,
|
||||
instituciones: instituciones,
|
||||
tipoUsuario: {
|
||||
id_tipo_usuario: usuario.tipoUsuario.id_tipo_usuario,
|
||||
},
|
||||
};
|
||||
|
||||
return { token: this.jwtService.sign(payload), usuario };
|
||||
});
|
||||
return this.usuarioService.informacionUsuario(usuario).then((data) => {
|
||||
if (
|
||||
!data.usuario ||
|
||||
!this.bcryptService.comparar(password, data.password)
|
||||
)
|
||||
throw new UnauthorizedException(
|
||||
'Usuario y/o password incorrectos, ingresa unas credenciales válidas.',
|
||||
);
|
||||
return { token: this.jwtService.sign(data.usuario) };
|
||||
});
|
||||
}
|
||||
|
||||
validarLogin(usuarioOperador: Usuario | Operador, password: string) {
|
||||
|
||||
Reference in New Issue
Block a user