====== Подписки (Услуги) ======
{{:mikbill:services:subscription_proper.jpg?1000 |}}
\\ Подписки вводились в биллинг с целью удовлетворить множественные потребности оказания услуг различных уровней и комплектаций.
==== Описание параметров ====
\\ На данный момент реализовано два типа услуг:
* **Базовые** - активируется всем абонента на тарифе, где подключена данная услуга с таким типом.
* **Индивидуальные** - активируется вручную сотрудником из админки или абонентом из лк.
Услугам можно задать периоды действия:
* **ежедневно фиксировано** - каждый день до 23:59
* **месячный** - до последнего дня месяца 23:59
Если активирована опция "как в тарифе", то период действия будет браться из логики [[admin/main/tariffs#основные|тарифа]] абонента.
Вид фактической услуги:
* **Абонплата** - используется для снятия средств.
* **Подарок** - используется для зачисления средств.
Так же подписки имеют условия срабатывания (услуги активируются/продляются только если абонент подходит под условия):
* **Безусловно (всегда)** - абонплата за подписку будет сниматься всегда.
* **Баланс >= 0 или Интернет включен** - абонплата за подписку будет сниматься только если баланс больше или равен 0 либо галочка "интернет" включена
* **Баланс < 0 или Интернет выкл** - абонплата за подписку будет сниматься только если баланс меньше 0 или галочка "интернет" выключена
* **Балан >= цена подписки и Интернет вкл** - абонплата за подписку будет сниматься только если баланс больше либо равен цене подписки и галочка "интернет" включена
* **Собственное SQL условие** - должно начинаться с "AND" или "OR". Подключенные таблицы: абоненты - u, тариф - p, настройки подписки на тарифе - spp.
Пример SQL условия: AND u.date_birth = CURDATE()
\\ Данное условие позволит активироваться подписке только в день рождения абонента.
\\ Пример SQL условия: AND u.uid IN (SELECT uid FROM users_custom_fields WHERE `key`='ext_legal_person' AND `value`='1')
\\ Данное условие позволит активироваться подписке только если абонент - юридическое лицо.
Можно задать срабатывание услуги по определенным состояниям абонентов:
* Обычный (должники тоже входят сюда)
* Заморожен
* Отключен
* Удален
Другие параметры:
* Группа услуги: группа подписки.
* Приоритет услуги - позиция подписки при её обработке ( 0 - самый высокий приоритет (первой обрабатывается))
* Middleware - выбор модуля iptv на который будут переданы данные для активации/деактивации сервиса.
* Вид:
* none - можно включать подписки без ограничений.
* тариф - в рамках "группы услуги" может быть активна только одна подписка с данным видом.
* пакет услуги - можно активировать только если есть подключенная подписка с видом "тариф"
* Категория - информативное поле
* Multicast ACL - .
* Активация сотрудником - разрешает активацию услуги сотрудниками.
* Активация абонентом - разрешает активацию услуги абонентам из лк.
* Лояльный перерасчет - при активации или досрочном отключении услуги будет произведен перерасчет для корректировки суммы снятия/возврата.
* Деактивация сотрудником - разрешает отключать услугу сотрудником.
* Деактивация абонентов - разрешает отключать услугу абонентом из лк.
* Услуга приостановлена - на время отключает услугу из списка для выбора без её удаления и открепления от тарифов (так же останавливается снятие АП по подписке)
* Описание услуги - отображается при выборе услуги в админке и ЛК.
* Как в тарифе - меняет логику периода действия на логику [[admin/main/tariffs#основные|тарифа]].
* Скидка - разрешает применять параметры скидки абонента к данной подписке.
Настройки Trial:
* Trial услуга - включает логику "триал"(временного) доступа к подписке.
* Цена активации - стоимость активации "триал" периода.
* Время действия - на сколько дней будет подключена триал подписка.
* По окончании периода изменить на подписку - в конце триал доступа будет подключена выбранная подписка.
После окончания действия триал подписки с временем действия, заново подключить её нельзя
Обработка услуг запускается:
* Для ежедневных - каждый день в 23:58
* Для ежемесячных - каждый месяц при переходе на первое число в 00:01
==== Взаимоисключения ====
**Взаимоисключение** - при заказе текущей подписки, отключит активные подписки абонента из списка взаимосиключений.
**Пример**: У нас есть три подписки START, FILMS, PREMIUM. В состав PREMIUM входит содержимое подписки FILMS.
**Задача**:
Настроить так чтобы:
* при заказе START отключалась PREMIUM (если активна) и при закзазе PREMIUM отключалась START (если активна)
* при заказе PREMIUM отключалась подписка FILMS так как PREMIUM в своем составе уже соержит FILMS
**Решение**:
* Для услуги START ставим взаимосиключение для услуги PREMIUM
* Для услуги PREMIUM ставим взаимосключение для услуг START и FILMS
==== Взаимовключения ====
**Взаимовключения ** - при заказе подписки будет происходить проверка на то, что данная услуга не в ходит в состав уже подключенных ранее подписок. При совпадении будет писать ошибку подключения.
**Пример**: У нас есть три подписки START, FILMS, PREMIUM. В состав PREMIUM входит содержимое подписки FILMS.
**Задача**:
Настроить так чтобы:
* не давало заказать FILMS при активной PREMIUM ,так как PREMIUM в своем составе уже содержит FILMS
**Решение**:
* Для услуги FILMS ставим взаимовключение для услуги PREMIUM
==== Добавление подписки на тариф ====
=== Из интерфейса свойств подписки ===
{{:mikbill:services:subscription_add_1.jpg?400 |}}
\\ Поставить галочки напротив нужных тарифов и сохранить
----
=== Из интерфейса свойств тарифа ===
{{:mikbill:services:subscription_add_2.jpg?400 |}}
\\ В свойстве тарифа, на вкладке "подписки", поставить галочки возле нужных подписок и нажать "сохранить".
===== Переопределение параметров подписки на тарифе =====
\\ Свойства подписки можно изменить отдельно для тарифа
{{:mikbill:services:subscription_edit.jpg?400 |}}
\\ Необходимо выделить нужную подписку и нажать "редактировать" (для редактирования подписки должна быть подключена к тарифу)
\\ Параметры подписки измененные в данном окне применятся только к данному тарифу.
===== Подключение / Отключение / Состояние =====
=== Подключение ===
{{:mikbill:services:user_subscription_add_1.jpg?300 |}}
{{:mikbill:services:user_subscription_add_2.jpg?300 |}}
{{:mikbill:services:user_subscription_add_3.jpg?300 |}}
\\ Из карточки абонента нажать "добавить", выбрать подписки и нажать "сохранить".
----
=== Отключение ===
{{:mikbill:services:user_subscription_del_1.jpg?400 |}}
{{:mikbill:services:user_subscription_del_2.jpg?400 |}}
\\ Из карточки абонента выбрать подключенную подписку и нажать "удалить", подтвердив действие.
----
=== Состояние ===
{{:mikbill:services:user_subscription_status.jpg?400 |}}
\\ **Активные подписки** - подписки за которые была снята АП.
\\ **Групповые подписки** - подключенные *базовые" подписки.
\\ **Управление подписками** - подключенные *индивидуальные" подписки.
===== Продление подписок =====
\\ Обработка подписок происходит во время снятия абон. платы по тарифу.
\\ У абонентов проходящим по условиям подписка будет продлена, остальным абонентам подписку отключит до момента когда абонент снова не подойдет по условиям активации.
===== Автоматические действия =====
\\ В момент пополнения или активации интернета происходит проверка на условия активации подписок.
\\ Во время смены состояния абонента (заморозка/отключение/удаление) все текущие активные подписки абонента будут деактивированы и удалены если их работа не предусмотрена на таком состоянии абонента.
\\ Во время разморозки абонента подключенные подписки будут пересчитаны и активированы, если абонент проходит по условиям активации.
\\ При создании абонента на тарифе с подключенной базовой подпиской, такая подписка будет добавлена и активирована абоненту автоматически.
===== Массовая принудительная активация =====
\\ При подключении базовой подписки, она активируется только после снятия АП.
\\ Сделано это во избежание "случайных" активаций базовых подписок на тарифе и как результат массового снятия денег у абонентов такого тарифа.
\\ Для принудительной массовой активации, воспользуйтесь кнопкой массовой активации выбранной подписки на тарифе
{{:mikbill:services:subscription_activate_tarif.jpg?400 |}}