init commit

This commit is contained in:
2025-11-24 07:02:33 +09:00
commit 7bf003e70d
488 changed files with 51130 additions and 0 deletions

View File

@@ -0,0 +1,60 @@
# 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 (Рабочий процесс):
1. **Пользователь** заполняет форму в модальном окне на странице услуг
2. **JavaScript** отправляет POST запрос на `/service/generate_qr_code/{service_id}/`
3. **Django** создает:
- Client (клиента)
- ServiceRequest (заявку на услугу)
- QR-код с ссылкой на Telegram бота
4. **Модальное окно** показывает QR-код и ссылку "Открыть в Telegram"
5. **Пользователь** сканирует QR-код или переходит по ссылке
6. **Telegram бот** получает команду `/start` с параметрами заявки
7. **Бот** подтверждает заявку, связывает с chat_id и отправляет подтверждение
## 🧪 Тестирование:
Откройте файл `test_qr_functionality.html` в браузере для подробных инструкций по тестированию.
Быстрый тест:
1. Перейдите на http://localhost:8000/services/
2. Нажмите "Заказать услугу" под любой услугой
3. Заполните форму и отправьте
4. Должен появиться QR-код
5. Перейдите по ссылке в Telegram и нажмите "Start"
## 📁 Измененные файлы:
1. `smartsoltech/web/templates/web/services_modern.html` - добавлен QR-код в модальное окно
2. Использован существующий механизм в `smartsoltech/web/views.py` - `generate_qr_code`
3. Использован существующий Telegram бот в `smartsoltech/comunication/telegram_bot.py`
## 🎯 Результат:
Теперь пользователи могут подавать заявки на услуги через современное модальное окно, которое генерирует QR-код для подтверждения заявки через Telegram бота. Весь процесс автоматизирован и интегрирован с существующей системой.