|
Some checks are pending
1. Products.Update: добавление нового barcode'а к существующему товару валилось с DbUpdateConcurrencyException 'Товар изменён в другом окне', хотя никакой конкурентной правки не было. Тот же EF8-баг, который в TD-6 чинили на Supplies/Demands/RetailSales: nav-collection.Add + client-side Id путает EF, UPDATE родителя получает 0 affected. Чиним тем же паттерном: ExecuteDelete старых ProductBarcodes/ProductPrices, DbSet.Add новых. Воспроизводится: создать товар с 1 barcode, PUT с 2 barcodes → 409. После фикса → 204. 2. IX_products_OrganizationId_Article был обычным (не уникальным), хотя контроллер ловил нарушение по имени индекса и возвращал 'Артикул уже занят'. Catch-блок никогда не срабатывал. Делаем индекс уникальным миграцией Phase8d. Перед созданием — нумеруем дубликаты по существующим данным (если есть). NULL/пустые article остаются distinct (Postgres NULL semantics). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| e2e | ||
| food-market.IntegrationTests | ||
| food-market.UnitTests | ||