feat(inventory): add multi-country origin tracking
Test Suite / backend-pr-quick (push) Has been skipped
Test Suite / quick-import-pr-quick (push) Has been skipped
Test Suite / backend-full (push) Failing after 3m32s
Test Suite / flutter-quality (push) Failing after 1m0s

- Added `originCountries` field to `InventoryItem` model for multi-country origin support
- Updated `CreateInventoryDto` and `UpdateInventoryDto` with `originCountries` array field
- Modified `InventoryService` to handle `originCountries` in create and update operations
- Added `origin` field to `FlyerImportItem` response type for consistency
- Added `categoryId` field to `ParsedReceiptItem` DTO for improved receipt parsing
- Created database migration `20260524_add_origin_countries` for schema changes
This commit is contained in:
Nils-Johan Gynther
2026-05-24 21:31:53 +02:00
parent ca1eed5061
commit 27d622bfe6
9 changed files with 167 additions and 66 deletions
@@ -91,6 +91,7 @@ export class InventoryService {
location: data.location?.trim() || undefined,
brand: data.brand?.trim() || undefined,
origin: data.origin?.trim() || undefined,
originCountries: data.originCountries || undefined,
receiptName: data.receiptName?.trim() || undefined,
suitableFor: data.suitableFor?.trim() || undefined,
comment: data.comment?.trim() || undefined,
@@ -128,6 +129,14 @@ export class InventoryService {
updateData.brand = data.brand.trim();
}
if (typeof data.origin === 'string') {
updateData.origin = data.origin.trim();
}
if (Array.isArray(data.originCountries)) {
updateData.originCountries = data.originCountries;
}
if (typeof data.receiptName === 'string') {
updateData.receiptName = data.receiptName.trim();
}