All Projects → Velhron → dadata-bundle

Velhron / dadata-bundle

Licence: MIT license
Бандл для работы с API ДаДата.

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to dadata-bundle

librarify-back
Librarify. Creando una API con Symfony 5 es un curso completo sobre Symfony 5 en el que cuento cómo desarrollar una API desde cero empleando FOS Rest Bundle.
Stars: ✭ 30 (+114.29%)
Mutual labels:  symfony4, symfony5
EasyAuditBundle
A Symfony Bundle To Log Selective Events
Stars: ✭ 84 (+500%)
Mutual labels:  symfony4, symfony5
skeleton
4xxi Symfony Skeleton is an extension for the official Symfony Skeleton with symfony flex used in 4xxi
Stars: ✭ 54 (+285.71%)
Mutual labels:  symfony4
Part-DB-symfony
[WIP] A new Part-DB experience based on Symfony framework
Stars: ✭ 120 (+757.14%)
Mutual labels:  symfony5
7cart
7cart is a php7 project for building online shops, catalogs or service platforms. 7cart built with simple code and database schema. It is easy to support and fast.
Stars: ✭ 27 (+92.86%)
Mutual labels:  symfony4
sonata-multiupload-bundle
No description or website provided.
Stars: ✭ 29 (+107.14%)
Mutual labels:  symfony4
laravel-dadata
PHP SDK Laravel пакет работы с сервисом DaData.ru, для исправления синтаксических ошибок в информации контактных данных клиентов сайта и вывода подсказок поля форм.
Stars: ✭ 39 (+178.57%)
Mutual labels:  dadata
doctrine-json-odm
JSON Object-Document Mapping bundle for Symfony and Doctrine
Stars: ✭ 15 (+7.14%)
Mutual labels:  symfony4
woocommerce-dadata
WooCommerce DaData
Stars: ✭ 22 (+57.14%)
Mutual labels:  dadata
Symfony-4-by-Samples
Symfony 4 by Samples is a personal project in which I will be creating small demos with tutorial in which to learn the symfony framework 4. Each of the samples contains a README.md file that indicates the purpose of the sample plus an step by step guide to reproduce it. Basic topics, login and register form, authentication, webpack encore, sass…
Stars: ✭ 40 (+185.71%)
Mutual labels:  symfony4
dadata-client
Dadata Suggestions API client for Spring (Java)
Stars: ✭ 15 (+7.14%)
Mutual labels:  dadata-api
symfony-skeleton
Skeleton rest-api based on symfony
Stars: ✭ 15 (+7.14%)
Mutual labels:  symfony4
sekoliko
Sekoliko | MySchool | MonEcole : School management Software.
Stars: ✭ 39 (+178.57%)
Mutual labels:  symfony4
phpzlc-kernel
PHPZlc内核,规定了核心特性,必要组件,写法规范
Stars: ✭ 135 (+864.29%)
Mutual labels:  symfony4
umbrella
Umbrella framework
Stars: ✭ 98 (+600%)
Mutual labels:  symfony5
jobeet
Symfony 4.2 Jobeet Project
Stars: ✭ 28 (+100%)
Mutual labels:  symfony4
EasyAdminPlusBundle
EasyAdminPlusBundle is a Symfony 4 wrapper for the amazing EasyCorp/EasyAdminBundle
Stars: ✭ 39 (+178.57%)
Mutual labels:  symfony4
cart
Simple Symfony 4 shopping cart application. App boilerplate
Stars: ✭ 18 (+28.57%)
Mutual labels:  symfony4
payments-DDD-ES-tutorial
This is tutorial project to learn how to connect Symfony4 and docker compose with Domain Driven Design and Event Sourcing
Stars: ✭ 23 (+64.29%)
Mutual labels:  symfony4
stock-forecast
Simple stock & cryptocurrency price forecasting console application, using PHP Machine Learning library (https://github.com/php-ai/php-ml)
Stars: ✭ 76 (+442.86%)
Mutual labels:  symfony4

Symfony DaData

Build Status

Описание

Symfony DaDataBundle предназначен для работы с API сервиса ДаДата.

Установка

Данный бандл может быть установлен с помощью Composer.

Приложения, которые используют Symfony Flex

Откройте командную консоль, перейдите в каталог вашего проекта и выполните:

composer require velhron/dadata-bundle

Приложения, которые не используют Symfony Flex

Шаг #1: Загрузка бандла

Откройте командную консоль, перейдите в каталог вашего проекта и выполните следующую команду, чтобы загрузить последнюю стабильную версию этого пакета:

composer require velhron/dadata-bundle

Шаг #2: Активация бандла

Включите пакет, добавив его в список зарегистрированных пакетов в файле app/AppKernel.php вашего проекта:

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Velhron\DadataBundle\VelhronDadataBundle(),
        );

        // ...
    }

    // ...
}

Конфигурация

Создайте файл конфигурации config/packages/dadata.yaml

Пример

velhron_dadata:
    token: 'token'
    secret: 'secret'
    # Если у вас инфраструктура состоит из n-сервисов, которые обращаются в dadata, то для контроля запросов в dadata
    # в одной точке, Вам возможно потребуется прокси-кеш. Для замены оригинальных url от dadata на Ваш прокси, можете
    # заполнить следующие необязательные параметры
    #base_general_url: 'https://proxy_dadata.ru/proxy/v2'
    #base_cleaner_url: 'https://cleaner.proxy_dadata.ru/proxy/v1/clean'
    #base_suggestions_url: 'https://suggestions.proxy_dadata.ru/suggestions/proxy/4_1/rs'

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

Прежде всего, необходимо подключить для работы нужный вам сервис. Например:

<?php

// ...

use Velhron\DadataBundle\Service\DadataSuggest;

class BaseController extends AbstractController
{
    private $dadataSuggest;

    public function __construct(DadataSuggest $dadataSuggest)
    {
        $this->dadataSuggest = $dadataSuggest;
    }
}

Всего сервисов - 5, а именно:

  1. DadataSuggest - подсказки
  2. DadataClean - стандартизация
  3. DadataGeolocate - обратное геокодирование
  4. DadataIplocate - город по IP-адресу
  5. DadataGeneral - остальные методы

Все доступные методы можно посмотреть в самих классах.

Дополнительные параметры обычно передаются вторым параметром в виде ассоциативного массива. Все параметры аналогичны тем, что указаны на сайте ДаДаты.

API подсказок

Например, подсказки по адресам:

$response = $dadataSuggest->suggestAddress('москва хабар', ['count' => 10]);
$address = $response[0]->value;

Подсказки по организациям:

$response = $dadataSuggest->suggestParty('сбербанк', ['count' => 2]);
$inn = $response[0]->inn;

API стандартизации

Например, стандартизация ФИО:

$response = $dadataClean->cleanName('Срегей владимерович иванов');
$name = $response->result;

Обратное геокодирование

Например, адрес по координатам:

$response = $dadataGeolocate->geolocateAddress(55.878, 37.653);
$address = $response[0]->value;

Город по IP-адресу

Получение города по IP адресу:

$response = $dadataIplocate->iplocateAddress('46.226.227.20');
$city = $response->value;

Адрес по коду КЛАДР или ФИАС

Получение адреса по коду КЛАДР:

$response = $dadataSuggest->findAddress('77000000000268400');
$address = $response[0]->value;

Поиск аффилированных компаний

$response = $dadataSuggest->findAffiliatedParty('7736207543');
$value = $response[0]->value;

Лицензия

MIT License © Velhron

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].