Wyszukiwanie firmy w GUS

  • kontrolery:
    N1ebieski\IDir\Http\Controllers\Web\FieldController
    N1ebieski\IDir\Http\Controllers\Admin\Field\FieldController


# Opis

Domyślne pola formularza typu "wyszukiwarka" domyślnie nie przypisane do żadnej z grup. Użytkownik ma możliwość wyszukać dane firmy w Głównym Urzędzie Statystycznym po numerze NIP, REGON lub KRS. Pobrane dane są automatycznie wstrzykiwane w odpowiednie pola formularza. W przypadku wykrycia komponentu mapy Google stosowny marker zostaje również automatycznie naniesiony na mapę.

Absolutnie nie wolno usuwać tego pola. Z poziomu panelu administracyjnego taka czynność jest niedostępna bez względu na uprawnienia.

# Konfiguracja

Do działania wymagany jest aktywny klucz API GUS, który należy wstawić w pliku .env w głównym folderze aplikacji:

GUS_API_KEY=

O klucz należy zawnioskować na stronie GUS API REGON.

Odpowiednie pola formularza należy powiązać za pomocą numerów ID (dostępne z poziomu panelu administracyjnego w zakładce Pola formularza) w pliku konfiguracyjnym config/idir.php:

'field' => [
    'gus' => [
        'name' => null,
        'street' => null,
        'propertyNumber' => null,
        'apartmentNumber' => null,
        'zipCode' => null,
        'city' => null,
        'regions' => null,
        'district' => null,
        'community' => null,
        'nip' => null,
        'regon' => null,
        'map' => null
    ]
],

Wartość typu null oznacza, że wartość nie będzie uwzględniona przy wstrzykiwaniu danych z API GUS do pól formularza.

# Przykłady

'field' => [
    'gus' => [
        'name' => 3,

Nazwa firmy np. INTELEKT Mariusz Wysokiński zostanie wstrzyknięta w pole o ID 3. Do tego celu najlepiej wykorzystać pole typu input.

Jeśli kilka wartości z API GUS ma zostać połączonych w jedno pole należy użyć tych samych numerów ID oraz ewentualnie użyć separatora:

'field' => [
    'gus' => [
        'street' => 4,
        'propertyNumber' => [
            'separator' => ' ',
            'id' => 4
        ],
        'apartmentNumber' => [
            'separator' => '/',
            'id' => 4
        ],
        'zipCode' => [
            'separator' => ', ',
            'id' => 4
        ],
        'city' => [
            'separator' => ' ',
            'id' => 4
        ],

Połączone dane z GUS w formacie: ul. Platynowa 15/22, 80-041 Gdańsk zostaną wstrzyknięte w pole o ID 4.