Domain haritası
v2, v1'deki modülleri dört torbaya taşımadı. Kod, altı iş domain'i ile bunların ortak altyapısını ayıran üç katman halinde kuruldu.
Oklar bütün NestJS import grafiğini değil, alanlar arasındaki başlıca veri ve servis yönlerini gösterir.
core
İş alanına ait olmayan ortak parçalar burada yaşar:
auth: giriş, OTP, jetonlar ve global guard'laraccount: kullanıcının hesabı, cihazları ve loglarıapps: uygulama sürümü ve yasal metinlerarea: ülke, şehir, ilçe ve mahalle referansı; HTTP yolu yeni/areas/*yüzeyidir, v1/area/*yolu taşınmamıştırprisma,mongo,config: veri bağlantıları ve yapılandırmafirebase,sms,storage,pdf,maps,izibiz,payments: ortak dış sistem istemcilerilock: v1 ile aynı anahtar biçimini kullanan Redis kilitleri
catalog
Ürün ve vitrin bilgisinin sahibidir. Alıcı ürün listeleri, kategoriler, favoriler, piyasa fiyatları ve ürün talepleri burada bulunur. Fiyatlama ve satılabilirlik kararlarını orders alanına yayımlar.
v1'in saatlik MeiliSearch indeksi yerine ürün listesi ve arama doğrudan veritabanından okunur.
orders
Sepet, satın alma önizlemesi, sipariş oluşturma, kart/havale ödeme başlatma, teslimat görünümü, iade, sorun, anket ve iptal burada bulunur.
orders, buyerOrders ve payments ortak Mongo belgelerinin v2 tarafındaki sahibidir. Siparişi v1 biçiminde oluşturur; v1 geçiş boyunca hazırlık, fatura ve kart ödeme geri çağrısı gibi sonraki adımları işlemeye devam eder.
finance
Cari hesap, hareket defteri, tahsilat, havale onayı, kasa ve banka, gider, POS, fatura, içe aktarma ve finans raporlarını kapsar.
v2 finance yollarında iki belirgin yazma kapısı vardır:
LedgerService, v2 cari hareketlerini tek noktadan yazar. Geçiş boyunca v1 de aynıaccountTransactionsdefterine veFinancialAccount.balancealanına kendi yollarından yazmaya devam eder.MoneyBookService, para hesabı bakiyesi ve ilişkili hareketleri aynı işlemde yazar.
Satış ve alım raporları da bu alanın sorularıdır; v1'deki gibi bağımsız ve her şeyi okuyan bir report alanı kurulmaz.
logistics
Depo, kapsama bölgesi, FIFO stok, mal alımı, sayım ve tedarikçiye iade burada bulunur. finance, alım özetini üretirken lojistik koleksiyonunu doğrudan açmaz; LogisticsModule tarafından yayımlanan servisi kullanır.
Kapsama, minimum sepet ve alıcının deposu için ortak kararlar zones altında tutulur; katalog, sepet ve sipariş aynı sonucu buradan alır.
Salt okuma için iki açık istisna vardır: lojistik, satış faturası numarasını ve içe aktarılmış alış faturasını stok kaydıyla eşlemek için finance alanındaki Invoice ve InvoiceImport şemalarını kaydeder. Bu koleksiyonların yazma sahipliği finance'ta kalır.
parties
Sistemin işlem yaptığı tarafları bir araya getirir: müşteri, tedarikçiyle ilişkili profil, iç kullanıcı/personel, alıcı grubu, adres ve şirket tipi.
v1'de admin, buyer, buyer-group ve officer çevresine dağılmış bazı sorumluluklar burada alan odaklı yüzeylere dönüşür. Bütün eski admin/personel uçları henüz taşınmış değildir.
comms
Yeni mobil uygulamanın alıcı mesajlaşması, bildirimleri ve post akışı burada bulunur. Mesajlar MongoDB ile Firebase Realtime Database üzerinde v1'in kullandığı biçimlerle uyumlu yazılır; temsilci hatırlatma işini geçiş boyunca v1 kuyruğu işler.
Panelin bütün mesajlaşma ve destek kuyruğu yüzeyi v2'ye taşınmış değildir.
ops
ops, son kullanıcı veya panel iş alanı değildir. ADMIN tarafından açıkça çağrılan yeniden kurma ve backfill işlemlerini taşır:
- satış ve alım raporlarını yeniden kurma
- faturaların KDV kırılımını çıkarma
Zamanlanmış cron'lar ve genel migration uçları v1'de kalır.
v1 modülleriyle ilişki
v1 modülünden v2 domain'ine birebir eşleme yoktur. Örneğin:
| v1 kavramı | v2'deki yer |
|---|---|
basket, purchase, order, ödeme başlatma | orders |
financial, invoice, tahsilat ve finans raporları | finance |
stock, depo ve kapsama | logistics |
buyer, buyer-group, personel ve müşteri CRM | parties |
message, notification, alıcı postları | comms |
catalog, favori, fiyat analitiğinin alıcı yüzeyi | catalog |
auth, user, area, static, dış sistemler | core |
v1'in 27 modülünü iş gözüyle sınıflandıran eski analiz için v1 modül alan haritası sayfasına bakın.