예제 #1
0
        public Logradouros BuscarEndereco(int cep)
        {
            // http://viacep.com.br/ws/04140000/json
            WebApiClient client = new WebApiClient("http://viacep.com.br");
            string       s      = String.Format("ws/{0:00000000}/json", cep);
            ViaCep       viacep = client.GetJson <ViaCep>(s);

            if (viacep != null && viacep.Localidade != null)
            {
                Cidades cidade = new Cidades
                {
                    DescCidade = RemoveDiacritics(viacep.Localidade).ToUpper(),
                    FlgEstado  = viacep.Uf
                };
                Bairros bairro = new Bairros
                {
                    DescBairro = RemoveDiacritics(viacep.Bairro).ToUpper(),
                    Cidades    = cidade
                };
                int         primeiroEspaco = viacep.Logradouro.IndexOf(' ');
                Logradouros logradouro     = new Logradouros
                {
                    DescLogradouro = RemoveDiacritics(viacep.Logradouro.Substring(primeiroEspaco + 1)).ToUpper(),
                    Bairros        = bairro,
                    NumCep         = cep,
                    DescTipo       = RemoveDiacritics(viacep.Logradouro.Substring(0, primeiroEspaco)).ToUpper()
                };
                return(logradouro);
            }
            return(null);
        }
        public async Task <IActionResult> PostLogradouros([FromBody] Logradouros logradouros)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Logradouros.Add(logradouros);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (LogradourosExists(logradouros.Cep))
                {
                    return(new StatusCodeResult(StatusCodes.Status409Conflict));
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetLogradouros", new { id = logradouros.Cep }, logradouros));
        }
예제 #3
0
        public async Task <ActionResult <Logradouros> > PostLogradouros(Logradouros logradouros)
        {
            _context.Logradouros.Add(logradouros);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetLogradouros", new { id = logradouros.LogradouroId }, logradouros));
        }
        public async Task <IActionResult> PutLogradouros([FromRoute] int id, [FromBody] Logradouros logradouros)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != logradouros.Cep)
            {
                return(BadRequest());
            }

            _context.Entry(logradouros).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!LogradourosExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #5
0
        public IEnumerable <Logradouros> ObterCep(string logradouro, string localidade, string uf)
        {
            var args = new Dictionary <string, string>
            {
                { "usuario", _usuario },
                { "senha", _senha },
                { "logradouro", logradouro },
                { "localidade", localidade },
                { "UF", uf }
            };

            var result      = Get("obterCepAuth", args);
            var logradouros = new List <Logradouros>();

            foreach (var item in result)
            {
                var logradouroSplit = item.Split(',');
                var element         = new Logradouros
                {
                    Logradouro = logradouroSplit.ElementAtOrDefault(0),
                    Bairro     = logradouroSplit.ElementAtOrDefault(1),
                    Cidade     = logradouroSplit.ElementAtOrDefault(2),
                    Uf         = logradouroSplit.ElementAtOrDefault(3),
                    Ibge       = logradouroSplit.ElementAtOrDefault(4)
                };

                logradouros.Add(element);
            }

            return(logradouros);
        }
예제 #6
0
 public void Cadastrar(Logradouros logradouro)
 {
     using (PluftContext ctx = new PluftContext())
     {
         ctx.Logradouros.Add(logradouro);
         ctx.SaveChanges();
     }
 }
        public ActionResult DeleteConfirmed(int id)
        {
            Logradouros logradouros = db.Logradouros.Find(id);

            db.Logradouros.Remove(logradouros);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #8
0
 public void Deletar(int id)
 {
     using (PluftContext ctx = new PluftContext())
     {
         Logradouros logradouro = ctx.Logradouros.Find(id);
         ctx.Logradouros.Remove(logradouro);
         ctx.SaveChanges();
     }
 }
예제 #9
0
        /// <summary>
        /// logradouro deve conter referência para bairro
        /// bairro deve ter referência para cidade
        /// cidade deverá ter a flag_estado
        /// </summary>
        /// <param name="logradouro"></param>
        public void IncluirLogradouroComDependencias(Logradouros logradouro)
        {
            using (var contexto = new ReservasModelDb())
            {
                Bairros bairro = logradouro.Bairros;
                Cidades cidade = bairro.Cidades;
                var     uf     = cidade.FlgEstado;

                Ufs u = contexto.Ufs.Where(x => x.UfId == uf).FirstOrDefault();
                if (u == null)
                {
                    var newUf = new Ufs
                    {
                        UfId   = uf,
                        DescUf = "Estado"
                    };
                    contexto.Ufs.Add(newUf);
                    contexto.SaveChanges();
                }
                // verifica se a c
                Cidades c = contexto.Cidades.Where(cid => cid.DescCidade == cidade.DescCidade).FirstOrDefault();
                if (c == null)
                {
                    // se não encontrou a cidade na base de dados, então insere
                    contexto.Cidades.Add(cidade);
                    contexto.SaveChanges();
                    bairro.BairroId = 0; // insere também o bairro
                }
                else
                {
                    cidade = c;
                    // se achou a cidade, vamos procurar o bairro
                    Bairros b = contexto.Bairros.Where(bai => bai.DescBairro == bairro.DescBairro).FirstOrDefault();
                    if (b != null)
                    {
                        bairro = b;
                    }
                    else
                    {
                        // se não encontrou vamos inserir
                        bairro.BairroId = 0;
                    }
                }
                if (bairro.BairroId == 0)
                {
                    bairro.Cidades     = null;
                    bairro.Logradouros = null;
                    bairro.CidadeId    = cidade.CidadeId;
                    contexto.Bairros.Add(bairro);
                    contexto.SaveChanges();
                }
                logradouro.Bairros  = null;
                logradouro.BairroId = bairro.BairroId;
                contexto.Logradouros.Add(logradouro);
                contexto.SaveChanges();
            }
        }
 public IActionResult Atualizar(Logradouros logradouro)
 {
     try
     {
         LogradouroRepositorio.Atualizar(logradouro);
         return(Ok("Endereço atualizado com sucesso."));
     }
     catch (Exception ex)
     {
         return(BadRequest("Ocorreu um erro, não foi possivel atualizar informações."));
     }
 }
 public IActionResult Cadastrar(Logradouros logradouro)
 {
     try
     {
         LogradouroRepositorio.Cadastrar(logradouro);
         return(Ok("Endereço cadastrado com sucesso."));
     }
     catch (Exception ex)
     {
         return(BadRequest("Ocorreu um erro, não foi possível cadastrar endereço."));
     }
 }
 public ActionResult Edit([Bind(Include = "Id,Nome,Bairro,Cidade,Estado,Pais")] Logradouros logradouros)
 {
     if (ModelState.IsValid)
     {
         db.Entry(logradouros).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.Bairro = new SelectList(db.Bairros, "Id", "Nome", logradouros.Bairro);
     ViewBag.Cidade = new SelectList(db.Cidades, "Id", "Nome", logradouros.Cidade);
     ViewBag.Estado = new SelectList(db.Estados, "Id", "Nome", logradouros.Estado);
     ViewBag.Pais   = new SelectList(db.Paises, "Id", "Nome", logradouros.Pais);
     return(View(logradouros));
 }
        // GET: Logradouros/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Logradouros logradouros = db.Logradouros.Find(id);

            if (logradouros == null)
            {
                return(HttpNotFound());
            }
            return(View(logradouros));
        }
예제 #14
0
        public Logradouros ObterEndereco(int cep)
        {
            Logradouros logradouros = cepDAO.ObterEndereco(cep);

            if (logradouros == null)
            {
                logradouros = viaCepDAO.BuscarEndereco(cep);
                if (logradouros != null)
                {
                    cepDAO.IncluirLogradouroComDependencias(logradouros);
                    return(logradouros);
                }
                return(null);
            }
            return(logradouros);
        }
        // GET: Logradouros/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Logradouros logradouros = db.Logradouros.Find(id);

            if (logradouros == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Bairro = new SelectList(db.Bairros, "Id", "Nome", logradouros.Bairro);
            ViewBag.Cidade = new SelectList(db.Cidades, "Id", "Nome", logradouros.Cidade);
            ViewBag.Estado = new SelectList(db.Estados, "Id", "Nome", logradouros.Estado);
            ViewBag.Pais   = new SelectList(db.Paises, "Id", "Nome", logradouros.Pais);
            return(View(logradouros));
        }
예제 #16
0
        public void Atualizar(Logradouros logradouro)
        {
            using (PluftContext ctx = new PluftContext())
            {
                Logradouros atualizaLogradouro = new Logradouros();

                atualizaLogradouro.Id           = logradouro.Id;
                atualizaLogradouro.Rua          = logradouro.Rua;
                atualizaLogradouro.Bairro       = logradouro.Bairro;
                atualizaLogradouro.Cep          = logradouro.Cep;
                atualizaLogradouro.Municipio    = logradouro.Municipio;
                atualizaLogradouro.Estado       = logradouro.Estado;
                atualizaLogradouro.Lojistas     = logradouro.Lojistas;
                atualizaLogradouro.Instituicoes = logradouro.Instituicoes;

                ctx.Logradouros.Update(logradouro);
                ctx.SaveChanges();
            }
        }
예제 #17
0
        public Endereco ObterEndereco(string cep)
        {
            int         c     = int.Parse(cep.Replace("-", ""));
            Logradouros dados = hotelService.ObterEndereco(c);

            if (dados != null)
            {
                Endereco end = new Endereco
                {
                    Logradouro = dados.DescLogradouro,
                    Cidade     = dados.Bairros.Cidades.DescCidade,
                    Uf         = dados.Bairros.Cidades.FlgEstado,
                    Bairro     = dados.Bairros.DescBairro
                };
                return(end);
            }
            else
            {
                return(null);
            }
        }
예제 #18
0
        public Logradouros ObterLogradouro(string cep)
        {
            var args = new Dictionary <string, string>
            {
                { "usuario", _usuario },
                { "senha", _senha },
                { "cep", cep }
            };

            var result = Get("obterLogradouroAuth", args)[0].Split(',');

            var logradouro = new Logradouros
            {
                Logradouro = result.ElementAtOrDefault(0),
                Bairro     = result.ElementAtOrDefault(1),
                Cidade     = result.ElementAtOrDefault(2),
                Uf         = result.ElementAtOrDefault(3),
                Ibge       = result.ElementAtOrDefault(4)
            };

            return(logradouro);
        }