Свойства договора Crossroad
Операции, возвращающие подробную информацию о договоре, принимают параметр properties — список блоков через запятую.
Регистр значения не важен.
properties=address,balance,tariffs,services
Если параметр пуст, Crossroad запускает все загрузчики, у которых включена настройка default.
По умолчанию она включена для каждого загрузчика, поэтому пустой список может сформировать тяжёлый запрос.
Значение none отключает загрузчики и возвращает только базовые сведения о договоре.
Неизвестные значения игнорируются.
Доступные свойства
Значение properties |
Поле результата | Назначение |
|---|---|---|
|
|
Объекты договора. |
|
|
Адрес договора и связанные адресные данные. |
|
|
Текущие тарифы договора. |
|
|
Текущие тарифные опции. |
|
|
Услуги и продукты биллинговых модулей. |
|
|
Старый список дополнительных действий над договором. |
|
|
Расширенные действия из модуля contract-actions. |
|
|
Составляющие стоимости услуг. |
|
|
Баланс и рекомендуемая сумма по стандартной схеме. |
|
|
Баланс с альтернативным расчётом рекомендуемой суммы. |
|
Поля контрагента в договоре |
Загружает связанные параметры: контрагента, ФИО, тип лица и контактные данные. |
|
|
Состояние автоплатежа. |
|
|
Доступные способы оплаты. |
|
|
Платёжные провайдеры с приоритетами, ограничениями и минимальной суммой. |
|
|
Сведения о кешбэке. |
|
|
Баланс с расчётом рекомендуемой суммы по старой схеме. |
|
|
Все доступные параметры договора ABilling. |
|
|
Пароль статистики договора. |
|
|
Пароль TV-аккаунта. |
|
|
Поддерживаемые модули договора; список типов ограничивается конфигурацией. |
|
|
Группы договора. |
|
|
Тарифные опции без ограничения начальной датой, включая историю. |
|
|
Привязка договора к агломерации. |
|
|
Пакет синхронного списания и его статус. Поддерживается только для |
|
|
Сумма возврата. |
|
|
Id договора, на который выполнена миграция. |
|
|
Дата последнего изменения статуса. |
|
|
Дата окончания текущего статуса. |
|
|
Подпись к договору для оплаты через SberOnline. |
|
|
Признак необходимости сменить пароль. |
|
|
Организация договора. |
|
|
Предложения, добавленные обработчиками события |
|
|
Обобщённые типы услуг договора. |
Базовые поля
Даже при properties=none договор содержит основные сведения:
-
id и идентификатор биллинга;
-
номер, тип и статус договора;
-
даты начала и окончания;
-
id домена;
-
базовый список id субдоговоров, если они были запрошены.
Конкретные имена JSON-полей следует проверять по фактическому ответу. Большинство полей сериализуется в camelCase, несмотря на оставшиеся в Java-моделях Gson-аннотации со snake_case.
Диагностика загрузки
Для каждого выполненного загрузчика в meta добавляется объект:
{
"property": "balance",
"duration": 34,
"error": null,
"cached": false
}
duration-
Время обработки свойства в миллисекундах.
error-
Текст ошибки. Ошибка свойства не прерывает весь запрос.
cached-
true, если значение прочитано из кеша;false, если получено заново.
Если загрузчик не поддерживает тип договора, запись meta для него не создаётся.
Настройка отдельного свойства
Для каждого id из таблицы доступны одинаковые ключи:
crossroad.props.<id>.default=true
crossroad.props.<id>.cached=false
crossroad.props.<id>.cacheExpire=3600
crossroad.props.<id>.timeout=4000
default-
Загружать свойство, когда клиент не передал
properties. cached-
Хранить значение в Redis-кеше Crossroad.
cacheExpire-
Время жизни кеша в секундах.
timeout-
Заявленный лимит в миллисекундах. В текущей реализации значение читается из конфигурации, но не применяется при запуске загрузчика.
Ключи строятся по id в нижнем регистре, например crossroad.props.balance.cached=true.