Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Mimari

API nasıl kurulmuş

Haljet’in sunucu tarafı tek bir NestJS uygulamasıdır (haljet-api). Tüm istemciler (mobil, web, iç paneller) aynı API önekini kullanır: api. Geliştirme ortamında Swagger arayüzü swagger yolunda açılır; üretimde bu arayüz kapalıdır, Swagger belgesi yine de iç yapay zeka servisine verilir.

Katmanlar

KatmanGörevi
HTTPNestJS denetleyicileri. Varsayılan önek api.
İş kuralıModül servisleri. Sipariş, ödeme, stok gibi kurallar burada.
Olaylarİç olay yayıcı. Sipariş oluşunca bildirim, rapor, Firestore senkronu gibi yan işler tetiklenir.
KuyrukBull + Redis. Transfer sevk, rapor toplama, mesaj yapay zekası.
Zamanlanmış işNest Schedule. Fatura, heatmap, grup değerlendirme, indeks yenileme.
KilitMurLock (Redis). Aynı kullanıcının aynı anda iki sipariş oluşturması gibi yarışları keser.

Modül listesi: Modül haritası.

Güvenlik varsayılanı

Uygulama genelinde JWT erişim jetonu zorunludur (AtGuard). Açık uçlar @Public() ile işaretlenir: giriş, bölge listesi, genel katalog, ödeme geri bildirimi, İzibiz web kancası gibi.

MekanizmaNe zaman kullanılır
JWT erişim jetonuNeredeyse tüm uçlar. Süre: 1 gün.
JWT yenileme jetonuOturum yenileme. Süre: 7 gün.
API anahtarıÖzellikle auth uçları.
RolAlıcı / satıcı / yetkili / yönetici ayrımı.
İzin koduÖrneğin admin:buyer:full, officer:buyer-order-transfer:full.

İstek ve yanıt

Doğrulama class-validator ile yapılır. Dil, Accept-Language başlığından okunur; varsayılan dil Türkçe. Sayfalı listelerde yanıt gövdesi şu biçimdedir: asıl kayıtlar data altında, sayfa bilgisi isteğe bağlı meta altında (page, limit, total, totalPages).

Çevredeki sistemler

Bunların her biri Altyapı ve dış sistemler sayfasında açıklanır.

SistemRol
MySQLAna ilişkisel kayıt
MongoDBSipariş ve operasyon belgeleri
RedisKuyruk, kilit, önbellek
MeiliSearchÜrün araması
FirebasePush, Firestore alıcı senkronu, dosya
BigQueryAnalitik olay akışı
PayTR / PaywallKart ve EFT ödeme
İzibizE-fatura / e-arşiv
HKSHal kayıt sistemi bildirimleri
NetgsmSMS
ResendE-posta
TelegramOperasyon uyarıları
Google Geminiİç yapay zeka metinleri

Uygulama içi dil

API kodu İngilizce isimler kullanır. İş dilinde karşılıklar:

Kod adıİş adı
BuyerAlıcı
SellerSatıcı
OfficerYetkili / saha veya depo personeli
AdminYönetici
WarehouseDepo
BuyerOrderAlıcı siparişi
TransferTeslimat taşıması
FinancialAccountCari hesap