Files
smartsoltech_site/docs/QR_CODE_FEATURE_SUMMARY.md
Andrew K. Choi d9adac609b chore: reorganize project structure and prepare for deployment
- Organize files into logical directories (docs/, scripts/, tests/)
- Add comprehensive documentation (README, CONTRIBUTING, CHANGELOG)
- Create deployment automation scripts
- Add Docker production configuration
- Update .gitignore and add .dockerignore
- Remove temporary and test files from root
- Improve settings.py with DEBUG from env variable

Added:
- README.md with project overview
- CONTRIBUTING.md for contributors
- CHANGELOG.md for version tracking
- PROJECT_STATUS.md with current state
- docker-compose.prod.yml for production
- nginx.conf for production web server
- scripts/deploy.sh for automated deployment
- scripts/check-config.sh for configuration validation
- scripts/setup-ssl.sh for SSL certificate setup
- docs/DEPLOYMENT.md with detailed deployment guide
- docs/ENV_VARIABLES.md with all environment variables

Moved:
- Documentation to docs/
- Scripts to scripts/
- Test files to tests/

Removed:
- .history/ directory
- Test response JSON files from root
- settings_production.py (merged into settings.py)

This commit prepares the project for:
- Production deployment
- Team collaboration
- Docker containerization
- Proper documentation
2025-11-24 07:12:04 +09:00

60 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 бота. Весь процесс автоматизирован и интегрирован с существующей системой.