talismanfr / rosselhozbank-api
Library for working with API Bank. Used bank web page.
dev-master
2020-01-29 13:55 UTC
Requires
- php: >=7.2.0
- ext-curl: *
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^8
This package is auto-updated.
Last update: 2024-04-29 04:20:14 UTC
README
По сути это веб страница.
Библитека позволяет автомазировать отправку лидов через бекенд.
Установка
composer require --prefer-dist "talismanfr/rosselhozbank-api":"dev-master"
Использование
Сама форма отправляет много параметров, но многие из них константные или не обязательыне.
Быстрый старт:
//формируем объект запроса /** * Можно использовать конструктор для полного контроля всех параметров.@api * Ниже представлен фабричный метод который создает объект `Request` с минимальным * достаточным набором данных */ /** @var \talismanfr\rosselhozbank\dto\Request $request */ $request=Request::simpleCreate(12345678, 'ООО ТЕСТОВАЯ МЯСОРУБКА', new \talismanfr\rosselhozbank\shared\InnValue('701771570807'), 'ООО РОГА И КОПЫТА','Петров Владислав Юсупович', new \talismanfr\rosselhozbank\shared\PhoneValue('+79675319122'),null, new \talismanfr\rosselhozbank\dto\RegionBranch(1674,'Санкт-Петербургский филиал','Санкт-Петербург'), 'comment'); //получаем компонент апи /** @var \talismanfr\rosselhozbank\Api $api */ $api=new Api(); //отправляем запрос на заявку /** @var \talismanfr\rosselhozbank\shared\CurlResponse $response */ $response=$api->sendRequest($request); //тело ответа возращается как есть, без десирилизации и пр. echo $response->getBody();
Проверка ИНН
$inn=new \talismanfr\rosselhozbank\shared\InnValue('253716541797'); //получаем компонент апи /** @var \talismanfr\rosselhozbank\Api $api */ $response=$api->innCheck($inn); //тело ответа возращается как есть, без десирилизации и пр. echo $response->getBody();
Обязательным параметром является код региона (причем внутрений банка) и название региона.
Для его задачи используется объект \talismanfr\rosselhozbank\dto\RegionBranch
.
Можно получить список кодов через url.
Для упрощения работы с отделениями описал контракт на хранилище и реализацию с использование этой самой ссылки.
/** * Реализует контракт RegionBranchStore */ $store=new \talismanfr\rosselhozbank\stores\RegionBranchStoreUrlJson(null); $all=$store->findAll(); foreach ($all as $branch){ echo $branch->getBranchName().' '.$branch->getId().PHP_EOL; }
В своем DI контейнеры может подменить реализацию на что-то своё и брать из базы или кэша.
Тесты
В наличии.