public IActionResult EditarConta([FromBody] EditarClienteDTO model) { _logger.LogDebug("A executar api/cliente/editar -> Post"); if (model is null) { _logger.LogWarning("O objeto EditarClienteDTO é null!"); return(BadRequest(nameof(model))); } try { string nameIdentifier = HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value; int idCliente = int.Parse(nameIdentifier); ServiceResult resultado = _clienteBusiness.EditarConta(idCliente, model); if (resultado.Sucesso) { _logger.LogInformation($"O {model.Nome}, com Email {model.Email} e Número de Telemóvel {model.NumTelemovel} editou a sua conta com sucesso."); return(Ok()); } else { _logger.LogInformation($"Ocorreu um erro ao efetuar a edição do Cliente com IdCliente {idCliente}."); return(BadRequest(resultado.Erros)); } } catch (ArgumentNullException e) { _logger.LogError(e, e.Message); return(BadRequest(new { message = e.Message })); } catch (Exception e) { _logger.LogError(e, e.Message); return(StatusCode(500)); } }