BUG-001: Декомпозиция

Код

Catalog Service

  • BUG1-CS-01: В PriceListService.createPriceList() после сохранения PriceList — добавить автозаполнение items:

    • Если существует дефолтный прейскурант → скопировать все price_list_items и price_list_modifier_items из него (с теми же ценами)
    • Если дефолтного нет (создаётся первый прейскурант) → создать price_list_items для всех активных товаров (products where deleted_at IS NULL) с ценой 0.00
    • Аналогично создать price_list_modifier_items для всех активных опций модификаторов с ценой 0.00
    • Файл: src/main/java/com/erp/catalog/service/PriceListService.java метод createPriceList()
  • BUG1-CS-02: Добавить в ProductService хук: при создании нового товара — автоматически добавлять price_list_items запись (цена 0.00) во все существующие прейскуранты франшизы. Иначе новые товары не появятся в ранее созданных прейскурантах.

  • BUG1-CS-03: Аналогичный хук в ModifierGroupService — при создании/обновлении опций модификаторов добавлять price_list_modifier_items во все прейскуранты. При замене опций — удалять старые записи из прейскурантов.

Спеки

  • BUG1-SPEC-01: Обновить 08-Specs/Админка Франшизы/Прейскуранты.md — добавить бизнес-правило: “При создании прейскуранта он автоматически заполняется всеми товарами и опциями модификаторов. Цены копируются из дефолтного прейскуранта, или 0.00 если дефолтного нет”
  • BUG1-SPEC-02: Обновить 08-Specs/Админка Франшизы/Прейскуранты.md — добавить правило: “При добавлении нового товара/опции модификатора в каталог — автоматически создаётся запись с ценой 0.00 во всех прейскурантах франшизы”
  • BUG1-SPEC-03: Обновить 03-Services/Catalog Service/API.md — в описании POST /price-lists указать что items заполняются автоматически