/dadata

Primary LanguagePHPMIT LicenseMIT

Laravel DaData

Пакет работы с сервисом [DaData.ru]https://dadata.ru, для исправления синтаксических ошибок в информации контактных данных клиентов сайта и вывода подсказок поля форм.

Установка

Запустить:

composer require "HamasakiBrain/laravel-dadata"

Для Laravel < 5.5: Зарегистрировать service-provider в config/app.php:

  HamasakiBrain\Dadata\DadataServiceProvider::class,

Для Lumen добавить в bootstrap/app.php:

$app->withFacades();

Опубликовать конфиг:

php artisan vendor:publish --provider="HamasakiBrain\Dadata\DadataServiceProvider"

Задать токет (и ключ для API стандартизации) в config/dadata.php или .env

    'token' => env('DADATA_TOKEN', ''),
    'secret' => env('DADATA_SECRET', ''),

Использование

Сервис подсказок (https://dadata.ru/api/suggest/)

Добавить в клас фасад:

use HamasakiBrain\Dadata\Facades\DadataSuggest;
  1. Пример использование метода с параметрамы:

    $result = DadataSuggest::suggest("address", ["query"=>"Москва", "count"=>2]);
    print_r($result);

    Первым параметором может быть: fio, address, party, email, bank

  2. Пример использование поиска по ИНН или ОГРН с параметрамы:

    $result = DadataSuggest::partyById('5077746329876', ["branch_type"=>"MAIN"]);
    print_r($result);

    Первым параметором может быть ИНН, ОГРН или Dadata HID

Сервис стандартизации (https://dadata.ru/api/clean/)

Добавить в клас фасад:

use HamasakiBrain\Dadata\Facades\DadataClean;

Использовать методы:

$response = DadataClean::cleanAddress('мск сухонска 11/-89');
$response = DadataClean::cleanPhone('тел 7165219 доб139');
$response = DadataClean::cleanPassport('4509 235857');
$response = DadataClean::cleanName('Срегей владимерович иванов');
$response = DadataClean::cleanEmail('serega@yandex/ru');
$response = DadataClean::cleanDate('24/3/12');
$response = DadataClean::cleanVehicle('форд фокус');
$response = DadataClean::getStatistics();
$response = DadataClean::getStatistics(now()->subDays(6));
print_r($response);

Проверка баланса системи

$response = DadataClean::getBalance();

Получение статистики использования всех сервисов

На текущий день:

$response = DadataClean::getStatistics();

На любую другую дату:

$response = DadataClean::getStatistics(now()->subDays(6));
// or
$response = DadataClean::getStatistics('2019-11-01');

Ссылки, документация, API: