//Buscar informacao de CEP para cálculo public async Task <List <CorreiosFreteRetorno> > buscar(string cepOrigem, string cepDestino, decimal peso, decimal comprimento, decimal altura, decimal largura) { cepDestino = UtilString.onlyNumber(cepDestino); List <CorreiosFreteRetorno> listaRetorno = new List <CorreiosFreteRetorno>(); if (peso > 0) { var listaFretes = this.OCorreiosBL.calcularPrecoPrazo(cepOrigem, cepDestino, peso, comprimento, altura, largura); listaRetorno = new List <CorreiosFreteRetorno>(); foreach (var DadosFrete in listaFretes) { var ItemRetorno = new CorreiosFreteRetorno(); foreach (var Item in DadosFrete.Servicos) { ItemRetorno.valorEntrega = UtilNumber.toDecimal(Item.Valor); ItemRetorno.prazoEntrega = Item.PrazoEntrega; ItemRetorno.codigoServico = Item.Codigo; listaRetorno.Add(ItemRetorno); } } } CepBrasil OCep = await this.OCepBrasilBL.buscarEndereco(cepDestino); if (OCep.id > 0) { if (listaRetorno.Count == 0) { listaRetorno = new List <CorreiosFreteRetorno>() { new CorreiosFreteRetorno() }; } listaRetorno.ForEach(Item => { Item.cepOriginal = OCep.cepOriginal; Item.bairro = OCep.bairroIni; Item.idCidade = OCep.idCidade; Item.nomeCidade = OCep.nomeCidade; Item.idEstado = OCep.idEstado; Item.siglaEstado = OCep.siglaEstado; Item.tipoLogradouro = OCep.tipoLogradouro; Item.logradouro = OCep.logradouro; }); } return(listaRetorno); }
public async Task <ActionResult> buscarEndereco(string cep) { CepBrasil CepBrasil = await this.OCepBrasilBL.buscarEndereco(cep); return(Json(CepBrasil, JsonRequestBehavior.AllowGet)); }