floac/laravel-ukrpost

UkrPoshta API集成

1.0.1 2024-04-15 22:41 UTC

This package is auto-updated.

Last update: 2024-09-17 18:23:49 UTC


README

composer require floac/laravel-ukrpost

实现

可用功能

地址分类器

获取地区

获取地区列表

Floac\Ukrpost\Facades\Dictionary::regions(string $region_ua = null);

获取区域

获取区域列表

Floac\Ukrpost\Facades\Dictionary::districts(string $district_ua = null, int $region_id = null);

获取城市

获取居民点列表

Floac\Ukrpost\Facades\Dictionary::cities(string $city_ua = null, int $district_id = null, int $region_id = null);

获取街道

获取街道列表

Floac\Ukrpost\Facades\Dictionary::streets(string $street_ua = null, int $city_id = null, int $district_id = null, int $region_id = null);

获取房屋

获取街道房屋列表

Floac\Ukrpost\Facades\Dictionary::houses(int $street_id, string $housenumber = null);

获取邮局

获取邮政局信息

Floac\Ukrpost\Facades\Dictionary::postOffices(string $zip_code = null, int $street_id = null, int $city_id = null, int $district_id = null, int $region_id = null);

获取邮局营业时间

获取邮政局营业时间信息

Floac\Ukrpost\Facades\Dictionary::postOfficesOpenHours(string $zip_code, int $post_office_id = null);

通过地理定位获取邮局

获取最近的邮政局信息

Floac\Ukrpost\Facades\Dictionary::postOfficesByGeolocation(float $lat, float $long, int $maxdistance = 1);

通过邮编获取城市

通过邮编获取居民点信息

Floac\Ukrpost\Facades\Dictionary::citiesByPostcode(string $postcode);

通过邮编获取地址信息

通过邮编获取地址信息

Floac\Ukrpost\Facades\Dictionary::addressesByPostcode(string $postcode);

发货

地址

创建地址

    $api = new Floac\Ukrpost\Document\Api(
        'bearerToken',
        'counterpartyToken'
    );

    $address = new Floac\Ukrpost\Document\Models\Address($api);

    $address->set(
        postcode: '07401',
        country: 'UA',
        region: 'Київська',
        city: 'Бровари',
        district: 'Київський',
        street: 'Котляревського',
        houseNumber: '12',
        apartmentNumber: '33'
    );

    $address->save();

客户

创建客户

    $api = new Floac\Ukrpost\Document\Api(
        'bearerToken',
        'counterpartyToken'
    );

    $client = new Client($api);

    $client->set(
        firstName: 'Олександр',
        lastName: 'Петренко',
        phone: 380663443224,
        address: $address,
    );

    $client->save();

文件

创建发货

    $api = new Floac\Ukrpost\Document\Api(
        'bearerToken',
        'counterpartyToken'
    );

    $document = new Document($api);

    $document->save($senderClient, $recipientClient, $parcel);