mrcnpdlk/mojepanstwo-api

MojePanstwo API

v0.2.1 2017-12-03 00:28 UTC

This package is not auto-updated.

Last update: 2024-09-20 07:30:11 UTC


README

Latest Stable Version Latest Unstable Version Total Downloads Monthly Downloads License

Scrutinizer Code Quality Build Status Code Coverage

Maintainability

mojepanstwo-api

API v3 for https://mojepanstwo.pl

API 覆盖范围

对于返回 QueryBuilder 对象的方法,您可以使用以下操作来指定自己的条件

基本用法

客户端设置

库支持基于 PSR-16 标准的缓存块。

以下示例使用了 phpfastcache/phpfastcachephpfastcache/phpfastcache 支持许多端点,例如 FilesSqliteRedis 以及许多其他。有关使用缓存和配置的更多信息,请参阅此 Wiki。库还支持基于 PSR-3 标准的日志包,例如非常流行的 monolog/monolog

推送日志和缓存实例。不是必需的,但建议为了更好的性能。

    $oInstanceCacheRedis = new \phpFastCache\Helper\Psr16Adapter(
        'redis',
        [
            "host"                => null, // default localhost
            "port"                => null, // default 6379
            'defaultTtl'          => 3600 * 24, // 24h
            'ignoreSymfonyNotice' => true,
        ]);

    $oInstanceLogger = new \Monolog\Logger('MOJEPANSTWO');
    $oInstanceLogger->pushHandler(new \Monolog\Handler\ErrorLogHandler(
            \Monolog\Handler\ErrorLogHandler::OPERATING_SYSTEM,
            \Psr\Log\LogLevel::DEBUG
        )
    );


    $oClient = new \mrcnpdlk\MojePanstwo\Client();
    $oClient->setCacheInstance($oInstanceCacheRedis)
            ->setLoggerInstance($oInstanceLogger)
    ;

获取 KRS 实体

请求

可用的拉取标志
  • KrsEntity::PULL_NONE
  • KrsEntity::PULL_COMPANIES - 层 firmy
  • KrsEntity::PULL_DEPARTMENTS - 层 oddzialy
  • KrsEntity::PULL_PARTNERS - 层 wspolnicy
  • KrsEntity::PULL_PKDS - 层 dzialalnosci
  • KrsEntity::PULL_SHARES - 层 emisje_akcji
  • KrsEntity::PULL_PERSON_REPRESENTATION - 层 reprezentacja
  • KrsEntity::PULL_PERSON_SUPERVISION - 层 nadzor
  • KrsEntity::PULL_PERSON_PROXY - 层 prokurenci
  • KrsEntity::PULL_PERSON_FOUNDING - 层 komitetZalozycielski
  • KrsEntity::PULL_ALL - 所有层
    $oApi = \mrcnpdlk\MojePanstwo\Api::create($oClient);

    $res = $oApi->getKrsEntity('0000359730',\mrcnpdlk\MojePanstwo\Model\KrsEntity::PULL_ALL);
    print_r($res);

响应

mrcnpdlk\MojePanstwo\Model\KrsEntity Object
(
    [id] => 359730
    [krs] => 0000359730
    [nip] => 1231216692
    [regon] => 
    [nazwa] => FUNDACJA EPAŃSTWO
    .
    .
    [wczesniejsza_rejestracja_str] => 
    [www] => BIURO @EPF.ORG.PL
    [wykreslony] => 0
    [dzialalnosci] => Array
        (
        )
    [emisje_akcji] => Array
        (
        )
    [firmy] => Array
        (
        )
    [nadzor] => Array
        (
            [0] => mrcnpdlk\MojePanstwo\Model\KrsEntity\Person Object
                (
                    [osoba_id] => 418604
                    [nazwa] => XXXXX Michał Grzegorz
                    [data_urodzenia] => 1977-03-12
                    [privacy_level] => 0
                    [funkcja] => 
                )
            [1] => mrcnpdlk\MojePanstwo\Model\KrsEntity\Person Object
                (
                    [osoba_id] => 447892
                    [nazwa] => XXXXX Maciej Rafał
                    [data_urodzenia] => 1977-07-21
                    [privacy_level] => 0
                    [funkcja] => 
                )
            [2] => mrcnpdlk\MojePanstwo\Model\KrsEntity\Person Object
                (
                    [osoba_id] => 8972
                    [nazwa] => XXXXX Jakub Mirosław
                    [data_urodzenia] => 1985-09-23
                    [privacy_level] => 0
                    [funkcja] => 
                )
        )
    [prokurenci] => Array
        (
        )
    [reprezentacja] => Array
        (
            [0] => mrcnpdlk\MojePanstwo\Model\KrsEntity\Person Object
                (
                    [osoba_id] => 8971
                    [nazwa] => XXXXX Daniel
                    [data_urodzenia] => 1984-04-03
                    [privacy_level] => 0
                    [funkcja] => Prezes Zarządu
                )
            [1] => mrcnpdlk\MojePanstwo\Model\KrsEntity\Person Object
                (
                    [osoba_id] => 146037
                    [nazwa] => XXXXXX Krzysztof Kazimierz
                    [data_urodzenia] => 1981-12-03
                    [privacy_level] => 0
                    [funkcja] => Członek Zarządu
                )
        )
    [wspolnicy] => Array
        (
        )
    [oddzialy] => Array
        (
        )
)

搜索 KRS 实体

请求

调用 searchKrsEntity() 方法返回 QueryBuilder 实例,并提供额外的函数如 limit()where()page()。最后调用方法 get() 以接收 SearchResponse 对象。

    $res = $oApi->searchKrsEntity()
                ->limit(2)
                ->where('wojewodztwo_id', 2)
                ->page(2)
                ->get()
    ;
    print_r($res);

响应

mrcnpdlk\MojePanstwo\Model\SearchResponse Object
(
   [count] => 21102
   [took] => 340
   [links] => mrcnpdlk\MojePanstwo\Model\SearchResponseLinks Object
       (
           [self] => https://api-v3.mojepanstwo.pl/dane/krs_podmioty/?conditions%5Bkrs_podmioty.wojewodztwo_id%5D=2&page=2&limit=2&_type=objects
           [first] => https://api-v3.mojepanstwo.pl/dane/krs_podmioty/?conditions%5Bkrs_podmioty.wojewodztwo_id%5D=2&page=1&limit=2&_type=objects
           [next] => https://api-v3.mojepanstwo.pl/dane/krs_podmioty/?conditions%5Bkrs_podmioty.wojewodztwo_id%5D=2&page=3&limit=2&_type=objects
           [last] => https://api-v3.mojepanstwo.pl/dane/krs_podmioty/?conditions%5Bkrs_podmioty.wojewodztwo_id%5D=2&page=10551&limit=2&_type=objects
       )

   [items] => Array
       (
           [0] => mrcnpdlk\MojePanstwo\Model\SearchResponseItem Object
               (
                   [id] => 699600
                   [dataset] => krs_podmioty
                   [url] => https://api-v3.mojepanstwo.pl/dane/krs_podmioty/699600
                   [mp_url] => https://mojepanstwo.pl/dane/krs_podmioty/699600
                   [schema_url] => https://api-v3.mojepanstwo.pl/schemas/dane/krs_podmioty.json
                   [global_id] => 58872094
                   [slug] => correct-context
                   [score] => 
                   [data] => mrcnpdlk\MojePanstwo\Model\KrsEntity Object
                       (
                           [id] => 699600
                           [krs] => 0000699600
                           [nip] => 9532727782
                           [regon] => 
                           [nazwa] => CORRECT CONTEXT SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ
                           [nazwa_skrocona] => CORRECT CONTEXT
                           .
                           .
                           .
                       )
               )
               .
               .
               .
       )
)

获取 KRS 个人

请求

可用的拉取标志
  • KrsPerson::PULL_NONE
  • KrsPerson::PULL_KRS_ENTITIES
  • KrsPerson::PULL_ALL
    $oApi = \mrcnpdlk\MojePanstwo\Api::create($oClient);

    $res = $oApi->getKrsPerson('1491928',\mrcnpdlk\MojePanstwo\Model\KrsPerson::PULL_ALL);
    print_r($res);

搜索 KRS 个人

请求

调用 searchKrsPerson() 方法返回 QueryBuilder 实例,并提供额外的函数如 limit()where()/whereQ()page()。最后调用方法 get() 以接收 SearchResponse 对象。

    $res = $oApi->searchKrsPerson()
                ->whereQ('Jan Nowak')
                ->get()
    ;
    print_r($res);