Пример #1
0
        public async Task <Response> AtualizarAsync(long idCliente, EnderecoDto dto)
        {
            try
            {
                if (await _enderecoRepository.ObterAsync(idCliente) == null)
                {
                    return(CriarResposta(UNPROCESSABLE_ENTITY, false, "Não existe um endereço para esse cliente."));
                }

                var endereco = EnderecoMapper.MapearDtoParaModelo(idCliente, dto);

                if (!endereco.EValido())
                {
                    return(CriarResposta(UNPROCESSABLE_ENTITY, false, endereco.GetMensagemValidacao()));
                }

                await _enderecoRepository.AtualizarAsync(endereco);

                return(CriarResposta(OK, true, "Endereço atualizado."));
            }
            catch (System.Exception)
            {
                return(CriarResposta(INTERNAL_SERVER_ERROR, false, "Ocorreu um erro ao tentar atualizar o endereço. Favor aguardar uns minutos e tentar novamente."));
            }
        }
        public async Task <ActionResult <EnderecoDto> > GetAddressByZipCode(EnderecoDto dto)
        {
            try
            {
                var myUsername = User.Identity.Name;
                if (ZZApiMain.VerifyUserAuthorize(myUsername))
                {
                    if (ZZApiMain.UsersConnections.TryGetValue(myUsername, out var myConn))
                    {
                        var myId = await myConn.Zz.ApiWriteServer(myUsername, new Command { Cmd = ServerCommands.GetAddressByZipCode, Json = await SerializerAsync.SerializeJson(dto) });

                        var responseCommand = await myConn.Zz.GetApiWaitCommand(myId);

                        if (responseCommand != null && responseCommand.Cmd.Equals(ServerCommands.LogResultOk))
                        {
                            return(await SerializerAsync.DeserializeJson <EnderecoDto>(responseCommand.Json));
                        }
                    }
                }
                return(NotFound());
            }
            catch (Exception e)
            {
                ConsoleEx.WriteError(e);
                return(NotFound());
            }
        }
Пример #3
0
        public void Salvar(EnderecoDto pEnderecoDto, Usuarios pUsuario)
        {
            var BdEndereco = _enderecoCollection.Find(
                Builders <Enderecos> .Filter.Eq(end => end.UsuarioId, pUsuario.UsuarioId)
                ).FirstOrDefault();

            if (Utils.CepValido(pEnderecoDto.Cep) && BdEndereco == null)
            {
                var collectionName = _enderecoCollection.CollectionNamespace.CollectionName;
                var lEnderecoId    = new SequenciasBusiness(_mongoDb).ProximoValor(collectionName);

                var lEndereco = new Enderecos
                                (
                    pEnderecoDto.Numero,
                    pEnderecoDto.Rua,
                    pEnderecoDto.Cep
                                );

                lEndereco.EnderecoId = lEnderecoId;
                lEndereco.UsuarioId  = pUsuario.UsuarioId;

                _enderecoCollection.InsertOne(lEndereco);
            }
            else
            {
                throw new System.Exception("Não foi possivel salvar o endereço");
            }
        }
Пример #4
0
        public async Task <ActionResult> Put(int EnderecoId, EnderecoDto model)
        {
            try
            {
                var endereco = await _repo.GetById(EnderecoId);

                if (endereco == null)
                {
                    return(NotFound());
                }

                _mapper.Map(model, endereco);

                _repo.Update(endereco);

                if (await _repo.SaveChangesAsync())
                {
                    return(Created($"/endereco/{model.Id}", _mapper.Map <EnderecoDto>(endereco)));
                }
            }
            catch (System.Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }

            return(BadRequest());
        }
Пример #5
0
        public void PedidoSemUsuarioComDadosEntrega()
        {
            List <ItemPedidoDto> itens = new List <ItemPedidoDto>();

            itens.Add(new ItemPedidoDto {
                IdProduto1 = 1, IdProduto2 = 2
            });

            var enderecoDto = new EnderecoDto
            {
                Logradouro  = "Rua da Silva",
                Numero      = "209",
                Complemento = "Casa 10"
            };

            PedidoDto pedido = new PedidoDto
            {
                Itens       = itens,
                enderecoDto = enderecoDto
            };

            var jsonContent   = JsonConvert.SerializeObject(pedido);
            var contentString = new StringContent(jsonContent, Encoding.UTF8,
                                                  "application/json");

            var response = TestHttpClient.PostAsync("api/pedido/enviar",
                                                    contentString).Result;
            var resp = response.Content.ReadAsStringAsync().Result;

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
        }
Пример #6
0
        public async Task <IActionResult> Put([FromBody] EnderecoDto enderecoDto)
        {
            try
            {
                var endereco = await _service.PegarPorCep(enderecoDto.Cep);

                if (endereco is null)
                {
                    return(NotFound());
                }

                endereco.Logradouro = enderecoDto.Logradouro;
                endereco.Bairro     = enderecoDto.Bairro;
                endereco.Localidade = enderecoDto.Localidade;
                endereco.Uf         = enderecoDto.Uf;

                await _service.Salvar(endereco);

                return(NoContent());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Пример #7
0
        public void Endereco_deve_construir_um_endereco_valido()
        {
            //Arrange
            var cep       = "88333000";
            var rua       = "Onde judas perdeu as botas";
            var uf        = "SC";
            var municipio = "Guabiruba";

            var enderecoDto = new EnderecoDto
            {
                Cep       = cep,
                Rua       = rua,
                Uf        = uf,
                Municipio = municipio
            };

            //Act
            var endereco = new Endereco(enderecoDto);

            //Assert
            endereco.Cep.Should().Be(cep);
            endereco.Rua.Should().Be(rua);
            endereco.Uf.Should().Be(uf);
            endereco.Municipio.Should().Be(municipio);
        }
Пример #8
0
        public async Task <Response> CadastrarAsync(EnderecoDto dto)
        {
            try
            {
                var cliente = await _clienteRepository.ObterAsync(Cpf.DesformatarNumero(dto.Cpf));

                if (cliente == null)
                {
                    return(CriarResposta(UNPROCESSABLE_ENTITY, false, "Cliente inexistente."));
                }

                if (await _enderecoRepository.ObterAsync(cliente.Id) != null)
                {
                    return(CriarResposta(UNPROCESSABLE_ENTITY, false, "Já existe um endereço para esse cliente."));
                }

                var endereco = EnderecoMapper.MapearDtoParaModelo(cliente.Id, dto);

                if (!endereco.EValido())
                {
                    return(CriarResposta(UNPROCESSABLE_ENTITY, false, cliente.GetMensagemValidacao()));
                }

                await _enderecoRepository.CadastrarAsync(endereco);

                return(CriarResposta(OK, true, "Endereço cadastrado."));
            }
            catch (System.Exception)
            {
                return(CriarResposta(INTERNAL_SERVER_ERROR, false, "Ocorreu um erro ao tentar cadastrar o endereço. Favor aguardar uns minutos e tentar novamente."));
            }
        }
        public async Task <IActionResult> AlterarEnderecoAsync(Guid aggregateId, [FromBody] EnderecoDto dto)
        {
            await _pessoaService.AlterarEnderecoAsync(aggregateId, dto.CidadeId, dto.Cep, dto.Logradouro, dto.Numero, dto.Bairro, dto.Complemento);

            await UnitOfWork.CommitAsyc();

            return(Ok(aggregateId));
        }
Пример #10
0
        public void SalvarEndereco(int idPessoa, EnderecoDto endereco)
        {
            var tabela = AutoMapper.Mapper.Map <Endereco>(endereco);

            tabela.PessoaId = idPessoa;

            Dao.Inserir(tabela);
        }
        public IEnumerable <UnidadeAtendimentoDto> MapperListUnidadesAtendimentoDto(IEnumerable <UnidadeAtendimento> unidadesAtendimento)
        {
            var unidadesAtendimentoDto = new List <UnidadeAtendimentoDto>();

            foreach (var unidadeAtendimento in unidadesAtendimento)
            {
                var unidadeAtendimentoDto = new UnidadeAtendimentoDto();
                var enderecoDto           = new EnderecoDto();
                var telefonesDto          = new List <TelefoneDto>();

                //Unidade de Atendimento
                unidadeAtendimentoDto.Id   = unidadeAtendimento.Id;
                unidadeAtendimentoDto.Tipo = unidadeAtendimento.Tipo;
                unidadeAtendimentoDto.Nome = unidadeAtendimento.Nome;

                //Endereço da Unidade de Atendimento
                if (unidadeAtendimento.Endereco != null)
                {
                    enderecoDto.Id          = unidadeAtendimento.Endereco.Id;
                    enderecoDto.Tipo        = unidadeAtendimento.Endereco.Tipo;
                    enderecoDto.Numero      = unidadeAtendimento.Endereco.Numero;
                    enderecoDto.Complemento = unidadeAtendimento.Endereco.Complemento;
                    enderecoDto.Cep         = unidadeAtendimento.Endereco.Cep;
                    enderecoDto.Bairro      = unidadeAtendimento.Endereco.Bairro;
                    enderecoDto.Municipio   = unidadeAtendimento.Endereco.Municipio;
                    enderecoDto.Estado      = unidadeAtendimento.Endereco.Estado;
                    enderecoDto.Latitude    = unidadeAtendimento.Endereco.Latitude;
                    enderecoDto.Longetude   = unidadeAtendimento.Endereco.Longetude;

                    unidadeAtendimentoDto.Endereco = enderecoDto;
                }

                if (unidadeAtendimento.Telefones != null)
                {
                    //Tefones da Unidade de Atendimento
                    foreach (var telefone in unidadeAtendimento.Telefones)
                    {
                        var telefoneDto = new TelefoneDto();

                        telefoneDto.Id          = telefone.Id;
                        telefoneDto.Tipo        = telefone.Tipo;
                        telefoneDto.DDI         = telefone.DDI;
                        telefoneDto.DDD         = telefone.DDD;
                        telefoneDto.Numero      = telefone.Numero;
                        telefoneDto.Recado      = telefone.Recado;
                        telefoneDto.Complemento = telefone.Complemento;

                        telefonesDto.Add(telefoneDto);
                    }

                    unidadeAtendimentoDto.Telefones = telefonesDto;
                }

                unidadesAtendimentoDto.Add(unidadeAtendimentoDto);
            }

            return(unidadesAtendimentoDto);
        }
Пример #12
0
        public static async Task <Command> GetAddressByZipCode(Command command)
        {
            Command cmd = new Command(command);

            try
            {
                using (var context = new ZZContext())
                {
                    var dto = await SerializerAsync.DeserializeJson <EnderecoDto>(cmd.Json);

                    var rep       = new Repository <Endereco>(context);
                    var enderecos = await rep.Get(e => e.Cep.Equals(dto.Cep) && e.Numero == dto.Numero);


                    if (enderecos != null && enderecos.Any())
                    {
                        var endList = enderecos.FirstOrDefault();
                        cmd.Cmd = ServerCommands.LogResultOk;
                        var dtosEnd = endList.ConvertDto();
                        cmd.Json = await SerializerAsync.SerializeJson(dtosEnd);
                    }
                    else
                    {
                        var address = await SearchAddressAsync(dto.Cep, CancellationToken.None);

                        if (address != null)
                        {
                            cmd.Cmd = ServerCommands.LogResultOk;
                            var entity = new EnderecoDto
                            {
                                Cep         = address.ZipCode,
                                Bairro      = address.Neighborhood,
                                Cidade      = address.City,
                                Estado      = address.StateInitials,
                                Logradouro  = address.Street,
                                Complemento = address.Complement,
                                Ibge        = address.IBGECode,
                                GIACode     = address.GIACode,
                                Numero      = dto.Numero,
                                Codigo      = address.IBGECode.ToString() + address.GIACode.ToString() + address.ZipCode + dto.Numero.ToString()
                            };
                            cmd.Json = await SerializerAsync.SerializeJson(entity);
                        }
                        else
                        {
                            cmd.Cmd = ServerCommands.LogResultDeny;
                        }
                    }
                }
            }
            catch (Exception e)
            {
                ConsoleEx.WriteError(e);
            }

            return(cmd);
        }
Пример #13
0
 internal void AtualizarEndereco(EnderecoDto enderecoDto)
 {
     Logradouro  = enderecoDto.Logradouro;
     CEP         = enderecoDto.CEP;
     Numero      = enderecoDto.Numero;
     Bairro      = enderecoDto.Bairro;
     Complemento = enderecoDto.Complemento;
     MunicipioId = enderecoDto.MunicipioId;
 }
Пример #14
0
 public Endereco(EnderecoDto enderecoDto)
 {
     Logradouro  = enderecoDto.Logradouro;
     CEP         = enderecoDto.CEP;
     Numero      = enderecoDto.Numero;
     Bairro      = enderecoDto.Bairro;
     Complemento = enderecoDto.Complemento;
     MunicipioId = enderecoDto.MunicipioId;
 }
Пример #15
0
 public Endereco(EnderecoDto enderecoDto)
 {
     enderecoDto.ValidarELancarExcessao();
     Cep       = enderecoDto.Cep;
     Rua       = enderecoDto.Rua;
     Numero    = enderecoDto.Numero;
     Uf        = enderecoDto.Uf;
     Municipio = enderecoDto.Municipio;
 }
 private void AlterarEnderecoDoCliente(Cliente cliente, EnderecoDto dto)
 {
     cliente.Endereco.AlterarBairro(dto.Bairro);
     cliente.Endereco.AlterarCep(dto.Cep);
     cliente.Endereco.AlterarCidade(dto.Cidade);
     cliente.Endereco.AlterarComplemento(dto.Complemento);
     cliente.Endereco.AlterarEstado(dto.Estado);
     cliente.Endereco.AlterarLogradouro(dto.Logradouro);
     cliente.Endereco.AlterarNumero(dto.Numero);
 }
 private Endereco NovoEndereco(EnderecoDto dto)
 {
     return(new Endereco(
                dto.Cep,
                dto.Logradouro,
                dto.Numero,
                dto.Complemento,
                dto.Bairro,
                dto.Estado,
                dto.Cidade));
 }
Пример #18
0
        public async Task <IActionResult> Atualizar(int id, [FromBody] EnderecoDto enderecoDto)
        {
            var response = await _enderecoService.AtualizarAsync(id, enderecoDto);

            if (!response.Sucesso)
            {
                return(StatusCode(response.StatusCode, new { mensagem = response.Mensagem }));
            }

            return(StatusCode(response.StatusCode, new { mensagem = response.Mensagem }));
        }
Пример #19
0
 public async Task <ActionResult <EnderecoDto> > Put(Guid id, [FromBody] EnderecoDto EnderecoDto)
 {
     try
     {
         return(await this.applicationServiceEndereco.UpdateAsync(id, EnderecoDto));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Пример #20
0
 public async Task <ResponseGeneric <EnderecoDto> > ListarAsync(EnderecoDto enderecoDto)
 {
     try
     {
         return(CriarResposta(OK, true, null, await _enderecoRepository.ListarAsync(enderecoDto)));
     }
     catch (System.Exception e)
     {
         return(CriarResposta <EnderecoDto>(INTERNAL_SERVER_ERROR, false, "Ocorreu um erro ao tentar listar enderecos. Favor aguardar uns minutos e tentar novamente."));
     }
 }
Пример #21
0
        public async Task <IActionResult> Cadastrar([FromBody] EnderecoDto enderecoDto)
        {
            var response = await _enderecoService.CadastrarAsync(enderecoDto);

            if (!response.Sucesso)
            {
                return(StatusCode(response.StatusCode, new { mensagem = response.Mensagem }));
            }

            return(StatusCode(response.StatusCode, new { mensagem = response.Mensagem }));
        }
        public UnidadeAtendimentoDto MapperEntityToDto(UnidadeAtendimento unidadeAtendimento)
        {
            var unidadeAtendimentoDto = new UnidadeAtendimentoDto();
            var telefonesDto          = new List <TelefoneDto>();

            unidadeAtendimentoDto.Id   = unidadeAtendimento.Id;
            unidadeAtendimentoDto.Nome = unidadeAtendimento.Nome;
            unidadeAtendimentoDto.Tipo = unidadeAtendimento.Tipo;

            if (unidadeAtendimento.Endereco != null)
            {
                var enderecoDto = new EnderecoDto()
                {
                    Id          = unidadeAtendimento.Endereco.Id,
                    Tipo        = unidadeAtendimento.Endereco.Tipo,
                    Logradouro  = unidadeAtendimento.Endereco.Logradouro,
                    Numero      = unidadeAtendimento.Endereco.Numero,
                    Complemento = unidadeAtendimento.Endereco.Complemento,
                    Cep         = unidadeAtendimento.Endereco.Cep,
                    Bairro      = unidadeAtendimento.Endereco.Bairro,
                    Municipio   = unidadeAtendimento.Endereco.Municipio,
                    Estado      = unidadeAtendimento.Endereco.Estado,
                    Latitude    = unidadeAtendimento.Endereco.Latitude,
                    Longetude   = unidadeAtendimento.Endereco.Longetude
                };

                unidadeAtendimentoDto.Endereco = enderecoDto;
            }

            if (unidadeAtendimento.Telefones != null)
            {
                foreach (var item in unidadeAtendimento.Telefones)
                {
                    var telefoneDto = new TelefoneDto()
                    {
                        Id          = item.Id,
                        Tipo        = item.Tipo,
                        DDI         = item.DDI,
                        DDD         = item.DDD,
                        Numero      = item.Numero,
                        Recado      = item.Recado,
                        Complemento = item.Complemento
                    };

                    telefonesDto.Add(telefoneDto);
                }

                unidadeAtendimentoDto.Telefones = telefonesDto;
            }

            return(unidadeAtendimentoDto);
        }
Пример #23
0
        public async Task <IActionResult> Post([FromBody] EnderecoDto enderecoDto)
        {
            try
            {
                var resultado = await _service.Salvar(enderecoDto);

                return(CreatedAtAction(nameof(GetByCep), new { cep = resultado.Cep }, enderecoDto));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Пример #24
0

        
Пример #25
0
        public async Task <IActionResult> Add(EnderecoDto enderecoDto)
        {
            try
            {
                var addEndereco = await _service.Add(enderecoDto);

                return(Created($"/api/endereco/{addEndereco.Id}", addEndereco));
            }
            catch (ArgumentException e)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"{e.Message}"));
            }
        }
Пример #26
0
        // ADICIONAR
        public async Task <EnderecoDto> Add(EnderecoDto enderecoDto)
        {
            var existeCep = await _repo.GetByCep(enderecoDto.CEP);

            var endereco = _map.Map <Endereco>(enderecoDto);

            _repo.Add(endereco);

            if (await _repo.SaveAsync())
            {
                return(_map.Map <EnderecoDto>(endereco));
            }
            throw new ArgumentException("Erro ao persistir no banco!");
        }
Пример #27
0
        public async Task <IActionResult> Delete(EnderecoDto dto)
        {
            var result = new HttpResult <EnderecoDto>(this._logger);

            try
            {
                await this._app.Remove(dto);

                return(result.ReturnCustomResponse(this._app, dto));
            }
            catch (Exception ex)
            {
                return(result.ReturnCustomException(ex, "Calemas.Erp - Endereco", dto));
            }
        }
Пример #28
0
        public async Task <IActionResult> CriarEndereco([FromBody] EnderecoDto enderecoDto)
        {
            var estado = _dataContext.Estado.FirstOrDefault(a => a.Id == enderecoDto.Estado.Id);
            var cidade = _dataContext.Cidade.FirstOrDefault(a => a.Id == enderecoDto.Cidade.Id);
            var bairro = _dataContext.Bairro.FirstOrDefault(a => a.Id == enderecoDto.Bairro.Id);

            Endereco endereco = new Endereco(bairro,
                                             cidade,
                                             estado,
                                             enderecoDto.CEP, enderecoDto.Numero, enderecoDto.Rua, enderecoDto.Complemento);

            _dataContext.Add(endereco);
            await _dataContext.SaveChangesAsync();

            return(Ok(endereco));
        }
Пример #29
0
        public async Task <IActionResult> Update(EnderecoDto enderecoDto)
        {
            try
            {
                var updateEndereco = await _service.Update(enderecoDto);

                return(Ok(updateEndereco));
            }
            catch (NotFoundException e)
            {
                return(this.StatusCode(StatusCodes.Status404NotFound, $"{e.Message}"));
            }
            catch (ArgumentException e)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"{e.Message}"));
            }
        }
Пример #30
0
        public override EntityDto ConvertDto()
        {
            try
            {
                var dto = new EnderecoDto {
                    Id     = Id, Cep = Cep, Logradouro = Logradouro, Complemento = Complemento, Bairro = Bairro,
                    Cidade = CidadeDescricao, Estado = Uf, GIACode = GIACode, Ibge = Ibge, Numero = Numero, Codigo = Codigo
                };

                return(dto);
            }
            catch (Exception e)
            {
                ConsoleEx.WriteError(e);
                return(null);
            }
        }