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

3.7 KiB
Raw Blame History

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