diff --git a/docs/sprint5-progress.md b/docs/sprint5-progress.md index 0a7d887..b8cf78d 100644 --- a/docs/sprint5-progress.md +++ b/docs/sprint5-progress.md @@ -8,10 +8,14 @@ query filter. E2E на изоляцию A vs B где применимо. ## Чек-лист -1. [ ] **P1-5 Оптовая отгрузка (Demand)** — Domain `Demand`+`DemandLine` +1. [x] **P1-5 Оптовая отгрузка (Demand)** — Domain `Demand`+`DemandLine` (CounterpartyId юрлица, способ оплаты нал/безнал, цена опт., НДС). EF + миграция. Контроллер CRUD + Post/Unpost. Web `/sales/demands`. `StockMovement` тип `WholesaleSale`. Multi-tenant. Тесты. + ✅ Зеркалит RetailSale без RetailPoint/Cashier; `DemandPayment.Credit` + (постоплата/дебиторка), `PaidAmount` для отслеживания. Permissions + переиспользуют существующие `DemandsEdit/Post`. Метрики + `documents_posted{type="demand"}`. 3 интеграционных теста. 2. [ ] **P1-18 Аудит мутаций tenant'а** — Domain `OrgAuditLog` (как `SuperAdminAuditLog`, но per-org). Hook через EF SaveChangesInterceptor на Supply/Sale/Demand/Product/Counterparty. UI: `/audit-log` для админа.