✨ Major reorganization: - Move all documentation to docs/ directory - Clean up root directory from temporary files - Add comprehensive project documentation - Implement Drone CI/CD pipeline 📁 Structure changes: - docs/SCRIPTS_README.md - Complete scripts guide - docs/DEPLOYMENT.md - Production deployment guide - docs/API.md - Comprehensive API documentation - patch/ - Temporary and test files - Clean .gitignore with proper exclusions 🚀 CI/CD Pipeline (.drone.yml): - Code quality checks (flake8, black, bandit) - Unit and integration testing - Docker image building and security scanning - Staging deployment automation - Production deployment on tags - Telegram notifications - Scheduled maintenance tasks 📖 Enhanced README.md: - Technology stack badges with icons - Drone CI build status badge - Comprehensive quick start guide - Clear project architecture - Links to all documentation 🔧 Additional improvements: - MIT License added - .gitkeep files for important directories - Improved .gitignore patterns - Professional project presentation 🎯 Result: Clean, professional project structure ready for production
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 бота. Весь процесс автоматизирован и интегрирован с существующей системой.