Refactor vendor mappings to canonical PN catalog

This commit is contained in:
Mikhail Chusavitin
2026-03-07 23:11:42 +03:00
parent 96572be712
commit 3f26a2935a
25 changed files with 1334 additions and 754 deletions

View File

@@ -43,9 +43,9 @@ PriceForge is a price and pricelist manager built on top of MariaDB.
> These rules MUST NOT be violated when writing code.
1. **Warehouse pricelist** — only mapped partnumbers from `lot_partnumbers`. Unmapped partnumbers are excluded entirely.
1. **Warehouse pricelist** — only mapped partnumbers from `qt_partnumber_book_items.lots_json`. Unmapped partnumbers are excluded entirely.
2. **Categories** — always from `lot.lot_category`. Never derive from LOT name.
3. **Background tasks** — Task Manager only (`taskManager.Submit()`). Never use SSE.
4. **Vendor mapping**1:1 key `(vendor, partnumber)`. Composite mappings only via bundles.
4. **Vendor mapping**canonical source of truth is `qt_partnumber_book_items`, one row per `partnumber`, with full composition in `lots_json`.
5. **Home page** — redirect to `/admin/pricing`. Configurator, projects, export must not appear in the UI.
6. **Document decisions** — every architectural decision must be added to `bible/history.md`.