private EnderecoDTO.Dados GetEndereco(ClienteDTO.Gravar dto, string idx = "", string cep = "01001000", string uf = "SP") => new EnderecoDTO.Dados( $"Praça da Sé {idx}", $"50{idx}", $"CASA {idx}", $"Sé {idx}", cep, $"São Paulo {idx}", uf);
public async Task <ClienteDTO.GravarRetorno> Criar(ClienteDTO.Gravar dto) { var cliente = new Cliente(dto.Nome, dto.Sobrenome, dto.DataNascimento, GetCompatibilidadeSexo(dto.TipoSexo), dto.Email, dto.Telefone); SetEnderecoCliente(dto.Endereco, cliente); UnitOfWork.ClienteRepository.Add(cliente); await UnitOfWork.SaveChangesAsync(); return(new ClienteDTO.GravarRetorno(cliente.Id)); }
public async Task <IActionResult> Create([FromBody] ClienteDTO.Gravar dto) { var retorno = await _clienteService.Criar(dto); if (Guid.Empty.Equals(retorno.Id)) { return(BadRequest()); } dto.Id = retorno.Id; dto.Endereco.ClienteId = retorno.Id; return(CreatedAtRoute("", new { retorno.Id }, dto)); }
public async Task Atualizar(ClienteDTO.Gravar dto) { var cliente = GetCliente(dto.Id); cliente.Editar(dto.Nome, dto.Sobrenome, dto.DataNascimento, GetCompatibilidadeSexo(dto.TipoSexo), dto.Email, dto.Telefone); var endereco = cliente.GetEndereco(dto.Endereco.Id); endereco.Editar(dto.Endereco.Logradouro, dto.Endereco.Numero, dto.Endereco.Complemento, dto.Endereco.Bairro, dto.Endereco.CEP, dto.Endereco.Localidade, dto.Endereco.Uf); UnitOfWork.ClienteRepository.Update(cliente); await UnitOfWork.SaveChangesAsync(); }
public async Task <IActionResult> Update(Guid id, [FromBody] ClienteDTO.Gravar dto) { if (!dto.Id.Equals(id) || Guid.Empty.Equals(id)) { return(BadRequest()); } if (!_clienteService.IsClienteExists(dto.Id)) { return(NotFound()); } try { await _clienteService.Atualizar(dto); } catch (DbUpdateConcurrencyException) { throw; } return(NoContent()); }