feat: price_quality индикатор для прайслиста; убраны неиспользуемые price_method/period/coefficient/manual_price/meta_prices
Прайслисты: добавлено поле price_quality (0-9, выставляется внешней утилитой ценообразования на основе количества/свежести котировок за период — QF только отображает, не считает сам). В карточке прайслиста рядом с ценой показывается предупреждение (жёлтый/красный «!») при quality < 7. price_method/price_period_days/price_coefficient/manual_price/meta_prices убраны из контракта QF (models.PricelistItem, local_pricelist_items, API, колонка «Настройки» на странице прайслиста) — эти поля принадлежат внешнему движку ценообразования и нигде не использовались в клиенте. Сами колонки в qt_pricelist_items не трогаем — оставлены для обратной совместимости с внешней системой. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
39e6fd5642
commit
bea8d9453e
@@ -259,12 +259,9 @@ PK: lot_name
|
||||
| lot_category | varchar(50) | |
|
||||
| lot_description | varchar(10000) | added by migration 032; backfilled once from `lot.lot_description`. QF syncs this column directly — do not join `lot` per-row to get a description |
|
||||
| price | decimal(12,2) NOT NULL | |
|
||||
| price_method | varchar(20) | synced to local and shown in the pricelist detail "Настройки" column |
|
||||
| price_period_days | bigint DEFAULT 90 | synced to local, same as above |
|
||||
| price_coefficient | decimal(5,2) DEFAULT 0 | synced to local, same as above |
|
||||
| manual_price | decimal(12,2) | synced to local, same as above |
|
||||
| meta_prices | varchar(1000) | synced to local, same as above |
|
||||
| lead_time_weeks | int | exists in the real table; not read by QF — no corresponding field in `models.PricelistItem` |
|
||||
| price_quality | tinyint unsigned, nullable | added by migration 033. Set by the external pricelist-building tool, 0-9, based on quote recency/count per its own per-lot pricing-period settings — QF only reads and displays it, never computes it. UI: 7-9 = no warning, 4-6 = amber "!", 0-3 = red "!" (`formatPriceQualityWarning` in `pricelist_detail.html`) |
|
||||
|
||||
The real table also has `price_method`, `price_period_days`, `price_coefficient`, `manual_price`, `meta_prices` and `lead_time_weeks` columns, owned and written by the external pricing engine that maintains `qt_pricelist_items` — **keep them in the table for backward compatibility with that system; QF must never drop, rename, or write to them.** QF itself does not model, sync, or display any of them (tried once, removed as unused/dead in the client). Do not re-add them to `models.PricelistItem`/`LocalPricelistItem` without a concrete UI need.
|
||||
|
||||
Fields QF never populates and does not model: `AvailableQty`/`Partnumbers` (removed from `models.PricelistItem` and `LocalPricelistItem` — no writer ever set them; always empty).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user