refactor(products): remove subcategory from Product model and related queries
This commit is contained in:
@@ -33,7 +33,6 @@ model Product {
|
|||||||
name String
|
name String
|
||||||
normalizedName String @unique
|
normalizedName String @unique
|
||||||
category String?
|
category String?
|
||||||
subcategory String?
|
|
||||||
brand String?
|
brand String?
|
||||||
canonicalName String?
|
canonicalName String?
|
||||||
isActive Boolean @default(true)
|
isActive Boolean @default(true)
|
||||||
|
|||||||
@@ -42,9 +42,8 @@ export class ProductsController {
|
|||||||
@Get()
|
@Get()
|
||||||
findAll(
|
findAll(
|
||||||
@Query('tag') tag?: string,
|
@Query('tag') tag?: string,
|
||||||
@Query('subcategory') subcategory?: string,
|
|
||||||
) {
|
) {
|
||||||
return this.productsService.findAll({ tag, subcategory });
|
return this.productsService.findAll({ tag });
|
||||||
}
|
}
|
||||||
|
|
||||||
@Public()
|
@Public()
|
||||||
|
|||||||
@@ -15,12 +15,11 @@ export class ProductsService {
|
|||||||
private readonly categoriesService: CategoriesService,
|
private readonly categoriesService: CategoriesService,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
async findAll(filters?: { tag?: string; subcategory?: string }) {
|
async findAll(filters?: { tag?: string }) {
|
||||||
return this.prisma.product.findMany({
|
return this.prisma.product.findMany({
|
||||||
where: {
|
where: {
|
||||||
isActive: true,
|
isActive: true,
|
||||||
isPrivate: false,
|
isPrivate: false,
|
||||||
...(filters?.subcategory ? { subcategory: filters.subcategory } : {}),
|
|
||||||
...(filters?.tag
|
...(filters?.tag
|
||||||
? { tags: { some: { tag: { name: filters.tag } } } }
|
? { tags: { some: { tag: { name: filters.tag } } } }
|
||||||
: {}),
|
: {}),
|
||||||
@@ -165,7 +164,6 @@ export class ProductsService {
|
|||||||
normalizedName?: string;
|
normalizedName?: string;
|
||||||
canonicalName?: string;
|
canonicalName?: string;
|
||||||
category?: string | null;
|
category?: string | null;
|
||||||
subcategory?: string | null;
|
|
||||||
brand?: string | null;
|
brand?: string | null;
|
||||||
categoryId?: number | null;
|
categoryId?: number | null;
|
||||||
} = {};
|
} = {};
|
||||||
@@ -195,10 +193,6 @@ export class ProductsService {
|
|||||||
updateData.category = data.category.trim() || null;
|
updateData.category = data.category.trim() || null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof data.subcategory === 'string') {
|
|
||||||
updateData.subcategory = data.subcategory.trim() || null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof data.brand === 'string') {
|
if (typeof data.brand === 'string') {
|
||||||
updateData.brand = data.brand.trim() || null;
|
updateData.brand = data.brand.trim() || null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,6 +37,10 @@ Relaterade dokument:
|
|||||||
- **Bildimport:** Säkerställa att containrar är uppdaterade med senaste kod och att diagnostikloggar syns vid felsökning.
|
- **Bildimport:** Säkerställa att containrar är uppdaterade med senaste kod och att diagnostikloggar syns vid felsökning.
|
||||||
- **Adminfunktioner:** Avancerad AI-integration och ytterligare adminfunktioner planeras men är ej migrerade.
|
- **Adminfunktioner:** Avancerad AI-integration och ytterligare adminfunktioner planeras men är ej migrerade.
|
||||||
|
|
||||||
|
### Tillfällig MVP-notering (att ta bort senare)
|
||||||
|
- [ ] Ta bort tillfällig diagnostikbanner i kvittoimporten när MVP är verifierad.
|
||||||
|
Banner finns i `lib/features/import/presentation/receipt_import_tab.dart` och visar felkällor för `auth/token`, `categories`, `products:list`, `products:mine`.
|
||||||
|
|
||||||
### Prioriterade nästa steg
|
### Prioriterade nästa steg
|
||||||
1. Säkerställa robust bildimport och diagnostik.
|
1. Säkerställa robust bildimport och diagnostik.
|
||||||
2. Implementera hybrid alias-stöd i kvittoimport tillsammans med backend: user-scope alias som standard och global alias via admin.
|
2. Implementera hybrid alias-stöd i kvittoimport tillsammans med backend: user-scope alias som standard och global alias via admin.
|
||||||
|
|||||||
Reference in New Issue
Block a user