Se corigieron errores

This commit is contained in:
2025-10-24 14:37:59 -06:00
parent 0cdd4e178f
commit f591426707
7 changed files with 135 additions and 136 deletions
+49 -51
View File
@@ -1,4 +1,9 @@
import { BadRequestException, Injectable, UnauthorizedException, InternalServerErrorException } from '@nestjs/common';
import {
BadRequestException,
Injectable,
UnauthorizedException,
InternalServerErrorException,
} from '@nestjs/common';
import { UsuariosService } from 'src/usuarios/usuarios.service';
import * as argon2 from 'argon2';
import { LoginDto } from './dto/login.dto';
@@ -7,64 +12,57 @@ import { JwtService } from '@nestjs/jwt';
@Injectable()
export class AuthService {
constructor(
private readonly usuarioService:UsuariosService,
private readonly jwtService:JwtService
){}
constructor(
private readonly usuarioService: UsuariosService,
private readonly jwtService: JwtService,
) {}
async registro({nombre, contraseña,tipoUsuario}: CreateUsuarioDto){
const usuario = await this.usuarioService.findOneByName(nombre);
if(usuario){
throw new BadRequestException("Nombre de usuario ya existente");
}
try{
const hashedContraseña = await argon2.hash(contraseña);
await this.usuarioService.create({
nombre,
contraseña: hashedContraseña,
tipoUsuario,
});
return {
message: "Usuario registrado exitosamente"
};
}catch(error){
throw new InternalServerErrorException('Error al crear el usuario');
}
async registro({ nombre, contraseña, tipoUsuario }: CreateUsuarioDto) {
const usuario = await this.usuarioService.findOneByName(nombre);
if (usuario) {
throw new BadRequestException('Nombre de usuario ya existente');
}
async login({nombre, contraseña}:LoginDto){
const usuario= await this.usuarioService.findOneByName(nombre)
if(!usuario){
throw new UnauthorizedException("Usuario no encontrado");
try {
const hashedContraseña = await argon2.hash(contraseña);
}
const contraseñaValida= await argon2.verify(contraseña, usuario.contraseña);
if(!contraseñaValida){
throw new UnauthorizedException("Contraseña invalida");
await this.usuarioService.create({
nombre,
contraseña: hashedContraseña,
tipoUsuario,
});
}
const dataUser={
id:usuario.id_usuario,
nombre:usuario.nombre,
tipoUsuario:usuario.tipoUsuario.id_tipo_usuario
}
const token=await this.jwtService.sign(dataUser)
return{
token:token,
};
return {
message: 'Usuario registrado exitosamente',
};
} catch (error) {
throw new InternalServerErrorException('Error al crear el usuario');
}
}
async login({ nombre, contraseña }: LoginDto) {
const usuario = await this.usuarioService.findOneByName(nombre);
if (!usuario) {
throw new UnauthorizedException('Usuario no encontrado');
}
const contraseñaValida = await argon2.verify(
usuario.contraseña,
contraseña,
);
if (!contraseñaValida) {
throw new UnauthorizedException('Contraseña invalida');
}
const dataUser = {
id: usuario.id_usuario,
nombre: usuario.nombre,
tipoUsuario: usuario.tipoUsuario.id_tipo_usuario,
};
const token = await this.jwtService.sign(dataUser);
return {
token: token,
};
}
}