Добавлены модели и функциональность для работы с избранными товарами, включая мутации и запросы в GraphQL. Обновлены компоненты для отображения и управления избранным, улучшен интерфейс взаимодействия с пользователем. Реализована логика добавления и удаления товаров из избранного.

This commit is contained in:
Bivekich
2025-07-17 19:36:41 +03:00
parent f377fbab5f
commit 3d28051bde
12 changed files with 1074 additions and 141 deletions

View File

@ -124,6 +124,9 @@ model Organization {
// Корзины
carts Cart[]
// Избранные товары
favorites Favorites[]
@@map("organizations")
}
@ -337,6 +340,9 @@ model Product {
// Связь с элементами корзины
cartItems CartItem[]
// Избранные товары
favorites Favorites[]
// Уникальность артикула в рамках организации
@@unique([organizationId, article])
@@map("products")
@ -383,3 +389,24 @@ model CartItem {
@@unique([cartId, productId])
@@map("cart_items")
}
// Модель избранных товаров
model Favorites {
id String @id @default(cuid())
// Связь с организацией (пользователь может добавлять товары в избранное)
organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
organizationId String
// Связь с товаром
product Product @relation(fields: [productId], references: [id], onDelete: Cascade)
productId String
// Временные метки
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
// Уникальность: один товар может быть только один раз в избранном у организации
@@unique([organizationId, productId])
@@map("favorites")
}