Some checks reported errors
continuous-integration/drone/push Build encountered an error
Основные изменения: ✨ Новые функции: - Система регистрации пользователей с множественными счетами - Автоматическое подтверждение выигрышей через inline-кнопки - Механизм переигровки для неподтвержденных выигрышей (24 часа) - Подтверждение на уровне счетов (каждый счет подтверждается отдельно) - Скрипт полной очистки базы данных 🔧 Технические улучшения: - Исправлена ошибка MissingGreenlet при lazy loading (добавлен joinedload/selectinload) - Добавлено поле claimed_at для отслеживания времени подтверждения - Пакетное добавление счетов с выбором розыгрыша - Проверка владения конкретным счетом при подтверждении 📚 Документация: - docs/AUTO_CONFIRM_SYSTEM.md - Полная документация системы подтверждения - docs/ACCOUNT_BASED_CONFIRMATION.md - Подтверждение на уровне счетов - docs/REGISTRATION_SYSTEM.md - Система регистрации - docs/ADMIN_COMMANDS.md - Команды администратора - docs/CLEAR_DATABASE.md - Очистка БД - docs/QUICK_GUIDE.md - Быстрое начало - docs/UPDATE_LOG.md - Журнал обновлений 🗄️ База данных: - Миграция 003: Таблицы accounts, winner_verifications - Миграция 004: Поле claimed_at в таблице winners - Скрипт scripts/clear_database.py для полной очистки 🎮 Новые команды: Админские: - /check_unclaimed <lottery_id> - Проверка неподтвержденных выигрышей - /redraw <lottery_id> - Повторный розыгрыш - /add_accounts - Пакетное добавление счетов - /list_accounts <telegram_id> - Список счетов пользователя Пользовательские: - /register - Регистрация с вводом данных - /my_account - Просмотр своих счетов - Callback confirm_win_{id} - Подтверждение выигрыша 🛠️ Makefile: - make clear-db - Очистка всех данных из БД (с подтверждением) 🔒 Безопасность: - Проверка владения счетом при подтверждении - Защита от подтверждения чужих счетов - Независимое подтверждение каждого выигрышного счета 📊 Логика работы: 1. Пользователь регистрируется и добавляет счета 2. Счета участвуют в розыгрыше 3. Победители получают уведомление с кнопкой подтверждения 4. Каждый счет подтверждается отдельно (24 часа на подтверждение) 5. Неподтвержденные выигрыши переигрываются через /redraw
153 lines
4.5 KiB
Markdown
153 lines
4.5 KiB
Markdown
# Быстрая шпаргалка - Команды администратора
|
||
|
||
## 🚀 Основные команды
|
||
|
||
### Добавление счетов
|
||
|
||
**Один счет (быстро):**
|
||
```
|
||
/add_account 2223 11-22-33-44-55-66-77
|
||
```
|
||
|
||
**Несколько счетов (пакетом):**
|
||
```
|
||
/add_account
|
||
|
||
2223 11-22-33-44-55-66-77
|
||
2223 88-99-00-11-22-33-44
|
||
3334 12-34-56-78-90-12-34
|
||
```
|
||
|
||
### Управление счетами
|
||
|
||
```
|
||
/remove_account 11-22-33-44-55-66-77 # Деактивировать
|
||
/user_info 2223 # Информация о пользователе
|
||
```
|
||
|
||
### Работа с розыгрышами
|
||
|
||
```
|
||
/winner_status 1 # Статус победителей
|
||
/verify_winner AB12CD34 1 # Подтвердить выигрыш
|
||
```
|
||
|
||
---
|
||
|
||
## 📋 Типичные сценарии
|
||
|
||
### Новый клиент (полный цикл)
|
||
|
||
1. Клиент регистрируется: `/start` → "Зарегистрироваться"
|
||
2. Админ добавляет счета:
|
||
```
|
||
/add_account 2223 11-22-33-44-55-66-77
|
||
```
|
||
3. Выбрать розыгрыш из списка
|
||
4. Готово!
|
||
|
||
### Массовое добавление (10+ счетов)
|
||
|
||
```
|
||
/add_account
|
||
|
||
2223 11-22-33-44-55-66-77
|
||
2223 22-33-44-55-66-77-88
|
||
3334 33-44-55-66-77-88-99
|
||
3334 44-55-66-77-88-99-00
|
||
5556 55-66-77-88-99-00-11
|
||
```
|
||
|
||
→ Выбрать розыгрыш → Готово!
|
||
|
||
### Проведение розыгрыша
|
||
|
||
1. В боте: "Розыгрыши" → Выбрать → "Провести розыгрыш"
|
||
2. Победители получат уведомления автоматически
|
||
3. Проверить: `/winner_status 1`
|
||
|
||
### Подтверждение победителя
|
||
|
||
1. Победитель сообщает код: `AB12CD34`
|
||
2. Админ: `/verify_winner AB12CD34 1`
|
||
3. Система подтверждает и уведомляет победителя
|
||
|
||
---
|
||
|
||
## 💡 Полезные советы
|
||
|
||
- **Формат счета:** `XX-XX-XX-XX-XX-XX-XX` (7 пар цифр)
|
||
- **Клубная карта:** Любые цифры (например: 2223, 5556)
|
||
- **Код верификации:** Генерируется автоматически при регистрации
|
||
- **Отмена операции:** `/cancel` во время ввода данных
|
||
|
||
---
|
||
|
||
## ⚠️ Частые ошибки
|
||
|
||
| Ошибка | Причина | Решение |
|
||
|--------|---------|---------|
|
||
| "Пользователь не найден" | Клубная карта не зарегистрирована | Попросить зарегистрироваться через /start |
|
||
| "Счет уже существует" | Номер занят другим пользователем | Проверить номер или деактивировать старый |
|
||
| "Неверный формат" | Формат счета неправильный | Использовать XX-XX-XX-XX-XX-XX-XX |
|
||
| Нет розыгрышей | Нет активных розыгрышей | Создать розыгрыш через админ-панель |
|
||
|
||
---
|
||
|
||
## 🔍 Проверка данных
|
||
|
||
### Проверить пользователя:
|
||
```
|
||
/user_info 2223
|
||
```
|
||
|
||
Увидите:
|
||
- Все счета пользователя
|
||
- Код верификации
|
||
- Историю выигрышей
|
||
|
||
### Проверить победителей:
|
||
```
|
||
/winner_status 1
|
||
```
|
||
|
||
Увидите:
|
||
- Список всех победителей
|
||
- Статус подтверждения (✅/⏳)
|
||
- Информацию о владельцах
|
||
|
||
---
|
||
|
||
## 📞 Пользовательские команды
|
||
|
||
Клиенты используют:
|
||
- `/start` - Главное меню / регистрация
|
||
- `/my_code` - Показать код верификации
|
||
- `/my_accounts` - Список счетов
|
||
- "Мой счет" (через меню) - Подробная информация
|
||
|
||
---
|
||
|
||
## 🎯 Быстрый старт (за 1 минуту)
|
||
|
||
```bash
|
||
# 1. Клиент регистрируется
|
||
Клиент → /start → "Зарегистрироваться" → Вводит данные
|
||
|
||
# 2. Админ добавляет счета
|
||
/add_account
|
||
2223 11-22-33-44-55-66-77
|
||
2223 88-99-00-11-22-33-44
|
||
|
||
# 3. Выбрать розыгрыш
|
||
Нажать "🎯 Новогодний розыгрыш"
|
||
|
||
# 4. Провести розыгрыш
|
||
"Розыгрыши" → Выбрать → "Провести"
|
||
|
||
# 5. Подтвердить победителя
|
||
/verify_winner AB12CD34 1
|
||
|
||
✅ Готово!
|
||
```
|