Kimlik ve erişim
Bu grup, “kim bu kişi ve nerede?” sorusunu cevaplar. Sipariş ve ödeme bu temelin üstüne kurulur.
auth
Görevi: Hesap açmak, doğrulamak, jeton vermek ve oturumu kapatmak.
Denetleyici yolu auth. Sınıf düzeyinde API anahtarı bekçisi vardır. Kayıt ve giriş uçları herkese açıktır; çıkış kimliği doğrulanmış kullanıcı içindir.
| Servis | İş |
|---|---|
| Giriş | Telefon, Firebase kimliği veya parola. Jeton üretir, yenileme özetini kullanıcıya yazar. |
| Kayıt | Alıcı, satıcı, yetkili, yönetici tipleriyle. Alıcı kaydında Telegram uyarısı, pazarlama yetkililerine push, AdminBuyer bağlantısı, Firestore senkron olayı, aktifse kayıt ödülü (financial), BigQuery kayıt olayı vardır. |
| Telefon / e-posta | Kod üretir ve doğrular. Kodlar Prisma PhoneVerification / EmailVerification tablolarındadır. |
Şema: Kimlik ve izinler. Akış: Kayıt ve giriş.
user
Görevi: Hesabın kendisi — ad, iletişim, parola, avatar, cihaz, hata logu.
| Yol | Erişim |
|---|---|
user | Kimliği doğrulanmış herhangi bir tip |
user/device | FCM cihaz kaydı |
user/log | İstemci logu (Mongo userLogs) |
Cihaz jetonu hem Prisma UserDevice tablosuna yazılır hem de sipariş belgelerindeki kullanıcı kopyasına gömülür; böylece push, sipariş anındaki jetonlarla da gönderilebilir.
area
Görevi: Adres hiyerarşisi. Ülke → il → ilçe → mahalle. Uç area herkese açıktır.
HKS entegrasyonu için ülke, il, ilçe ve mahallede isteğe bağlı hksCode vardır. Adresler bu hiyerarşiye bağlanır. Detay: Coğrafya ve adres.
Bağlı yapılar
Kimlik tek başına durmaz:
- Alıcı, satıcı, yetkili, yönetici profil tabloları kullanıcıya 1:1 bağlanır → Kişiler ve CRM
- İzin kodları
Permission/UserPermission→ Roller ve yetkiler - Alıcı adresi hem kimlik hem teslimat hem fatura içindir → Alışveriş
- Yeni alıcı kaydı cari ödül yazabilir → Kayıt ödülü