food-market/src/food-market.api
nns e13ac655e5 fix(catalog): FK-guard удаления контрагента + валидация полей товара
Найдено в catalog-edge:

- DELETE контрагента, на которого ссылаются supplies/retail-sales/products
  (DefaultSupplier), отдавал 500 (DbUpdateException 23503) вместо понятного
  409. Добавлен явный чек использования → Conflict со списком где занят.
- POST товара с пустым Name проходил до FK-проверки и падал неинформативно;
  теперь явный 400 с указанием поля. На ProductInput навешены
  [Required]/[MinLength]/[StringLength] на Name/Article/ImageUrl — отсекаем
  пустые и сверхдлинные значения на уровне модели.

catalog-edge: 12/12.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 11:03:37 +05:00
..
Background feat(api): recalc-retail endpoint + 30-day reference price refresh job 2026-04-25 21:03:44 +05:00
Controllers fix(catalog): FK-guard удаления контрагента + валидация полей товара 2026-05-26 11:03:37 +05:00
Infrastructure fix(security): SuperAdmin edit-mode override обходит [Authorize(Roles=Admin)] 2026-05-23 12:24:52 +05:00
Properties fix: pin API dev port to 5081 (match Vite proxy config) 2026-04-21 15:37:05 +05:00
Seed feat(bootstrap): системная ProductGroup «Все товары» при создании org 2026-05-08 12:08:28 +05:00
appsettings.Development.json Phase 0: project scaffolding and end-to-end auth 2026-04-21 13:59:13 +05:00
appsettings.json revert(domains): публичный сайт → test.food-market.kz, apex 404 до релиза 2026-05-01 18:06:31 +05:00
food-market.api.csproj Phase 0: project scaffolding and end-to-end auth 2026-04-21 13:59:13 +05:00
Program.cs fix(auth): refresh-token rotation немедленно инвалидирует старый токен 2026-05-26 11:03:29 +05:00