Fix Usuario Clave
This commit is contained in:
@@ -56,11 +56,16 @@ namespace Inventario.API.Controllers
|
|||||||
|
|
||||||
if (usuarioExistente != null)
|
if (usuarioExistente != null)
|
||||||
{
|
{
|
||||||
// El usuario ya existe, lo actualizamos (solo la contraseña si viene)
|
// El usuario ya existe.
|
||||||
var updateQuery = "UPDATE dbo.usuarios SET Password = @Password WHERE Id = @Id;";
|
// 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 });
|
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<Usuario>(findQuery, new { usuario.Username });
|
var usuarioActualizado = await connection.QuerySingleOrDefaultAsync<Usuario>(findQuery, new { usuario.Username });
|
||||||
return Ok(usuarioActualizado);
|
return Ok(usuarioActualizado);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user