- LogisticsReadinessBoard: formatDate() for delivery date (was raw yyyy-MM-dd) - LogisticsReadinessBoard: replaced <table> with CSS grid for aligned columns - OrdersTable: replaced <table> with CSS grid for aligned columns - Both tables: 6-column grid with fixed proportions, all columns visible |
||
|---|---|---|
| .vscode | ||
| docs | ||
| public | ||
| scripts | ||
| src | ||
| supabase | ||
| volumes | ||
| .env.example | ||
| .gitignore | ||
| .opencode.json | ||
| 1 | ||
| Caddyfile | ||
| Dockerfile | ||
| QWEN.md | ||
| README.md | ||
| anonymize_xml.py | ||
| deno.lock | ||
| deploy.log | ||
| deploy.sh | ||
| docker-compose.app.yml | ||
| docker-compose.yml | ||
| eslint.config.js | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.js | ||
| tailwind.config.js | ||
| vite.config.js | ||
| webhook-listener.py | ||
| webhook_listener.py | ||
README.md
Construction Delivery Control
React-приложение для управления доставкой заказов. В текущем контуре есть три внутренние роли и публичная страница клиента: менеджер, логист, водитель и клиент.
Запуск
npm install
npm run dev
Деплой
Приложение разворачивается через Docker (docker-compose.app.yml). Сборка и запуск:
docker compose -f docker-compose.app.yml up -d --build
Автодеплой
Настроен webhook в Gitea: при пуше в main автоматически запускается деплой.
- Webhook listener: systemd-сервис
supersam-webhookна порту 9000 - Gitea hook: push в
main→POST http://10.0.2.1:9000/webhook/supersam - deploy.sh:
git pull origin main→docker compose up -d --build - Репозиторий:
https://git.supersamsev.ru/mihail/supersam
Главный документ
- Обзор системы — назначение приложения, роли, сценарии, клиентский flow и подготовка к показу.
Что уже есть
- OTP-вход по email через Supabase Auth.
- Role-based dashboard для менеджера, логиста и водителя.
- Карточка заказа с составом, комментариями и историей.
- Публичная страница
/delivery/:tokenдля выбора даты, половины дня и просмотра состава заказа. - Самовывоз — вкладки Доставка/Самовывоз на клиентской странице, выбор даты и половины дня самовывоза, информация о бесплатном хранении (2 рабочих дня) и платном (300₽/день).
- Supabase SQL-схема, таблицы приглашений и Edge Functions для invitation flow.
- Документация по продукту, архитектуре и сценариям.
Структура
src/— интерфейс и клиентская логика.src/constants/deliveryWorkflow.js— статусы доставки, включая самовывоз.src/components/client/DeliverySlotsPicker.jsx— виджет выбора слотов доставки.src/components/client/PickupSlotsPicker.jsx— виджет выбора слотов самовывоза.src/components/client/DeliveryChoiceFlow.jsx— флоу согласования доставки/самовывоза.src/pages/ClientDeliveryPage.jsx— публичная страница с вкладками Доставка/Самовывоз.src/components/orders/OrderDetailPanel.jsx— карточка заказа с управлением доставкой и самовывозом.supabase/schema.sql— структура БД, роли, индексы, RLS, триггеры.supabase/functions/— Edge Functions для приглашений, статусов и чат-коммуникаций.supabase/seed/stage-1-demo.sql— набор seed-данных для показа заказчику.docs/architecture.md— архитектура фронтенда и модулей.docs/product-overview.md— общий обзор продукта, ролей и сценариев.docs/scenarios.md— сценарии жизненного цикла заказа.docs/n8n-order-group-delivery-flow.md— потоки n8n для оркестрации доставки.