231 lines
5.8 KiB
Markdown
231 lines
5.8 KiB
Markdown
|
|
# 🚀 Hosting Platform - İş Akışı Dokümantasyonu
|
|||
|
|
|
|||
|
|
> Müşteri ve Admin panellerinin tüm iş akışlarını görsel diyagramlar ve detaylı açıklamalarla içeren kapsamlı dokümantasyon.
|
|||
|
|
|
|||
|
|
## 📚 Dokümantasyon Dosyaları
|
|||
|
|
|
|||
|
|
### 1. 📊 [WORKFLOW_DIAGRAMS.md](./WORKFLOW_DIAGRAMS.md)
|
|||
|
|
Tüm görsel diyagramların açıklamaları ve kullanım kılavuzu.
|
|||
|
|
|
|||
|
|
**İçerik:**
|
|||
|
|
- Genel iş akışları (Müşteri + Admin)
|
|||
|
|
- Domain setup detaylı sequence diagram
|
|||
|
|
- API endpoint yapısı
|
|||
|
|
- Veritabanı şemaları (ER diagrams)
|
|||
|
|
- Sistem mimarisi
|
|||
|
|
|
|||
|
|
### 2. 📖 [WORKFLOW_DOCUMENTATION.md](./WORKFLOW_DOCUMENTATION.md)
|
|||
|
|
Detaylı teknik dokümantasyon ve API referansı.
|
|||
|
|
|
|||
|
|
**İçerik:**
|
|||
|
|
- Proje genel bakış
|
|||
|
|
- Müşteri panel iş akışları (adım adım)
|
|||
|
|
- Admin panel iş akışları (adım adım)
|
|||
|
|
- Tüm API endpoint'lerin detaylı açıklaması
|
|||
|
|
- Veritabanı SQL şemaları
|
|||
|
|
- Sistem mimarisi ve deployment
|
|||
|
|
- Güvenlik yapılandırması
|
|||
|
|
- Monitoring ve logging
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🎯 Hızlı Başlangıç
|
|||
|
|
|
|||
|
|
### Müşteri Panel İş Akışı Özeti
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
1. Kayıt/Giriş → JWT Token
|
|||
|
|
2. Dashboard → Domain Listesi
|
|||
|
|
3. Domain Ekle:
|
|||
|
|
├─ Domain Doğrula
|
|||
|
|
├─ CF Hesap Seç (Company/Own)
|
|||
|
|
├─ Zone Doğrula
|
|||
|
|
├─ NS Kontrolü
|
|||
|
|
├─ DNS Önizleme
|
|||
|
|
├─ DNS Uygula
|
|||
|
|
├─ SSL Yapılandır
|
|||
|
|
└─ Kaydet
|
|||
|
|
4. Container Deploy (opsiyonel)
|
|||
|
|
5. Plan Yükselt (opsiyonel)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Admin Panel İş Akışı Özeti
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
1. Admin Giriş → JWT + Audit Log
|
|||
|
|
2. Dashboard → İstatistikler
|
|||
|
|
3. Yönetim:
|
|||
|
|
├─ Müşteriler (Liste, Detay, Plan Güncelle)
|
|||
|
|
├─ Planlar (CRUD, Limit Ayarla)
|
|||
|
|
├─ CF Hesapları (CRUD, Token Şifrele)
|
|||
|
|
└─ Audit Logs (Görüntüle, Filtrele)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🔍 Görsel Diyagramlar
|
|||
|
|
|
|||
|
|
Tüm diyagramlar interaktif Mermaid formatında oluşturulmuştur ve düzenlenebilir.
|
|||
|
|
|
|||
|
|
### Mevcut Diyagramlar
|
|||
|
|
|
|||
|
|
1. **Müşteri Panel - Genel İş Akışı**
|
|||
|
|
- Kimlik doğrulama
|
|||
|
|
- Dashboard navigasyonu
|
|||
|
|
- Domain yönetimi (8 adım)
|
|||
|
|
- Container deployment
|
|||
|
|
- Abonelik yönetimi
|
|||
|
|
|
|||
|
|
2. **Admin Panel - Genel İş Akışı**
|
|||
|
|
- Admin authentication
|
|||
|
|
- Müşteri yönetimi
|
|||
|
|
- Plan yönetimi
|
|||
|
|
- CF hesap yönetimi
|
|||
|
|
- Audit sistemi
|
|||
|
|
|
|||
|
|
3. **Domain Setup - Sequence Diagram**
|
|||
|
|
- Kullanıcı → Frontend → API → Database → Cloudflare
|
|||
|
|
- Tüm adımların detaylı akışı
|
|||
|
|
- Hata senaryoları
|
|||
|
|
|
|||
|
|
4. **API Endpoint Yapısı - Müşteri Panel**
|
|||
|
|
- 5 ana kategori
|
|||
|
|
- 20+ endpoint
|
|||
|
|
|
|||
|
|
5. **API Endpoint Yapısı - Admin Panel**
|
|||
|
|
- 5 ana kategori
|
|||
|
|
- 15+ endpoint
|
|||
|
|
|
|||
|
|
6. **Veritabanı Şeması - Müşteri Panel**
|
|||
|
|
- 5 ana tablo
|
|||
|
|
- İlişkiler (ER diagram)
|
|||
|
|
|
|||
|
|
7. **Veritabanı Şeması - Admin Panel**
|
|||
|
|
- 4 ana tablo
|
|||
|
|
- İlişkiler (ER diagram)
|
|||
|
|
|
|||
|
|
8. **Sistem Mimarisi - Genel Bakış**
|
|||
|
|
- 6 katman
|
|||
|
|
- Tüm bileşenler ve bağlantılar
|
|||
|
|
|
|||
|
|
9. **Kimlik Doğrulama Akışı**
|
|||
|
|
- Müşteri vs Admin karşılaştırması
|
|||
|
|
- Güvenlik katmanları
|
|||
|
|
|
|||
|
|
10. **Data Flow - Sistem Geneli**
|
|||
|
|
- Kullanıcıdan infrastructure'a veri akışı
|
|||
|
|
- Tüm servisler arası iletişim
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🛠️ Diyagramları Düzenleme
|
|||
|
|
|
|||
|
|
Tüm diyagramlar Mermaid syntax ile oluşturulmuştur. Düzenlemek için:
|
|||
|
|
|
|||
|
|
### Online Editör
|
|||
|
|
1. [Mermaid Live Editor](https://mermaid.live/) açın
|
|||
|
|
2. Diyagram kodunu kopyalayın
|
|||
|
|
3. Düzenleyin ve önizleyin
|
|||
|
|
4. Export edin (PNG, SVG, PDF)
|
|||
|
|
|
|||
|
|
### VS Code
|
|||
|
|
1. "Markdown Preview Mermaid Support" eklentisini yükleyin
|
|||
|
|
2. Markdown dosyasını açın
|
|||
|
|
3. Preview'da diyagramları görün
|
|||
|
|
|
|||
|
|
### Örnek Mermaid Kodu
|
|||
|
|
```mermaid
|
|||
|
|
graph TB
|
|||
|
|
A[Başlangıç] --> B{Karar}
|
|||
|
|
B -->|Evet| C[İşlem 1]
|
|||
|
|
B -->|Hayır| D[İşlem 2]
|
|||
|
|
C --> E[Son]
|
|||
|
|
D --> E
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📋 API Endpoint Hızlı Referans
|
|||
|
|
|
|||
|
|
### Müşteri Panel (Port 5000)
|
|||
|
|
|
|||
|
|
| Kategori | Endpoint | Method | Açıklama |
|
|||
|
|
|----------|----------|--------|----------|
|
|||
|
|
| Auth | `/api/auth/register` | POST | Yeni kullanıcı kaydı |
|
|||
|
|
| Auth | `/api/auth/login` | POST | Kullanıcı girişi |
|
|||
|
|
| Customer | `/api/customer/domains` | GET | Domain listesi |
|
|||
|
|
| DNS | `/api/dns/validate-domain` | POST | Domain doğrulama |
|
|||
|
|
| DNS | `/api/dns/apply-changes` | POST | DNS değişikliklerini uygula |
|
|||
|
|
|
|||
|
|
### Admin Panel (Port 5001)
|
|||
|
|
|
|||
|
|
| Kategori | Endpoint | Method | Açıklama |
|
|||
|
|
|----------|----------|--------|----------|
|
|||
|
|
| Auth | `/api/auth/login` | POST | Admin girişi |
|
|||
|
|
| Plans | `/api/plans` | GET/POST | Plan listesi/oluştur |
|
|||
|
|
| CF Accounts | `/api/cf-accounts` | GET/POST | CF hesap yönetimi |
|
|||
|
|
| Customers | `/api/customers` | GET | Müşteri listesi |
|
|||
|
|
| Audit | `/api/audit/logs` | GET | Audit log listesi |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🔒 Güvenlik Özeti
|
|||
|
|
|
|||
|
|
- **Authentication**: JWT tokens (24 saat geçerlilik)
|
|||
|
|
- **Password**: bcrypt hashing
|
|||
|
|
- **API Tokens**: Fernet encryption
|
|||
|
|
- **CORS**: Domain-specific policies
|
|||
|
|
- **Database**: Separate databases (isolation)
|
|||
|
|
- **HTTPS**: Cloudflare SSL (Full mode)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📊 Veritabanı Özeti
|
|||
|
|
|
|||
|
|
### Müşteri Panel (hosting_db)
|
|||
|
|
- **users**: 5 tablo
|
|||
|
|
- **customers**: Kullanıcı hesapları
|
|||
|
|
- **domains**: Müşteri profilleri
|
|||
|
|
- **dns_records**: Domain kayıtları
|
|||
|
|
- **cloudflare_accounts**: DNS detayları
|
|||
|
|
|
|||
|
|
### Admin Panel (admin_hosting_db)
|
|||
|
|
- **admin_users**: 4 tablo
|
|||
|
|
- **subscription_plans**: Admin hesapları
|
|||
|
|
- **cloudflare_accounts**: Abonelik planları
|
|||
|
|
- **audit_logs**: Audit kayıtları
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🚀 Deployment Özeti
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Frontend Build
|
|||
|
|
cd MusteriPanel/frontend && npm run build
|
|||
|
|
cd AdminPanel/frontend && npm run build
|
|||
|
|
|
|||
|
|
# Database Migration
|
|||
|
|
cd MusteriPanel/backend && flask db upgrade
|
|||
|
|
cd AdminPanel/backend && flask db upgrade
|
|||
|
|
|
|||
|
|
# Start Services
|
|||
|
|
sudo supervisorctl start all
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📞 İletişim ve Destek
|
|||
|
|
|
|||
|
|
- **Repository (Müşteri)**: https://gitea.argeict.net/hostadmin/hosting-platform
|
|||
|
|
- **Repository (Admin)**: https://gitea.argeict.net/argeict/admin-panel
|
|||
|
|
- **Production (Müşteri)**: https://argeict.net
|
|||
|
|
- **Production (Admin)**: https://admin.argeict.net
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**Son Güncelleme**: 2024-01-12
|
|||
|
|
**Versiyon**: 1.0.0
|
|||
|
|
**Durum**: ✅ Production Ready
|
|||
|
|
|
|||
|
|
|