Skip to content

Latest commit

 

History

History
72 lines (52 loc) · 3.43 KB

File metadata and controls

72 lines (52 loc) · 3.43 KB

Правила рейтинга айдолов

Общее

  • Рейтинг формируется только у айдолов (is_idol = true)
  • Диапазон: 0–100, хранится как decimal(5,2) (до двух знаков после запятой)
  • Начальное значение при создании: 20.00
  • Порог «низкого рейтинга»: 30 (настраивается в PlatformSettings → rating_low_threshold)
  • При пересечении порога 30 вниз айдол получает уведомление LowRatingWarningNotification

События и базовые дельты

Событие Дельта Триггер
review_5star +0.8 Заказчик оставил отзыв 5★
review_4star +0.4 Заказчик оставил отзыв 4★
review_3star 0 Заказчик оставил отзыв 3★
review_2star −0.5 Заказчик оставил отзыв 2★
review_1star −1.2 Заказчик оставил отзыв 1★
order_completed +0.2 Заказ завершён (оба подтвердили) или завершён автоматически/администратором
report_accepted −2.0 Жалоба на айдола принята администратором (reviewed)
review_dispute_approved +0.6 Спор по отзыву одобрен администратором (отзыв скрыт)
admin_manual произвольная Ручное изменение администратором

Формула асимптотики

Применяется только к положительным дельтам. Чем выше рейтинг, тем медленнее он растёт:

effectiveDelta = max(0.01, round(baseDelta × (100 − currentRating) / 80, 2))

Отрицательные дельты (штрафы) применяются в полном размере без изменений.

Примеры для отзыва 5★ (baseDelta = +0.8)

Текущий рейтинг Эффективная дельта
20 +0.80
50 +0.50
75 +0.25
90 +0.10
95 +0.05
100 +0.01 (минимум)

Защита от накрутки

  • Один отзыв на пару (reviewer, idol) — уникальный индекс в БД
  • Отзыв можно оставить только на завершённый заказ (status = completed)
  • Публикация постов на рейтинг не влияет
  • Отмена заказа айдолом не штрафует напрямую — заказчик может подать репорт

Логирование

Каждое изменение записывается в таблицу idol_rating_logs:

  • user_id — айдол
  • event — название события
  • delta — фактически применённая дельта (уже с учётом асимптотики)
  • note — примечание (для admin_manual)
  • created_at — время изменения

Просмотр логов в админке: Рейтинг айдолов (с фильтрами по айдолу и дате).