Sipariş ve iade
Asıl sipariş gerçeği buyerOrders koleksiyonudur. Durum makinesi: Alışveriş.
BuyerOrder (buyerOrders)
| Alan | Tip | Anlamı |
|---|---|---|
| code | string, zorunlu | İnsan okur kod |
| number | number, zorunlu | Sıra no |
| buyer | BuyerCopy | Alıcı anlık kopyası |
| buyerAddress | BuyerAddressCopy | Teslimat adresi kopyası |
| buyerInvoiceAddress | BuyerAddressCopy | Fatura adresi kopyası |
| note | string | Alıcı notu |
| status | BuyerOrderStatus, varsayılan PENDING | Sipariş durumu |
| products | BuyerOrderProduct[] | Kalemler |
| preparedImages | string[] | Hazırlık fotoğrafları |
| purchase | PurchasePayment | Ödeme kırılımı |
| delivery | BuyerOrderDelivery | Teslimat planı |
| warehouse | WarehouseCopy | Depo kopyası |
| pickerOfficer | OfficerCopy | Toplayan yetkili |
| transfers | ObjectId[] → BuyerOrderTransfer | Teslimat kayıtları |
| history | BuyerOrderHistory[] | Durum geçmişi |
| invoice | BuyerOrderInvoice | Kesilmiş belge özeti |
| officerNotes | BuyerOrderOfficerNote[] | İç not |
| pallet | number, 0 | Palet |
| lastCancelDate | Date | Son iptal |
| lastReturnDate | Date | Son iade |
| buyerOfficers | OfficerCopy[] | İlgili yetkililer |
| createdAt, updatedAt | Date | Zaman damgaları |
Kalem (BuyerOrderProduct)
| Alan | Tip | Anlamı |
|---|---|---|
| number | number | Kalem no |
| productId | number | Prisma ürün id |
| categoryIds | number[] | Kategoriler |
| code, name, image, warnings | string | Anlık ürün bilgisi |
| status | BuyerOrderStatus | Kalem durumu (iade alt durumları dahil) |
| quantity | number | Sipariş miktarı |
| deliveryQuantity | number, 0 | Teslim miktarı |
| vat, unit | kopya | KDV ve birim |
| unitAmount | number | miktar × birim çarpanı (toplam kg, şema açıklaması) |
| tareWeight | number, 0 | Dara |
| box | number, 0 | Kasa |
| price | ProductPriceCopy | Fiyat kademesi kopyası |
| vatAmount, totalAmount | number | İlk tutarlar |
| finalVatAmount, finalTotalAmount | number | Hazırlık sonrası tutarlar |
| isHks | boolean | HKS kalemi |
| transfer | ObjectId | Bu kalemin kurye kaydı |
| warehouseProduct | kopya | Depo ürün kartı |
| stockInReferences | dizi | Eski stok giriş id + miktar |
| stockOutReference | ObjectId | Eski stok çıkış (değişmez) |
| stockEntryReferences | dizi | FIFO lot id + miktar |
| stockExitReference | ObjectId | FIFO çıkış (değişmez) |
| hksNotifications | dizi | HKS ham yanıt, hatalar, zaman |
Teslimat bloğu
deliveryType (CUSTOMER / COURIER), deliveryDate, adres, transferProvider (PLATFORM), distanceKm, carryInside, carryInsideFee.
Ödeme bloğu (purchase)
Siparişe gömülüdür, ayrı koleksiyon değildir. Yöntem, çevrimiçi/çevrimdışı, sağlayıcı, tahsil/iade tutarı, payments referansı, ödeme tarihi, isPaid, tahsil eden, kargo, taksit, cari kullanımı, sabit hizmet, içeride taşıma, ürün/indirim/KDV/net toplam, para birimi, satır listeleri, havale bildirimi.
Havale alt nesnesi: bildirim zamanı, not, banka, IBAN, dekont, onay zamanı ve onaylayan, hatırlatma zamanı.
Geçmiş ve fatura özeti
Geçmiş action değerleri: onay, hazırlık, hazır, sevk, teslim, iade, iptal, ödendi, ödeme başarısız, zaman aşımı. Fatura özeti: belge no, UUID, tarih, profil, tip, tutar, vergi.
İade (buyerOrderReturns)
| Alan | Anlamı |
|---|---|
| code | İade kodu |
| buyerOrder / buyerOrderCode | Sipariş bağları |
| buyer, warehouseId, warehouse | Kim ve nereden |
| description | Açıklama |
| status | ReturnRequestStatus |
| items[] | Kalem, neden, medya |
| approvedBy, adminNote | Yönetici |
| officerInstruction, processedBy, officerNote | Yetkili |
| history, conversationId | İz ve sohbet |
Nedenler: ROTTEN, DEFORMED, LOW_QUALITY, DIFFERENT, EXCESS. Kalem başına en fazla 3 medya. returnMediaUploads geçici yüklemedir (userId, buyerOrderId, url).
Sorun (buyerOrderIssues)
status: OPEN, SEEN, RESOLVED. type: teslimat zamanı/tipi, kalite, fatura, diğer. Kalem problem tipi: hasarlı, eksik, kırık, yanlış, diğer.
Anket (orderSurveyResponses)
buyerOrderId, buyerId, responses[]. Soru şablonu Prisma’dadır; cevabın içine soru kopyası da gömülebilir.
Ürün talebi (productRequests)
buyer, isteğe bağlı ürün, productName, note, amount, status (PENDING / REVIEWED).
Heatmap ve AI ayarı
orderHeatmaps hücre özetidir. ordernoteaisettings yönetici talimatı ve güncelleyen id tutar.