docs(sprint3): P1-11 done
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
dcf8f60b67
commit
96fa4bf990
|
|
@ -31,9 +31,13 @@ Multi-tenant: все запросы фильтруются по `OrganizationId`
|
|||
✅ Cost-snapshot — `Product.Cost` (скользящее среднее; точный FIFO потребует
|
||||
партий и вынесен из scope). Margin = profit/revenue·100, при revenue=0
|
||||
возвращаем 0. Возврат вычитает и выручку, и COGS симметрично. 3 интеграционных.
|
||||
4. [ ] **P1-11 Отчёт «ABC-анализ»** — топ товаров по выручке за период,
|
||||
4. [x] **P1-11 Отчёт «ABC-анализ»** — топ товаров по выручке за период,
|
||||
классы A/B/C по Парето (A=80%, B=15%, C=5% накопительной выручки).
|
||||
Параметр метрики (выручка/прибыль/маржа). Web с визуализацией.
|
||||
✅ `GET /api/reports/abc?metric=revenue|profit|margin`. Граница A —
|
||||
`cumulativeShare ≤ 80`, B — `≤ 95`, C — остальное. Товары с
|
||||
неположительной метрикой исключаются. Web: цветные плашки класса +
|
||||
полоса накопительной доли. 4 интеграционных теста.
|
||||
5. [ ] **P1-19 OpenAPI / Swagger** — `Swashbuckle.AspNetCore`,
|
||||
`/swagger/v1/swagger.json` в Development. Сгенерировать TS-клиент для
|
||||
food-market.web (`openapi-typescript`/`nswag`) и подключить для пары
|
||||
|
|
|
|||
Loading…
Reference in a new issue