food-market/src/food-market.api/Controllers/Catalog
nns 6468186ed5 feat(products): авто-генерация числового артикула при создании
При POST /api/catalog/products если Article пустой — сервер берёт
max(Article::int) среди артикулов текущей организации и ставит +1.
Если числовых артикулов нет — «1». Пользователь может указать
артикул руками, тогда используется его значение.

Конфликт по unique index IX_products_OrganizationId_Article на
SaveChanges перехватывается — возвращается 400 с текстом «Артикул
«X» уже занят в этой организации.» вместо 500. Та же обработка
добавлена в Update.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 19:04:57 +05:00
..
CounterpartiesController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00
CountriesController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00
CurrenciesController.cs refactor(currencies): убрать IsActive и MinorUnit из UI/API 2026-04-24 19:01:13 +05:00
PriceTypesController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00
ProductGroupsController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00
ProductImagesController.cs feat(product-images): загрузка на диск сервера + галерея с лайтбоксом 2026-04-24 11:12:27 +05:00
ProductsController.cs feat(products): авто-генерация числового артикула при создании 2026-04-24 19:04:57 +05:00
RetailPointsController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00
StoresController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00
UnitsOfMeasureController.cs feat(tables): server-side sort by column header click 2026-04-24 12:24:05 +05:00