From ffd17f0cded2e9a312f55e47daabaec074522291 Mon Sep 17 00:00:00 2001 From: dmolinari Date: Thu, 9 Oct 2025 10:30:49 -0300 Subject: [PATCH] Fix Usuario Clave --- backend/Controllers/UsuariosController.cs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/backend/Controllers/UsuariosController.cs b/backend/Controllers/UsuariosController.cs index 8344bd0..a62fabe 100644 --- a/backend/Controllers/UsuariosController.cs +++ b/backend/Controllers/UsuariosController.cs @@ -56,11 +56,16 @@ namespace Inventario.API.Controllers if (usuarioExistente != null) { - // El usuario ya existe, lo actualizamos (solo la contraseña si viene) - var updateQuery = "UPDATE dbo.usuarios SET Password = @Password WHERE Id = @Id;"; - await connection.ExecuteAsync(updateQuery, new { usuario.Password, Id = usuarioExistente.Id }); + // El usuario ya existe. + // SOLO actualizamos la contraseña si se proporciona una nueva en el body de la petición. + if (!string.IsNullOrEmpty(usuario.Password)) + { + var updateQuery = "UPDATE dbo.usuarios SET Password = @Password, updated_at = GETDATE() WHERE Id = @Id;"; + await connection.ExecuteAsync(updateQuery, new { usuario.Password, Id = usuarioExistente.Id }); + } + // Si no se envía contraseña, simplemente no hacemos nada y el valor en la BD se conserva. - // Devolvemos el usuario actualizado + // Devolvemos el usuario que ya existe (con o sin la contraseña actualizada) var usuarioActualizado = await connection.QuerySingleOrDefaultAsync(findQuery, new { usuario.Username }); return Ok(usuarioActualizado); }