Katalog ve stok kartı
Ürünün tanımı burada, sipariş kalemi Mongo’dadır. Depodaki miktar ve satış fiyatı da bu gruptadır; giriş-çıkış hareketi Mongo’dadır.
Vat ve Unit
KDV: name, rate (Float). Birim: name, isteğe bağlı shortName, symbol, multipler (Float, varsayılan 1 — şemadaki yazım).
Category
Ağaç. parentId isteğe bağlı. name, description, image, priority (0), isActive (true), deletedAt soft delete.
Product
code benzersizdir. Üst ürün (parentId) varyant ağacı içindir.
| Alan | Tip | Anlamı |
|---|---|---|
| code | String, unique | Ürün kodu |
| name | String | Ad |
| descriptive | String? | Kısa tanım |
| description | String? (Text) | Uzun açıklama |
| priority | Int, 0 | Vitrin sırası |
| vatId, unitId | Int | KDV ve birim |
| isActive | Boolean, true | Satışta mı |
| isHks | Boolean, true | HKS’ye tabi mi |
| warnings | String? (Text) | Uyarı metni |
Çocuk tablolar: görseller, kategoriler, favoriler, depo ürünleri, sepet, şirket tipi görünürlüğü, benzer adlar, HKS kodları, saklama koşulları, dış fiyat eşlemesi, ticker.
ProductImage
url, priority (0).
ProductCategory
(productId, categoryId) bileşik anahtar.
ProductSimilarName
Arama eş anlamlısı. name, priority (0), isActive.
ProductHks
| Alan | Tip | Anlamı |
|---|---|---|
| productCode | String? | HKS ürün kodu |
| code | String | HKS kod |
| name | String | HKS adı |
ProductStorageCondition
key = StorageConditionType (sıcaklık, nem, ışık, havalandırma, ambalaj, raf ömrü, diğer). value metin, priority 0.
ProductCompanyType
Hangi şirket tipinin ürünü göreceği. (companyTypeId, productId) tektir. priority isteğe bağlı.
CompanyType
name, isteğe bağlı hksCode. Alıcılar ve ürün görünürlüğü bağlanır.
WarehouseProduct
Depodaki ürün kartı. (warehouseId, productId) tektir.
| Alan | Tip | Anlamı |
|---|---|---|
| stock | Float, 0 | Güncel miktar |
| criticalStock | Float, 0 | Kritik eşik |
| minQuantity | Float, 1 | Asgari sipariş miktarı |
| isActive | Boolean, true | Listeleniyor mu |
WarehouseProductPrice
Kademeli fiyat. price, margin (varsayılan 30), currency (TRY), minQuantity, avarageCost (0, ortalama maliyet), discountPercentage (0), priceWithoutDiscount (0).
StockBalance
WarehouseProduct ile 1:1. amount (Float, 0) ayrı bakiye miktarıdır; stock alanından farklı bir sayaç olarak durur.
PriceSource
Dış fiyat kaynağı. key benzersiz (mum belgesindeki source alanı). adapter çekici adı. config JSON. isActive.
ExternalProductMapping
(sourceId, externalName) tektir. unit isteğe bağlı. productId boşsa henüz eşlenmemiştir.
ProductTickerStats
Ürünle 1:1. latestPrice, changePercent, volatilityRangePercent.
ProductFavorite
(userId, productId) bileşik anahtar. createdAt.
ProductBasket
(userId, productId) benzersiz. quantity Float, isActive true.
Post
İçerik. title, description, image, video, priority, isActive, type (SLIDER / BANNER / STORY / ACADEMY), userType (hedef kitle), link, isteğe bağlı sahip, publishedAt / unPublishedAt, deletedAt.