コード例 #1
0
 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);
コード例 #2
0
        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));
        }
コード例 #3
0
        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));
        }
コード例 #4
0
        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();
        }
コード例 #5
0
        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());
        }