|
|
47bf0cbcb9
|
Notify processing departments about subscriptions
Deploy production / deploy (push) Successful in 13m7s
|
2026-11-03 10:06:17 +03:00 |
|
lizerk
|
dac0234007
|
Enforce repository-wide code quality
|
2026-09-07 19:43:48 +03:00 |
|
lizerk
|
aaa1da663c
|
refactor: unify observability and realtime updates
|
2026-08-14 22:49:20 +03:00 |
|
lizerk
|
c0092437e1
|
improve procurement request workspace
|
2026-08-07 14:02:42 +03:00 |
|
lizerk
|
8fd5ae1054
|
feat: expand document procurement and request workflows
|
2026-08-04 20:19:12 +03:00 |
|
lizerk
|
0b45888f5c
|
feat: improve documents and procurement workflows
|
2026-07-06 10:13:27 +03:00 |
|
lizerk
|
32500e3037
|
chore: checkpoint current project changes
|
2026-06-20 10:47:00 +03:00 |
|
lizerk
|
3f471424cd
|
Improve notification labels and push avatars
|
2026-06-12 10:50:15 +03:00 |
|
lizerk
|
b16b74c060
|
Refine procurement notifications
|
2026-06-11 18:03:08 +03:00 |
|
lizerk
|
76799c453e
|
Allow procurement executor reassignment
|
2026-06-09 12:43:48 +03:00 |
|
lizerk
|
b1a5ac34ef
|
procurement: fix department workflow UI bugs
|
2026-05-27 18:36:18 +03:00 |
|
lizerk
|
4a05618ed7
|
procurement: route requests through processing department
|
2026-05-26 17:25:31 +03:00 |
|
lizerk
|
da986c0e29
|
procurement: refine fulfillment workflow
|
2026-05-26 17:02:30 +03:00 |
|
lizerk
|
b40f32e849
|
procurement: add workflow notifications
|
2026-05-22 16:53:04 +03:00 |
|
lizerk
|
af423d8d0a
|
feat(procurement): tighten approval flow and request actions
|
2026-04-13 02:55:26 +03:00 |
|
lizerk
|
ae7e1daf89
|
refactor(frontend): align profile, notifications and procurement flows
|
2026-04-12 18:02:47 +03:00 |
|
lizerk
|
2815efe069
|
chore: finalize backend lint cleanup
|
2026-03-31 17:53:29 +03:00 |
|
lizerk
|
46e7059a40
|
refactor(procurement): удаление дублирующего WebSocket модуля
Проблема:
- procurement/notifications/websocket.py дублировал функциональность
- Прямые вызовы channel_layer.group_send() обходили универсальную систему
- Нарушение единообразия использования notifications
Решение:
- Удален websocket.py модуль
- WebSocket уведомления теперь отправляются через универсальную систему:
notify.send() → channels.py → Celery → WebSocketNotificationSender
Преимущества:
- ✅ Единообразие архитектуры (как в requests_app)
- ✅ Все каналы (WebSocket, Email, Push) через одну систему
- ✅ Автоматический retry и rate limiting
- ✅ Централизованное логирование
- ✅ Меньше кода для поддержки
Изменения:
- Удален: notifications/websocket.py
- Обновлен: notifications/signals.py (удалены broadcast вызовы)
- Обновлен: notifications/__init__.py (удалены импорты websocket)
|
2026-03-10 12:37:49 +03:00 |
|
lizerk
|
16c5f2023a
|
refactor(procurement): реструктуризация notifications в модульную архитектуру
- Создана папка backend/procurement/notifications/ вместо одного signals.py
- Разделена логика на специализированные модули:
* config.py - типы уведомлений (verbs) и шаблоны сообщений
* handlers.py - бизнес-логика отправки уведомлений
* signals.py - только Django сигналы
* websocket.py - WebSocket broadcast для real-time обновлений
* __init__.py - публичный API модуля
Преимущества новой структуры:
- ✅ Четкое разделение ответственности (SRP)
- ✅ WebSocket логика отделена от уведомлений
- ✅ Все шаблоны сообщений в одном месте (MessageTemplates)
- ✅ Константы verbs централизованы (NotificationVerbs)
- ✅ Легче тестировать и расширять
- ✅ Обратная совместимость через __init__.py
Изменения:
- Удален: signals.py (сохранен как .old для истории)
- Добавлен: notifications/ модуль с 5 файлами
- Обновлен: apps.py (новый импорт сигналов)
|
2026-03-10 12:34:05 +03:00 |
|