root
69a2023ec1
feat: suggestions panel for employees + admin review
2026-06-10 18:24:58 +00:00
root
7e43f9e990
feat: requires_address status + address input for pickup-to-delivery switch
...
- New status: requires_address (Требуется адрес) in deliveryWorkflow
- ClientDeliveryPage: address input shown when delivery chosen without address on file
- OrderDetailPanel: requires_address status badge + address input for manager
- confirm_delivery_choice_by_token RPC: p_delivery_address param, sets requires_address status
- Edge function: delivery_address passed to RPC
- deliveryInvitationApi: deliveryAddress param
- CHECK constraint: requires_address, address_required added
- PickupSlotsPicker: styled storage conditions info block
2026-06-10 14:52:17 +00:00
root
c774c6a362
feat: add pickup analytics — RPC, hook, PickupStatsPanel, dashboard integration
2026-06-10 12:32:51 +00:00
root
3651dbb484
chore: cleanup
2026-06-10 12:12:10 +00:00
root
813852ff45
fix: JSX structure errors + orderGroupRepository syntax
2026-06-10 12:12:04 +00:00
root
e05613ac1d
feat: add pickup (самовывоз) delivery type
...
- New status pickup in delivery workflow
- DB: delivery_type, pickup_date, pickup_time_slot columns
- Client page: tabs Доставка/Самовывоз with PickupSlotsPicker
- PickupSlotsPicker: today/tomorrow/day-after with half-day slots
- Storage notice: free 2 workdays, then 300₽/day
- OrderDetailPanel: delivery type tabs, pickup date/time, status button
- Edge function: delivery_type/pickup fields in confirm-delivery-choice
- RPC: confirm_delivery_choice_by_token updated for pickup
- orderGroupRepository: full pickup field mapping
2026-06-10 12:02:46 +00:00
root
3c22eb71ab
fix: case-insensitive stop word matching
2026-05-28 19:55:57 +00:00
root
50f504c2ff
fix: city regex requires mandatory dot+space — no more Гор→ор, Годная→одная
2026-05-28 11:05:38 +00:00
root
6f29948f8a
fix: remove Группы tab from logistician, remove Справка, Телефон→Город, Заказы→Водитель, add city filter
2026-05-28 10:29:13 +00:00
root
bb439a4d93
fix: clean action log — no UUID/ID duplicates, smart expanded row
2026-05-28 10:22:31 +00:00
root
1e0344ee34
fix: action log — resolve UUID to names, show old→new, add oldValue for driver reassignment
2026-05-28 10:17:29 +00:00
root
581a275bc0
fix: action log — readable driver names, no duplicate columns, meaningful descriptions
2026-05-28 10:11:57 +00:00
root
805ceca152
fix: 8 bugfixes — current undefined, auth email, sequential statuses, problem dialog, action log details, KPI layout, date sort, driver lock
2026-05-28 10:03:19 +00:00
root
7dfdd91798
fix: comprehensive error logging — all errors now captured in client_error_logs
...
- safeSupabaseCall: logs caught errors via logError
- AuthContext: logs sendOtp, verifyOtp errors
- ErrorLogPanel: fixed client→supabase reference in delete functions
- AuthContext: sets window.__supersam_user_id__ on auth state change
2026-05-27 15:30:33 +00:00
root
dac8450586
feat: action_logs — журнал действий сотрудников с фильтрами
2026-05-27 15:12:46 +00:00
root
8f50a68687
feat: delivery_date_source tracking + manual date in analytics funnel
2026-05-27 14:59:57 +00:00
root
136e5c826a
fix: parseOrderList collects ALL source orders, edge fn returns orderItems
2026-05-27 14:36:00 +00:00
root
d0f2a72dda
feat: stop words CRUD + client-side filtering
2026-05-27 14:28:52 +00:00
root
a764213a77
feat: logistics board as grouped tables with column headers
2026-05-27 14:16:00 +00:00
root
f8c6c538b7
compact: logistics readiness cards — single-line on desktop, stacked on mobile
2026-05-27 14:12:39 +00:00
root
db555bbf55
remove: drop readiness column from orders table
2026-05-27 14:03:57 +00:00
root
8dcab4da77
fix: show delivery date card for agreed+ statuses, not just agreed
2026-05-27 12:57:31 +00:00
root
470270118b
fix: driver_assigned status on assign + driver column in table
2026-05-27 12:48:48 +00:00
root
58dc110007
feat: allow admin/logistician to re-edit delivery date after agreement
2026-05-27 12:44:43 +00:00
root
1f285ea718
feat: driver assigned confirmation block in delivery card
2026-05-27 12:41:17 +00:00
root
19bed475ee
feat: delivery date in table+card, driver assign preserves agreed status
2026-05-27 12:39:02 +00:00
root
a8d54699ff
fix: restrict agreed/driver_assigned status buttons, show hints instead
2026-05-27 12:26:21 +00:00
root
15f2ab3cde
refactor: PATCH user via supabase client, not edge function
2026-05-27 12:12:44 +00:00
root
fd3f738b9f
fix: no default role, placeholder for role dropdown
2026-05-27 12:01:45 +00:00
root
cee5acab1d
fix: modal styling - solid bg, full-width dropdown, labels
2026-05-27 11:59:43 +00:00
root
e04485c446
feat: add-user modal dialog — compact, centered, backdrop
2026-05-27 11:53:54 +00:00
root
696f275567
fix: simple add-user form — 3 fields + small button
2026-05-27 11:50:12 +00:00
root
9009ffdfb0
feat: manage-users edge function, admin CRUD via API instead of direct supabase.auth.admin
2026-05-27 11:28:53 +00:00
root
b9b227e524
feat: UserManagementPanel — themed dropdown, inline edit name/email/role
2026-05-27 11:23:37 +00:00
root
bb6708e94b
fix: mega_admin in GroupDetailPage + OrderDetailPanel role checks
2026-05-27 11:19:43 +00:00
root
c59a806c2c
fix: mega_admin role in UI checks + fix UserManagementPanel client→supabase
2026-05-27 11:17:41 +00:00
root
2fea387d43
fix: use shared supabase client with auth session in admin panels
...
- UserManagementPanel: replace createClient() with supabase from supabaseClient
- ErrorLogPanel: same — reuse authenticated supabase singleton
- Remove production_lead role from ROLES/ROLE_LABELS/ROLE_TONES
- Remove service_role key dependency — RLS handles auth
- Fixes: admin Users tab showing empty (RLS couldnt resolve auth.uid())
2026-05-27 09:50:07 +00:00
root
c996805122
fix: duplicate client declaration
2026-05-27 08:55:35 +00:00
root
f4a4082677
fix: remove service_role from ErrorLogPanel - use anon key + RLS
2026-05-27 08:54:49 +00:00
root
3934e6a872
feat: error log panel - delete, export JSON/CSV, select rows
2026-05-27 06:14:33 +00:00
root
cf18ecb6ff
fix: funnel show all steps, center KPI, top nav, roles RU, admin users tab
2026-05-25 13:17:24 +00:00
root
0d5fb1b79a
mobile: responsive admin dashboard
2026-05-25 12:57:46 +00:00
root
79e1173dd3
funnel: outcomes only, SMS separate panel
2026-05-25 12:47:57 +00:00
root
40b28be0ee
fix: automation funnel — correct data logic, remove emojis, rename to Воронка согласования
2026-05-25 12:31:58 +00:00
root
89d6a01b68
feat: add PWA install button to header
2026-05-22 14:10:08 +00:00
root
5f88b2ca65
feat: role-based notification settings, push via DB trigger
2026-05-22 11:11:01 +00:00
root
dc9d7de60f
feat: push notifications + PWA notifications UI
...
- VAPID keys generated for web push
- push_subscriptions, notifications, notification_preferences tables
- DB triggers: auto-notify on order status change, driver assignment
- Edge functions: send-push-notification, subscribe-push, unsubscribe-push
- Frontend: NotificationBell, NotificationSettings components
- usePushNotifications hook (subscribe/unsubscribe push)
- useNotifications hook (fetch + realtime + mark read)
- Service worker: push event handler + notification click
- AppShell: notification bell in header
- DashboardPage: wired notifications
- manifest.webmanifest: name updated to SuperSam
- Caddyfile: CSP allows wss:// + fcm push
2026-05-22 10:48:33 +00:00
Codex
43c5f75055
feat: delivery page improvements and driver shipment workflow
...
- OrderCompositionPanel: flatten nested source_orders into product list, collapsed by default
- DeliverySlotsPicker: single-line heading 'Доставка завтра · 22.05.2026' instead of two-line
- OrderDetailPanel: add logistics status change panel, reorder sections (delivery date → driver → status → paid storage)
- OrderDetailPanel: require delivery date before assigning driver
- GroupDetailPage: dedicated route /dashboard/group/:groupId instead of modal
- DashboardPage: navigate to group detail page instead of opening modal
- DriverDeliveryPlanner: remove 'agreed' status, add city filter pills, group by status within dates
- DriverDeliveryPlanner: show delivery address instead of order numbers/ready count/SMS
- DriverShipmentPanel: new component with per-item checkboxes, ship-all, comments for unshipped items
- OrderDetailPanel: driver sees shipment panel + status buttons; 'delivered' requires all items shipped or commented
- Driver status: start from 'Назначено вам' (driver_assigned), not 'agreed'
- Remove duplicate header from GroupDetailPage
2026-05-22 12:53:43 +03:00
Codex
9abfbff654
feat: show order composition collapsed with product list from source_orders
...
- OrderCompositionPanel now collapsed by default with position count badge
- Flattens all products from source_orders into a single list
- RPC migration to extract items from source_orders (needs DB deploy)
- Edge Function updated to include source_orders items
- Removed Edge Function enrichment hack from fetchDeliveryInvitation
2026-05-21 14:18:10 +03:00
Codex
e6dc1972fb
feat: show full order composition on delivery page
...
- Extract OrderCompositionPanel as standalone component
- Support nested order items with sub-positions from source_orders
- Enrich order items from Edge Function when RPC only has invoice refs
- Update RPC SQL to extract product items from source_orders
- Update Edge Function to include source_orders items in invitation
- Add detail rows (account, customer) when no order items available
2026-05-21 11:52:46 +03:00