mirror of
https://github.com/anthonyaxenov/atol-online.git
synced 2024-10-31 23:55:22 +00:00
AnthonyAxenov
e1303f4fdb
- в мониторинг добавлено о приведении к строке - актуализированы Client и Company - мелочи в соотв. классах
2.2 KiB
2.2 KiB
Работа с клиентами (покупателями)
Объект покупателя инициализируется следующим образом:
$customer = new AtolOnline\Entities\Client();
У объекта покупателя могут быть указаны любые из следующих атрибутов:
- email (тег ФФД 1008);
- ИНН (тег ФФД 1128);
- наименование (тег ФФД 1127);
- номер телефона (тег ФФД 1008).
Все эти атрибуты являются необязательными.
Если указаны одновременно и email, и номер телефона, то ОФД отправит чек только на email.
Указать эти атрибуты можно двумя способами:
// 1 способ - через конструктор
$customer = new AtolOnline\Entities\Client(
'John Doe', // наименование
'john@example.com', // email
'+1/22/99*73s dsdas654 5s6', // номер телефона +122997365456
'+fasd3\qe3fs_=nac990139928czc' // номер ИНН 3399013928
);
// 2 способ - через сеттеры
$customer = (new AtolOnline\Entities\Client())
->setEmail('john@example.com')
->setInn('+fasd3\q3fs_=nac9901 3928c-c')
->setName('John Doe')
->setPhone('+1/22/99*73s dsdas654 5s6');
// либо комбинация этих способов
Получить установленные значения атрибутов можно через геттеры:
$customer->getInn();
$customer->getEmail();
$customer->getName();
$customer->getPhone();
Объект класса приводится к JSON-строке автоматически или принудительно:
echo $customer;
$json_string = (string)$customer;
Чтобы получить те же данные в виде массива, нужно вызвать метод jsonSerialize()
:
$json_array = $customer->jsonSerialize();