3.7 KiB
3.7 KiB
QR-код механизм для подачи заявок через Telegram бота
✅ Что добавлено:
1. Модальное окно с QR-кодом
- Файл:
smartsoltech/web/templates/web/services_modern.html - Что добавлено:
- Секция QR-кода в модальном окне заявки
- JavaScript для обработки формы и генерации QR-кода
- Автоматический сброс формы при закрытии модального окна
2. Backend функциональность
- Существующий механизм: View
generate_qr_codeвsmartsoltech/web/views.py - Что работает:
- Создание клиента и заявки на услугу
- Генерация уникального токена для заявки
- Создание QR-кода с ссылкой на Telegram бота
- Сохранение QR-кода в папку static/qr_codes/
3. Telegram бот интеграция
- Файл:
smartsoltech/comunication/telegram_bot.py - Что работает:
- Обработка команды
/start request_{id}_token_{token} - Подтверждение заявки и связывание с chat_id пользователя
- Создание пользователя Django из данных Telegram
- Отправка подтверждающего сообщения
- Обработка команды
🔄 Workflow (Рабочий процесс):
- Пользователь заполняет форму в модальном окне на странице услуг
- JavaScript отправляет POST запрос на
/service/generate_qr_code/{service_id}/ - Django создает:
- Client (клиента)
- ServiceRequest (заявку на услугу)
- QR-код с ссылкой на Telegram бота
- Модальное окно показывает QR-код и ссылку "Открыть в Telegram"
- Пользователь сканирует QR-код или переходит по ссылке
- Telegram бот получает команду
/startс параметрами заявки - Бот подтверждает заявку, связывает с chat_id и отправляет подтверждение
🧪 Тестирование:
Откройте файл test_qr_functionality.html в браузере для подробных инструкций по тестированию.
Быстрый тест:
- Перейдите на http://localhost:8000/services/
- Нажмите "Заказать услугу" под любой услугой
- Заполните форму и отправьте
- Должен появиться QR-код
- Перейдите по ссылке в Telegram и нажмите "Start"
📁 Измененные файлы:
smartsoltech/web/templates/web/services_modern.html- добавлен QR-код в модальное окно- Использован существующий механизм в
smartsoltech/web/views.py-generate_qr_code - Использован существующий Telegram бот в
smartsoltech/comunication/telegram_bot.py
🎯 Результат:
Теперь пользователи могут подавать заявки на услуги через современное модальное окно, которое генерирует QR-код для подтверждения заявки через Telegram бота. Весь процесс автоматизирован и интегрирован с существующей системой.