mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-28 09:33:46 +00:00
feat(promocodes): состав промокода чекбоксами — баланс / дни / промогруппа
Форма создания промокода переведена с жёсткого выбора одного типа на режим «Набор бонусов»: галочками выбирается, что входит в промокод — бонус на баланс, дни подписки, промогруппа — в любой комбинации. Тип для бэкенда выводится из выбора (balance / subscription_days / balance_and_days / promo_group), промогруппа едет через promo_group_id при любом типе (бэкенд назначает её при активации независимо от типа). Триал и процентная скидка остаются отдельными режимами: скидка переиспользует те же колонки с другой семантикой (процент/часы) и не комбинируется без миграции. - список и статистика: лейбл/цвет нового типа balance_and_days, у составных кодов видны оба значения (+руб и +дни) - edit-режим восстанавливает чекбоксы из типа и promo_group_id - унифицирована валидация формы (isValid = список ошибок пуст; для скидки 0 часов = «до первой покупки» — разрешено, как и было в isValid) - локали ru/en/fa/zh Парный PR бэкенда: remnawave-bedolaga-telegram-bot (тип BALANCE_AND_DAYS, порядок эффектов дни→баланс, валидации, бот-визард).
This commit is contained in:
@@ -7,7 +7,8 @@ export type PromoCodeType =
|
||||
| 'subscription_days'
|
||||
| 'trial_subscription'
|
||||
| 'promo_group'
|
||||
| 'discount';
|
||||
| 'discount'
|
||||
| 'balance_and_days';
|
||||
|
||||
export interface PromoCode {
|
||||
id: number;
|
||||
|
||||
Reference in New Issue
Block a user