public HttpResponseMessage ObterEndereco([FromUri] Parametros param) { if (!ModelState.IsValid) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Formato incorreto2: " + param.Cep)); } int icep; bool b = int.TryParse(param.Cep.Replace("-", ""), out icep); if (!b) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Formato incorreto: " + param.Cep)); } logradouros logradouro = service.ObterEndereco(icep); if (logradouro == null) { return(Request.CreateResponse(HttpStatusCode.NotFound, "CEP não encontrado: " + param.Cep)); } Endereco end = new Endereco { Logradouro = logradouro.desc_logradouro, Cidade = logradouro.bairros.cidades.desc_cidade, Uf = logradouro.bairros.cidades.flg_estado }; return(Request.CreateResponse(HttpStatusCode.OK, end)); }
public void incluirLogradouro(logradouros logradouro) { using (var ctx = new ReservasModelDb()) { ctx.logradouros.Add(logradouro); ctx.SaveChanges(); } }
public logradouros ObterEndereco(int cep) { logradouros logradouro = cepDAO.ObterLogradouro(cep); if (logradouro == null) { // caso nao ache cep na base executa esse metodo viacep ViaCep vc = ViacepDAO.buscarEndereco(cep); if (vc != null && vc.uf != null) { cidades cidade = new cidades { desc_cidade = RemoveDiacritics(vc.localidade).ToUpper(), flg_estado = RemoveDiacritics(vc.uf).ToUpper() }; int cidadeid = cepDAO.incluirCidadeInexistente(cidade); bairros bairro = new bairros { desc_bairro = RemoveDiacritics(vc.bairro).ToUpper(), cidade_id = cidadeid }; int bairroid = cepDAO.incluirBairroInexistente(bairro); logradouros log = new logradouros { desc_logradouro = RemoveDiacritics(vc.logradouro.Substring(vc.logradouro.IndexOf(' ') + 1)).ToUpper(), desc_tipo = RemoveDiacritics(vc.logradouro.Substring(0, vc.logradouro.IndexOf(' '))).ToUpper(), bairro_id = bairroid, num_cep = cep }; cepDAO.incluirLogradouro(log); bairro.cidades = cidade; log.bairros = bairro; return(log); } } return(logradouro); }