Структура массива данных сертификата ($certificate)

При использовании хелперов, которые возвращают массив данных сертификата, вам может понадобиться подробная информация о данном массиве.

Места, где понадобится информация из статьи:

Рассмотрим массив данных сертификата:

/**
 * Данные сертификата
 *
 * array['id'] int ID сертификата
 * array['code'] string Код сертификата
 * array['to'] string Поле "Кому"
 * array['from'] string Поле "От"
 * array['send'] string Поле "Метод передачи сертификата". Доступные значения: email, post, user, not
 * array['message'] string Поле "Сообщение"
 * array['amount'] float Поле "Сумма"
 * array['currency'] string Поле с валютой
 * array['state_id'] int ID статуса сертификата
 * array['email'] string Поле "Email" для параметра send = email
 * array['post'] array Массив данных с адресом доставки для параметра send = post
 * array['post']['country'] string Страна в формате iso3letter
 * array['post']['region'] int ID региона
 * array['post']['city'] int Название города
 * array['post']['street'] int Поле для ввода адреса
 * array['post']['postcode'] int Индекс
 * array['post']['phone'] string Телефон
 * array['create_contact_id'] int ID контакта, создавшего сертификат
 * array['create_datetime'] string Дата создания сертификата
 * array['order_id'] int ID заказа, где был создан сертификат
 * array['contact_id'] int ID контакта, которому предназначается сертификат. Используется для параметра send = user
 * array['use_limitations'] int Использовать ограничение или нет. Доступные значения: 1 или 0
 * array['limitations'] array Массив с информацией об ограничениях
 * array['limitations']['expired'] string Дата истечения сертификата в формате: Y-m-d
 * array['limitations']['lifetime'] int Срок действия в днях.
 * array['limitations']['max'] float Максимальная сумма, которая может быть потрачена в %. Доступные значения от 0 до 100
 * array['limitations']['min'] array Массив в информацией о минимальной сумме заказа
 * array['limitations']['min']['value'] float Минимальная сумма заказа
 * array['limitations']['min']['currency'] string Валюта минимальной суммы заказа
 * array['lifetime_left'] int Оставшееся количество дней до истечения срока действия сертификата. Появляется, если используются ограничения
 * array['lifetime_expired'] string Дата истечения срока действия сертификата. Появляется, если используются ограничения
 * array['is_expired'] int Появляется только в случае, если срока действия сертификата истек
 * array['usage'] array Массив с данными о количестве использований сертификата
 * array['usage']['type'] string Тип сертификата: одноразовый (disposable) или многоразовый (multiple). Доступные значения: disposable, multiple
 * array['template'] string Используемый шаблон сертификата в виде HTML
 * array['template_is_changed'] int Был ли изменен стандартный шаблон сертификата
 * array['default_template'] string Шаблон сертификата по умолчанию
 * array['products'] array Массив информации о бесплатных товарах
 * array['products'][]['id'] int ID товара или артикула в зависимости от параметра type (см. ниже)
 * array['products'][]['certificate_id'] int ID сертификата
 * array['products'][]['product_id'] int ID товара
 * array['products'][]['sku_id'] int ID артикула товара
 * array['products'][]['name'] string Название товара
 * array['products'][]['price'] float Цена товара на момент заказа сертификата
 * array['products'][]['type'] string Тип товара: простой товар или конкретный артикул. Доступные значения: products или skus
 *
 * @param array $certificate (Параметры смотрите выше)
 * @return array
 **/
$certificate = [
    'id' => 51,
    'code' => 'GC-TTWQ9CKX96EJE',
    'to' => 'Любимому покупателю', 
    'from' => 'Лучшего магазина', 
    'send' => 'email',
    'message' => '', 
    'amount' => '500', 
    'currency' => 'RUB', 
    'state_id' => 5,
    'email' => 'test@test.com',
    'post' => [
        'country' => 'rus',
        'region' => '77',
        'city' => 'Москва',
        'street' => 'ул. Название улицы, д. 73, кв. 84',
        'postcode' => '353535',
        'phone' => '89999999999',
        'address' => '353535, Российская Федерация, Москва, ул. Название улицы, д. 73, кв. 84'
    ],
    'create_contact_id' => 5,
    'create_datetime' => '2020-08-17 08:08:30',
    'order_id' => 399,
    'contact_id' => 7, 
    'limitations' => [
        'expired' => '2040-10-28',
        'lifetime' => 30,
        'max' => 100,
        'min' => [
            'value' => 2000,    
            'currency' => 'RUB'
        ]
    ],
    'usage' => [
        'type' => 'disposable'
    ],
    'lifetime_left' => 27,
    'lifetime_expired' => '2020-12-09',
    'is_expired' => 1,
    'template' => 'HTML код сертификата',
    'template_is_changed' => 1,
    'default_template' => 'template3',
    'products' => [
        [
            'id' => 8740,
            'certificate_id' => 51,
            'product_id' => 8740,
            'sku_id' => 36698,
            'name' => 'Название товара',
            'price' => 1236.25,
            'type' => 'products',
        ],
        [
            'id' => 37898,
            'certificate_id' => 51,
            'product_id' => 8756,
            'sku_id' => 37898,
            'name' => 'Название товара (артикул)',
            'price' => 700,
            'type' => 'skus',
        ]
    ]