appwilio / cdek-sdk

SDK для СДЭК
https://confluence.cdek.ru/x/gUju
MIT License
40 stars 8 forks source link

Опциональная установка SendCityCode и RecCityCode #4

Closed volga closed 6 years ago

volga commented 6 years ago

Добавлена возможность указать SendCityCode и RecCityCode равными null, посредством установки cвойства Code модели City равного 0. Т.к. API СДЭК устанавливает данные параметры как необязательные, а справочник городов СДЭК представлен не в очень удобной форме - таблицах Excel - в реальной жизни в большинстве случаев удобно указать только почтовый индекс городов отправления и получения.

jhaoda commented 6 years ago

@Volga не очень понимаю... Т.е. вы передали в заказ город в виде City::create(['PostCode' => '1276', 'Code' => 0]), потом заказ сериализуется и 0 превращается в null?

А если Code не передавать, то во что он сериализуется?

volga commented 6 years ago

@jhaoda, Если ничего не передать - будет Exception "Return value of Appwilio\CdekSDK\Common\City::getCode() must be of the type integer, null returned", как и есть сейчас.

jhaoda commented 6 years ago

@Volga а если ослабить типизацию до getCode(): ?int, то поможет?

volga commented 6 years ago

@jhaoda, согласен - поможет. Закрываю этот запрос. Ослабление типизации оформил отдельным запросом: https://github.com/appwilio/cdek-sdk/pull/5