2025-10-13 10:43:27 -03:00
document . getElementById ( 'btnConsultaCep' ) . addEventListener ( 'click' , async ( ) => {
const cep = document . getElementById ( 'cep' ) . value ;
const numero = document . getElementById ( 'numero' ) . value ;
2025-10-13 15:35:37 -03:00
const endereco = document . getElementById ( 'consultaResultAddress' ) ;
const resultados = document . getElementById ( 'consultaResultViabilidade' ) ;
const dedicado = document . getElementById ( 'link-dedicado' ) ;
const naoDedicado = document . getElementById ( 'link-nao-dedicado' ) ;
endereco . innerText = 'Consultando...' ;
2025-10-13 10:43:27 -03:00
try {
const resp = await fetch ( ` /consulta-cep?cep= ${ encodeURIComponent ( cep ) } &numero= ${ encodeURIComponent ( numero ) } ` ) ;
const data = await resp . json ( ) ;
if ( data . distancia ) {
2025-10-13 15:35:37 -03:00
// colocar o card-results__container (resultados) com display block
2025-10-13 16:05:11 -03:00
endereco . innerHTML = ` <strong>Endereço:</strong> ${ data . endereco } . ` ;
2025-10-13 15:35:37 -03:00
resultados . style . display = 'block' ;
// insere nos spans link-dedicado e link-nao-dedicado os textos de viabilidade e se for viavel adicionar classe "viavel" e se for inviavel adicionar classe "inviavel"
dedicado . innerText = data . dedicado ;
naoDedicado . innerText = data . naoDedicado ;
if ( data . dedicado === 'Viável' ) {
dedicado . classList . add ( 'viavel' ) ;
} else if ( data . dedicado === 'Não viável' ) {
dedicado . classList . add ( 'inviavel' ) ;
}
if ( data . naoDedicado === 'Viável' ) {
naoDedicado . classList . add ( 'viavel' ) ;
} else if ( data . naoDedicado === 'Não viável' ) {
naoDedicado . classList . add ( 'inviavel' ) ;
}
2025-10-13 10:43:27 -03:00
} else if ( data . error ) {
2025-10-13 15:35:37 -03:00
endereco . innerText = 'Erro: ' + data . error ;
2025-10-13 10:43:27 -03:00
}
} catch ( e ) {
2025-10-13 15:35:37 -03:00
endereco . innerText = 'Erro na consulta' ;
2025-10-13 10:43:27 -03:00
}
} ) ;