Giter Club home page Giter Club logo

brazilzipcode's Introduction

BrazilZipCode

Sobre o Módulo

Módulo criado para utilização de serviços de consulta de CEP, já contendo de forma básica consulta pelo ViaCep e Correios.

Como instalar

Instalar via Composer (recomendado)

composer require magedev/brazilzipcode
php bin/magento module:enable MageDev_BrazilZipCode
php bin/magento setup:upgrade

Configurações

Para configurar o módulo acesse: Lojas > Configurações > MageDev > Brazil ZipCode

Como usar a consulta

Em seu javascript (seja para qualquer área da loja que deseja consultar um CEP), faça uma chamada GET para o endpoint abaixo utilizando o cep com ou sem formatação:

URL_DA_LOJA/rest/V1/magedev-brazil-zipcode/search/CEP_A_SER_CONSULTADO
https://minhaloja.com.br/rest/V1/magedev-brazil-zipcode/search/08226-021
https://minhaloja.com.br/rest/V1/magedev-brazil-zipcode/search/08226021

Payload de retorno

{
    "zip_code": "08226021",
    "street": "Rua 18 de Abril",
    "neighborhood": "Cidade Antônio Estevão de Carvalho",
    "additional_info": "",
    "city": "São Paulo",
    "state": "SP",
    "code": "3550308",
    "data_source": "ViaCep",
    "is_valid": true
}

Observações:

  • Caso a funcionalidade de persistência no banco de dados esteja ativa, os dados serão armazenados no banco de dados e, em uma consulta posterior ao mesmo CEP, o dado será retornado do banco.
  • Caso a funcionalidade de cache esteja ativa, o CEP sejá armazenado no cache, e em uma posterior consulta ao mesmo CEP, o dado será retornado do cache.

Limpando o cache apenas do módulo

php bin/magento cache:clean config_zipcode_search_api

Uso da consulta de CEP por serviços externos (Outras plataformas, sistemas ou postman)

Criar uma chave de integração no Magento e fazer uso do header de Authorization.

Adicionando novos serviços através do seu módulo

  • Crie seu módulo
  • Crie sua classe de serviço estendendo da classe MageDev\BrazilZipCode\Gateway\AbstractZipCodeService
  • Sobrescreva os métodos getAddressData e validate
  • Declare o xml brazil_zipcode_services.xml no etc de seu módulo com o seguinte conteúdo
<?xml version="1.0" ?>
<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="brazil_zipcode_services.xsd">
   <service id="ID_UNICO_PARA_SEU_SERVICO">
       <name>NOME_DO_SEU_SERVICO</name>
       <class>VENDOR_DO_MODULO\NOME_DO_MODULO\Services\NOME_DA_CLASSE_SO_SEU_SERVICO</class>
   </service>
</services>
  • Instale seu módulo e limpe o cache.
  • Obs: Caso deseje priorizar seu serviço, acesse as configurações do módulo BrazilZipCode no admin e adicione seu serviço como o primeiro da lista, assim seu serviço será o primeiro a ser acessado quando o CEP não for localizado no cache ou banco de dados.

Doações

Doe agora e ajude a manter o trabalho! ;)

No momento estou recebendo doações apenas via PicPay através do usuário @walisson-ferreira

brazilzipcode's People

Contributors

feeh27 avatar m2-magedev avatar r-martins avatar robsoned avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.