Created
October 9, 2017 14:05
-
-
Save deniscsz/352e227f7023fa9c0065f5541409e33c to your computer and use it in GitHub Desktop.
Alteração no script buscacep para correção do autocomplete
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?php | |
| require_once 'app/Mage.php'; | |
| /* | |
| * Initialize Magento. Older versions may require Mage::app() instead. | |
| */ | |
| Mage::init(); | |
| if( isset( $_POST['cep'] ) ) { | |
| $cep = $_POST['cep']; | |
| } elseif( isset( $_GET['cep'] ) ) { | |
| $cep = $_GET['cep']; | |
| } | |
| $cep = preg_replace('/[^\d]/', '', $cep); | |
| $soapArgs = array( | |
| 'cep' => $cep, | |
| 'encoding' => 'UTF-8', | |
| 'exceptions' => 0 | |
| ); | |
| $opts = array('http'=> array( | |
| 'protocol_version'=>'1.0', | |
| 'header' => 'Connection: Close' | |
| )); | |
| $params = array ('stream_context' => stream_context_create($opts) ); | |
| $return = ''; | |
| try { | |
| $clientSoap = new SoapClient( "https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl", $params ); | |
| $result = $clientSoap->consultaCep($soapArgs); | |
| $dadosRaw = $result->return; | |
| if (!is_soap_fault($result)) { | |
| $dados = array( | |
| 'logradouro'=> trim($dadosRaw->end), | |
| 'bairro'=> trim($dadosRaw->bairro), | |
| 'cidade'=> trim($dadosRaw->cidade), | |
| 'uf' => $dadosRaw->uf, | |
| 'cep'=> $cep | |
| ); | |
| } | |
| } catch (SoapFault $e) { | |
| $texto = false; | |
| Mage::logException($e); | |
| echo $texto; | |
| return; | |
| } catch (Exception $e) { | |
| $texto = false; | |
| Mage::logException($e); | |
| echo $texto; | |
| return; | |
| } | |
| /////////////////////////////////////////////////// | |
| //var_dump($dados); //para testar | |
| /////////////////////////////////////////////////// | |
| if ( isset($dados) ) { | |
| /////////////////////////////////////////////////// | |
| //MONTA SWITC PARA SELECIONAR NO COMBO DO MAGENTO | |
| /////////////////////////////////////////////////// | |
| switch ( $dados['uf'] ){ | |
| case "AC": $uf = 'Acre'; $estado = 1; $num = 485; break; | |
| case "AL": $uf = 'Alagoas'; $estado = 2; $num = 486; break; | |
| case "AP": $uf = 'Amapa'; $estado = 3; $num = 487; break; | |
| case "AM": $uf = 'Amazonas'; $estado = 4; $num = 488; break; | |
| case "BA": $uf = 'Bahia'; $estado = 5; $num = 489; break; | |
| case "CE": $uf = 'Ceara'; $estado = 6; $num = 490; break; | |
| case "ES": $uf = 'Espirito Santo'; $estado = 8; $num = 491; break; | |
| case "GO": $uf = 'Goias'; $estado = 9; $num = 492; break; | |
| case "MA": $uf = 'Maranhao'; $estado = 10; $num = 493; break; | |
| case "MT": $uf = 'Mato Grosso'; $estado = 12; $num = 494; break; | |
| case "MS": $uf = 'Mato Grosso do Sul'; $estado = 12; $num = 495; break; | |
| case "MG": $uf = 'Minas Gerais'; $estado = 13; $num = 496; break; | |
| case "PA": $uf = 'Para'; $estado = 14; $num = 497; break; | |
| case "PB": $uf = 'Paraiba'; $estado = 15; $num = 498; break; | |
| case "PR": $uf = 'Parana'; $estado = 16; $num = 499; break; | |
| case "PE": $uf = 'Pernambuco'; $estado = 17; $num = 500; break; | |
| case "PI": $uf = 'Piaui'; $estado = 18; $num = 501; break; | |
| case "RJ": $uf = 'Rio de Janeiro'; $estado = 19; $num = 502; break; | |
| case "RN": $uf = 'Rio Grande do Norte';$estado = 20; $num = 503; break; | |
| case "RS": $uf = 'Rio Grande do Sul'; $estado = 21; $num = 504; break; | |
| case "RO": $uf = 'Rondonia'; $estado = 22; $num = 505; break; | |
| case "RR": $uf = 'Roraima'; $estado = 23; $num = 506; break; | |
| case "SC": $uf = 'Santa Catarina'; $estado = 24; $num = 507; break; | |
| case "SP": $uf = 'Sao Paulo'; $estado = 25; $num = 508; break; | |
| case "SE": $uf = 'Sergipe'; $estado = 26; $num = 509; break; | |
| case "TO": $uf = 'Tocantins'; $estado = 27; $num = 510; break; | |
| case "DF": $uf = 'Distrito Federal'; $estado = 7; $num = 511; break; | |
| } | |
| /* | |
| ('BR', 'AC', 'Acre'), | |
| ('BR', 'AL', 'Alagoas'), | |
| ('BR', 'AP', 'Amapa'), | |
| ('BR', 'AM', 'Amazonas'), | |
| ('BR', 'BA', 'Bahia'), | |
| ('BR', 'CE', 'Ceara'), | |
| ('BR', 'ES', 'Espirito Santo'), | |
| ('BR', 'GO', 'Goias'), | |
| ('BR', 'MA', 'Maranhao'), | |
| ('BR', 'MT', 'Mato Grosso'), | |
| ('BR', 'MS', 'Mato Grosso do Sul'), | |
| ('BR', 'MG', 'Minas Gerais'), | |
| ('BR', 'PA', 'Para'), | |
| ('BR', 'PB', 'Paraiba'), | |
| ('BR', 'PR', 'Parana'), | |
| ('BR', 'PE', 'Pernambuco'), | |
| ('BR', 'PI', 'Piaui'), | |
| ('BR', 'RJ', 'Rio de Janeiro'), | |
| ('BR', 'RN', 'Rio Grande do Norte'), | |
| ('BR', 'RS', 'Rio Grande do Sul'), | |
| ('BR', 'RO', 'Rondonia'), | |
| ('BR', 'RR', 'Roraima'), | |
| ('BR', 'SC', 'Santa Catarina'), | |
| ('BR', 'SP', 'Sao Paulo'), | |
| ('BR', 'SE', 'Sergipe'), | |
| ('BR', 'TO', 'Tocantins'), | |
| ('BR', 'DF', 'Distrito Federal'); | |
| */ | |
| //$texto = $dados['logradouro'].":".$dados['bairro'].":".$dados['cidade'].":".$uf.":".$num.":".$estado.";"; | |
| $dados['codigo'] = $num; | |
| $dados['indice'] = $estado; | |
| $dados['uf_extenso'] = $uf; | |
| echo json_encode($dados); | |
| }else { | |
| $texto = false; | |
| echo $texto; | |
| }; | |
| ?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment