public async Task <Response> AtualizarAsync(long id, ClienteDto dto) { try { var cliente = ClienteMapper.MapearDtoParaModelo(dto); if (!cliente.EValido()) { return(CriarResposta(UNPROCESSABLE_ENTITY, false, cliente.GetMensagemValidacao())); } if (await _clienteRepository.ObterAsync(id) == null) { return(CriarResposta(UNPROCESSABLE_ENTITY, false, "Cliente inexistente.")); } await _clienteRepository.Atualizar(id, cliente); return(CriarResposta(OK, true, "Cliente atualizado.")); } catch (System.Exception e) { return(CriarResposta(INTERNAL_SERVER_ERROR, false, "Ocorreu um erro ao tentar atualizar o cliente. Favor aguardar uns minutos e tentar novamente.")); } }
public async Task <Response> CadastrarAsync(ClienteDto dto) { try { var cliente = ClienteMapper.MapearDtoParaModelo(dto); if (!cliente.EValido()) { return(CriarResposta(UNPROCESSABLE_ENTITY, false, cliente.GetMensagemValidacao())); } if (await _clienteRepository.ObterAsync(cliente.Cpf.Numero) != null) { return(CriarResposta(UNPROCESSABLE_ENTITY, false, "Já existe um cliente com o cpf cadastrado.")); } await _clienteRepository.CadastrarAsync(cliente); return(CriarResposta(OK, true, "Cliente cadastrado.")); } catch (System.Exception) { return(CriarResposta(INTERNAL_SERVER_ERROR, false, "Ocorreu um erro ao tentar cadastrar o cliente. Favor aguardar uns minutos e tentar novamente.")); } }