3 Commits

Author SHA1 Message Date
lizerk
0217bc1a38 refactor: migrate comments to unified communications system
- Delete legacy Comment models (feed.Comment, documents.DocumentComment, requests_app.RequestComment)
- Create migration scripts to move data to communications.Message
- Add comments_helpers.py for unified comment operations
- Update API endpoints: /api/v1/posts/{id}/comments/, /api/v1/requests/{id}/comments/
- Fix notifications.0010_drop_old_tables migration with SeparateDatabaseAndState
- Implement real-time comments_count via GenericForeignKey annotations
- Update frontend API client to use new endpoints
- Update JavaScript files for new comment API routes
- Remove deprecated API endpoints and serializers
- Clean up signal handlers and admin registrations

Deployment tested: all migrations apply successfully on fresh database
2026-03-11 23:56:41 +03:00
lizerk
3583aee95a refactor(requests_app): переименование constants.py -> config.py
- constants.py → config.py для более точного отражения содержимого
- Файл содержит не только константы, но и конфигурацию уведомлений:
  * NotificationVerbs - типы уведомлений
  * MessageTemplates - шаблоны сообщений
  * ActionURLs - URL для переходов

- Обновлены импорты во всех зависимых файлах:
  * handlers.py
  * __init__.py

Название 'config' более семантически верное для файла с конфигурацией.
2026-03-10 12:28:03 +03:00
lizerk
d83aae6791 refactor(requests_app): реструктуризация notifications в модульную архитектуру
- Создана папка backend/requests_app/notifications/ вместо одного файла
- Разделена логика на модули:
  * constants.py - типы уведомлений (verbs) и шаблоны сообщений
  * handlers.py - бизнес-логика отправки уведомлений
  * signals.py - Django сигналы для автоматической генерации
  * __init__.py - публичный API модуля

Преимущества новой структуры:
- ✅ Лучшая организация кода (SRP - Single Responsibility Principle)
- ✅ Легче поддерживать и расширять
- ✅ Константы в одном месте (NotificationVerbs, MessageTemplates)
- ✅ Переиспользуемые шаблоны сообщений
- ✅ Обратная совместимость через __init__.py

Удален: notification_signals.py (сохранен как .old для истории)
Добавлен: notifications/ модуль с 4 файлами
2026-03-10 12:17:07 +03:00