lizerk
6fa63eaab6
Add employee work schedules for attendance analysis
2026-04-22 12:47:31 +03:00
lizerk
625468090b
Add persisted LogStorm attendance integration
2026-04-22 10:21:44 +03:00
lizerk
78e758aedf
Add LogStorm attendance UI
2026-04-21 15:56:10 +03:00
lizerk
8a65498b56
Add request statistics panel to requests page
2026-04-20 12:40:04 +03:00
lizerk
824728019b
Add employee request statistics panel
2026-04-20 12:25:13 +03:00
lizerk
a46f040801
fix: refine pwa notifications and brand name
2026-04-16 21:17:51 +03:00
lizerk
2e4975a901
feat: add installable pwa baseline
2026-04-16 20:04:21 +03:00
lizerk
31d779bee3
refactor: unify calendar frontend state and event loading
2026-04-16 19:12:36 +03:00
lizerk
78b8615871
feat: refine department calendar behavior and UI
2026-04-16 17:22:06 +03:00
lizerk
5700b53f13
feat: add department calendar bindings and cleanup dept permissions
2026-04-16 15:18:43 +03:00
lizerk
d412d6634b
фикс отделов и сотрудников
2026-04-15 02:32:01 +03:00
lizerk
1296ec9021
Fix employee sorting and department counters
2026-04-15 02:12:32 +03:00
lizerk
35a7250183
refactor(ui): polish chat, requests, and profile actions
2026-04-14 23:11:32 +03:00
lizerk
70d2c55348
refactor(ui): polish department feed and mobile nav placement
2026-04-14 19:11:17 +03:00
lizerk
beb4b8b86b
refactor(departments): unify department feed and discussion flows
2026-04-14 16:14:52 +03:00
lizerk
37927b0ecf
refactor(frontend): add department action menu
2026-04-13 23:20:20 +03:00
lizerk
3b855e2ef1
refactor(frontend): split department showcase and management
2026-04-13 22:25:30 +03:00
lizerk
28d61b842c
refactor(frontend): build department management screen
2026-04-13 17:52:41 +03:00
lizerk
331dc1433a
refactor(frontend): decompose requests screen
2026-04-13 12:56:00 +03:00
lizerk
bac7c65062
feat(equipment): create categories inline in modal
2026-04-13 04:14:10 +03:00
lizerk
993e26e8ed
fix(notifications): normalize action links and request timestamps
2026-04-13 04:02:24 +03:00
lizerk
44da9c46c1
feat(ui): unify action menus and procurement comments
2026-04-12 20:07:34 +03:00
lizerk
ae7e1daf89
refactor(frontend): align profile, notifications and procurement flows
2026-04-12 18:02:47 +03:00
lizerk
e3ba6ea925
refactor(ui): stabilize equipment deep links and qr flow
2026-04-12 16:09:38 +03:00
lizerk
b7b09740cb
refactor(frontend): align employee profile surfaces
2026-04-12 06:59:42 +03:00
lizerk
c56fdbb915
feat(frontend): align employee profile flows
2026-04-12 06:27:18 +03:00
lizerk
06bcd0c862
feat(frontend): refine profile workspace
2026-04-12 05:47:35 +03:00
lizerk
097a3015e8
fix(profile): stabilize directory login and expand ldap coverage
2026-04-12 04:13:32 +03:00
lizerk
f5a908e443
feat(auth): restore password reset flow and polish auth UI
2026-04-12 02:05:13 +03:00
lizerk
7dcf84dcd1
feat(auth): add session management and settings integration
2026-04-11 23:31:14 +03:00
lizerk
db05b4fcdb
refactor(frontend): align calendar and list UI
2026-04-11 20:44:16 +03:00
lizerk
601f0d58d8
chore(frontend): checkpoint current theme polish state
2026-04-11 19:30:22 +03:00
lizerk
219a93215f
Improve deleted reply preview context
2026-04-03 21:01:10 +03:00
lizerk
71d0a6092c
Refine chat reply preview behavior
2026-04-03 20:53:52 +03:00
lizerk
9b23f480c2
Refine search routing and deep links
2026-04-03 20:30:29 +03:00
lizerk
111ddb2bfd
Refactor modals and add chat message search
2026-04-03 19:53:31 +03:00
lizerk
3d99226296
Fix chat list pagination in frontend
2026-04-03 14:25:41 +03:00
lizerk
c5f53cca15
Improve chat delivery states and read details
2026-04-03 11:10:14 +03:00
lizerk
e3e195c89d
Add user detail components and hook
2026-04-02 10:22:46 +03:00
lizerk
4b179fe801
Sync active chat on shared websocket
2026-04-02 10:20:46 +03:00
lizerk
a0cda94107
refactor frontend api facade
2026-04-01 20:56:08 +03:00
lizerk
fac1b54e63
Главное изменение этой итерации: orchestration страницы оборудования вынесен из page.tsx в новый hook useEquipmentPage.ts. В hook теперь живут загрузка данных, фильтры, пагинация, create/edit, операции перевода/списания/обслуживания, комментарии, загрузка деталей строки и вся производная логика. Сама страница стала значительно чище и ближе к роли render-слоя, без нетипичной архитектуры и без изменения UI-поведения.
2026-04-01 19:03:04 +03:00
lizerk
0a80eb86cf
refactor: extract shared utils/components, split requests page data into hook
...
- Create frontend/src/lib/shared/ with formatters, userUtils, paginationUtils
(formatDate, formatMoney, displayUserName, userProfileLink, extractNextPage, loadAllPages)
- Create frontend/src/components/shared/SearchableSelect.tsx
(SearchableSelectSingle + SearchableSelectMulti, replaces 3 inline copies)
- Extract requests page data/state/actions into useRequestsPage hook
(requests/page.tsx: 1580 → ~280 lines of pure JSX)
- Replace duplicated helpers in equipment/page.tsx with shared imports
(~80 lines removed: formatDate, formatMoney, displayUserName, extractNextPage,
loadAllPages, inline SearchableSelectSingle)
- Replace duplicated helpers in procurement/page.tsx with shared imports
(~90 lines removed: fmt, money, displayUserName, extractNextPage,
inline departments loader, inline SearchableSelectSingle)
- 609 backend tests pass, TypeScript typecheck clean, ESLint clean
2026-04-01 16:21:02 +03:00
lizerk
3ca4d108b6
refactor: split monolithic api.ts into domain modules, extract AppShell calendar/mobile concerns
...
- Split frontend/src/lib/api.ts (2042 lines) into 12 focused domain modules:
client.ts (base HTTP/auth), calendar.ts, documents.ts, employees.ts,
equipment.ts, feed.ts, messages.ts, notifications.ts, procurement.ts,
requests.ts, utils.ts, and index.ts barrel that preserves all existing imports
- Extract calendar modal state from AppShell into useCalendarModals hook
- Extract CalendarModals and MobileDrawers into components/layout/
- AppShell: 745 → 460 lines, focused on layout concerns only
- Fix setState-in-effect lint error with startTransition pattern
- Stabilize notifications memo to prevent unnecessary re-renders
- Fix flaky WS test: handle CancelledError in channels-testing cleanup
- All 609 backend tests pass, TypeScript typecheck clean, ESLint clean
2026-04-01 15:56:10 +03:00
lizerk
a8ec339565
Refactor chat settings and tighten frontend types
2026-04-01 15:31:19 +03:00
lizerk
613248905e
Refactor realtime sync and message UI
2026-04-01 15:20:27 +03:00
lizerk
825726e0f0
chore: commit remaining backend and frontend changes, remove legacy test, add missing migrations
2026-03-30 02:17:28 +03:00
lizerk
decbadf47b
Унификация сортировки и визуального стиля карточек: добавлены селекторы сортировки и убраны лишние тени в разделах заявлений, закупок и оборудования
2026-03-27 18:11:14 +03:00
lizerk
3a2d05a64d
feat(requests): улучшены фильтры по датам, исправлена логика фильтрации, добавлена инструкция по тестированию
2026-03-27 14:57:31 +03:00
lizerk
f28eda6929
feat: Улучшения страницы сотрудника и миграция на ChatMembership
...
Backend:
- Полная миграция на ChatMembership для всех типов чатов
- Удалены проверки participants M2M поля
- Добавлена обработка participants при создании чатов
- API методы для создания/редактирования/удаления кадровых событий
Frontend:
- Редизайн страницы пользователя с lucide-react иконами
- Добавлено редактирование профиля (ФИО, контакты, аватар)
- Функциональные кадровые события (создание/редактирование/удаление)
- История кадровых событий с цветовой кодировкой
- Исправлено создание дубликатов чатов (поиск по member_ids)
- Удалены визуальные статусные индикаторы (is_active ≠ online)
- Добавлен статус сотрудника из последнего action
Fixes:
- type 'private' вместо 'direct' для личных чатов
- ChatMembership проверки в user_can_access_chat()
- member_ids в ChatListSerializer для поиска чатов
2026-03-16 18:21:24 +03:00