No description
Find a file
2026-06-10 12:19:57 +03:00
.github/instructions LisformWorkflow düzenlemesi 2026-05-22 23:41:36 +03:00
api Permission Granted Users 2026-06-10 12:19:57 +03:00
configs Netdata dashboard kurulumu ve sunucu performansı 2026-06-05 17:22:02 +03:00
ui Permission Granted Users 2026-06-10 12:19:57 +03:00
.gitignore sql backup 2026-04-30 11:54:24 +03:00
claude.md AI Instructions 2026-03-25 08:52:55 +03:00
README.md Readme tanımalaması yapıldı 2026-06-09 15:54:05 +03:00

Uygulama Kullanıcı Kılavuzu

Dokümantasyon Kapsam Planı

Bu kılavuz, proje kodunda doğrulanabilen backend servisleri, frontend ekranları, dinamik route/menü yapısı, seed edilen liste formları, Swagger yapılandırması ve ortak kullanıcı arayüzü bileşenleri esas alınarak hazırlanmıştır.

Kapsama alınan ana alanlar:

Kapsam Koddan Doğrulanan Kaynak
Giriş, kayıt, şifre sıfırlama, hesap doğrulama ui/src/views/auth, account.service.ts, auth.service.ts
Dinamik menü ve route yapısı DynamicRouter, PlatformApplicationConfigurationContributor, MenusData.json
Liste/form altyapısı Grid.tsx, FormDevExpress.tsx, ListForm*AppService, ListFormSeeder_*
Yönetim ekranları Kimlik, tenant, organizasyon, ayarlar, menüler, raporlar, dosyalar, audit log, intranet, forum, video oda
Platform modülleri Languages, Settings, Notifications, MailQueue, Sender, SqlQueryManager
API ve Swagger PlatformHttpApiHostModule, ABP conventional controllers, OAuth Swagger UI
Ortak komponentler components/ui, views/list, views/form, components/importManager, views/shared

Kapsam dışında tutulan veya doğrulama notu düşülen alanlar:

Alan Gerekçe
supplychain, maintenance, warehouse, projects, crm, mrp, accounting route sabitleri route.constant.ts içinde sabit olarak görülüyor; ancak bu kod taramasında bu alanlara ait fiziksel view/servis veya seed edilmiş menü kaydı doğrulanamadı.
Canlı Swagger endpoint listesi Uygulama çalıştırılmadan statik kod üzerinden incelendi; endpointler modül bazlııklanmıştır.
Kuruma özel rol isimleri Kodda permission adları net; ancak müşteri ortamındaki rol-permission eşleştirmeleri veritabanında değişebilir.

İçindekiler

  1. Genel Bakış
  2. Giriş ve Yetkilendirme
  3. Ana Menü ve Navigasyon
  4. Modüller ve Ekranlar
  5. Ortak Komponentler
  6. API ve Swagger Açıklaması
  7. Kullanıcı Rolleri ve Yetkiler
  8. Formlar ve Zorunlu Alanlar
  9. Listeleme, Filtreleme ve Raporlama Özellikleri
  10. Hata Mesajları ve Kullanıcı Bildirimleri
  11. Sık Kullanılan Senaryolar
  12. Sık Sorulan Sorular
  13. Ekler
  14. Eksik / Netleştirilmesi Gereken Konular

1. Genel Bakış

Uygulama, ABP Framework tabanlı çok kiracılı bir platform uygulamasıdır. Backend tarafında C# ve ABP; frontend tarafında React, Tailwind CSS, DevExtreme bileşenleri ve özel UI komponentleri kullanılmaktadır.

Uygulamanın ana amacı, kurumların yönetim, tanım, içerik, liste/form, raporlama, bildirim, dosya, forum, intranet ve video toplantı süreçlerini tek bir yönetim paneli üzerinden yürütmesini sağlamaktır.

Kodda doğrulanan başlıca kullanım alanları:

Alan ıklama
Kimlik ve erişim yönetimi Kullanıcı, rol, permission, permission group, organizasyon birimi ve oturum yönetimi.
Dinamik liste/form yönetimi Kod veya veritabanı tanımıyla çalışan liste, form, grafik, pivot, ağaç, gantt, scheduler, widget ve workflow destekli ekranlar.
SaaS ve tenant yönetimi Tenant kayıtları, tenant bağlantı ayarları, tenant bazlı ayrı veritabanı kullanımı, şube ve genel tanım tabloları.
Yönetim ve ayarlar Sistem ayarları, menü, route, dinamik component, custom endpoint, datasource ve background worker yönetimi.
İçerik ve public site Ana sayfa, hakkımızda, hizmetler, ürünler, ödeme, blog, demo ve iletişim içerikleri.
Intranet Duyuru, anket, sosyal gönderi ve etkinlik kayıtları.
Forum Kategori, konu, gönderi, yorum, beğeni, sabitleme, kilitleme ve çözüm işaretleme akışları.
Dosya yönetimi Dosya/klasör listeleme, yükleme, indirme, kopyalama, taşıma, yeniden adlandırma ve silme.
Bildirimler Bildirim türleri, kuralları, kullanıcı bildirimleri ve kanal bazlı bildirim ayarları.
Video oda Oda oluşturma, listeleme, başlatma, bitirme, katılımcı, sohbet, ekran paylaşımı ve canlı bağlantı işlemleri.
Raporlama DevExpress rapor görüntüleme/tasarım altyapısı ve rapor kategori/template listeleri.

Uygulama farklı kullanıcı profilleri tarafından kullanılabilir:

Kullanıcı Tipi Tipik Kullanım
Son kullanıcı Yetkili olduğu liste/form ekranlarında kayıt görüntüler, ekler, günceller, filtreler ve raporlar.
Yönetici Kullanıcı, rol, tenant, menü, ayar, dosya, bildirim ve sistem tanımlarını yönetir.
İçerik yöneticisi Public site içerikleri, blog, ürün, demo ve iletişim kayıtlarını yönetir.
Teknik kullanıcı Swagger, SQL Query Manager, Developer Kit, data source, dynamic service ve custom endpoint ekranlarını kullanır.

Genel kullanım mantığı menü odaklıdır. Kullanıcının sahip olduğu permission değerlerine göre menüler ve işlem butonları görünür. Dinamik liste ekranlarında ekleme, düzenleme, silme, dışa aktarma, içe aktarma, filtreleme ve not ekleme gibi davranışlar her liste formunun kendi ayarlarına göre değişebilir.

Platform aynı zamanda low-code geliştirme mantığını destekler. Yetkili teknik kullanıcılar veritabanı tablolarını, datasource kayıtlarını, dinamik listeleri, route kayıtlarını, menüleri, componentleri, custom endpointleri, CRUD endpointleri ve C# dynamic service kayıtlarını yöneterek yeni ekranlar ve iş akışları oluşturabilir. Bu yapı, uygulamanın müşteri veya tenant ihtiyaçlarına göre kod dağıtımı gerektirmeden genişletilmesine yardımcı olur.

2. Giriş ve Yetkilendirme

Giriş Ekranı

Giriş ekranı /login adresinde yer alır. Kodda doğrulanan alanlar:

Alan ıklama
Kullanıcı adı Zorunludur.
Şifre Zorunludur.
Beni hatırla Opsiyonel seçimdir.
İki aşamalı doğrulama kodu twoFactor aktif olduğunda zorunlu hale gelir.

Giriş işleminde auth.service.ts üzerinden token alınır. Başarılı giriş sonrasında kullanıcı yetkili admin alanına yönlendirilir.

Kayıt ve Hesap İşlemleri

Kodda aşağıdaki kullanıcı hesap ekranları doğrulanmıştır:

Ekran Route Temel İşlev
Kayıt /register Yeni kullanıcı kaydı oluşturur.
Şifremi unuttum /forgot-password Şifre sıfırlama kodu gönderir.
Şifre sıfırlama /reset-password Token ile yeni şifre belirler.
Hesap doğrulama kodu gönderme /confirm E-posta doğrulama kodu gönderir.
Hesap doğrulama /confirm/:userId/:token E-posta doğrulamasını tamamlar.
Süreli giriş talebi /extend-login Ek giriş süresi veya özel giriş isteği gönderir.

Kayıt formunda e-posta, şifre, şifre tekrarı, ad, soyad ve captcha alanları zorunlu olarak tanımlanmıştır. Şifre tekrarı alanı şifreyle aynı olmalıdır.

Kullanıcı Rolleri

Kodda sabit rol isimlerinden çok permission odaklı yetkilendirme kullanımı görülmektedir. ABP Identity rollerine permission atanır; kullanıcılar rol veya kullanıcı bazlı permission üzerinden ekran ve işlem erişimi kazanır.

Öne çıkan yetki kaynakları:

Kaynak ıklama
ABP Identity permissionları Kullanıcı, rol, organizasyon birimi, tenant ve hesap yönetimi.
PlatformConsts.IdentityPermissions Kullanıcı/rol için create, update, delete, export, import, note, manage permissions ve manage roles izinleri.
SeedConsts permissionları Menü, liste form, ayar, bildirim, public içerik, rapor ve tanım ekranları için seed edilen permissionlar.
Dinamik list form permissionları Her liste formu için okuma, ekleme, güncelleme, silme, export, import ve note gibi CRUD tabanlı yetkiler.
Route authority alanı Dinamik route kayıtlarında ilgili ekranın ihtiyaç duyduğu permission listesi.

Yetkilere Göre Ekran/İşlem Farklılıkları

Kullanıcı yetkisi yoksa:

Durum Kullanıcı Davranışı
Menü yetkisi yok Menü öğesi kullanıcıya gösterilmeyebilir.
Route yetkisi yok PermissionGuard erişimi engeller.
API 401/403 döner Kullanıcı /admin/access-denied veya /access-denied ekranına yönlendirilir.
Liste işlem yetkisi yok Ekleme, düzenleme, silme, içe/dışa aktarma veya not butonları görünmeyebilir ya da devre dışı kalabilir.

3. Ana Menü ve Navigasyon

Menü yapısı veritabanı/seed kayıtları üzerinden yönetilir. Backend PlatformApplicationConfigurationContributor, route ve custom component kayıtlarını uygulama konfigürasyonuna ekler. Frontend DynamicRouter, bu route kayıtlarına göre ekranları yükler.

Koddan doğrulanan ana menü grupları:

Menü Grubu ıklama
App.Saas Tenant, şube, tanımlar, list form, language, notification, background worker, menu ve developer kit gibi platform yönetimi ekranları.
App.Administration Ayarlar, kimlik yönetimi, organizasyon, kısıtlar, raporlar, intranet, video oda, dosya ve forum ekranları.
App.Public Site içerikleri, ürün, ödeme, satış siparişi, blog, demo ve iletişim yönetimi.
App.DeveloperKit List form wizard, custom endpoint, CRUD endpoint, component ve dynamic service yönetimi.
Abp.Identity Kullanıcı, rol, permission, permission group, claim type, audit log, session ve organizasyon birimi ekranları.

Navigasyon kuralları:

Kullanım ıklama
Kök adres / Subdomain varsa login ekranına, yoksa public home ekranına yönlenir.
Admin alanı /admin/* Korunan route alanıdır; giriş ve permission kontrolü yapılır.
Public ekranlar Giriş gerektirmeyen site sayfalarıdır.
Dynamic route Route kaydındaki componentPath fiziksel React component veya dinamik component olarak yüklenir.
Bulunamayan sayfa NotFound ekranı gösterilir.
Yetkisiz erişim AccessDenied ekranı gösterilir.

Uygulama route yapısı üç ana kullanım tipini destekler:

Route Tipi ıklama
Public Ziyaretçilerin veya giriş yapmamış kullanıcıların erişebildiği public site ekranları.
Authenticated Login, register, şifre sıfırlama, hesap doğrulama gibi kimlik ekranları.
Protected Giriş ve permission kontrolü gerektiren admin/yönetim ekranları.

Route kayıtları veritabanından beslendiği için hem uygulama içindeki hazır React ekranları hem de Developer Kit ile oluşturulan dinamik componentler route olarak sunulabilir. Menü kayıtları da aynı route pathleriyle ilişkilendirilir; böylece menü grupları, alt menüler ve sürükle-bırak sıralama ile kullanıcı navigasyonu yönetilebilir.

4. Modüller ve Ekranlar

Bu bölümde yalnızca kodda doğrulanabilen modüller ve ekranlar açıklanmıştır.

Giriş ve Hesap Yönetimi

Amaç

Kullanıcının sisteme giriş yapmasını, yeni hesap oluşturmasını, şifresini sıfırlamasını ve hesabını doğrulamasını sağlar.

Ekranda Görülen Alanlar

Ekran Alanlar
Login Kullanıcı adı, şifre, beni hatırla, iki aşamalı doğrulama kodu.
Register E-posta, şifre, şifre tekrarı, ad, soyad, captcha.
Forgot Password E-posta, captcha.
Reset Password Yeni şifre, şifre tekrarı.
Confirmation E-posta veya doğrulama token bilgileri.

Kullanıcı İşlemleri

İşlem ıklama
Giriş yapma Kullanıcı adı ve şifre ile oturum açılır.
Kayıt olma Zorunlu alanlar doldurularak hesap oluşturulur.
Şifre sıfırlama E-posta ile alınan token üzerinden yeni şifre belirlenir.
Hesap doğrulama Doğrulama linki veya kodu ile hesap onaylanır.
Çıkış yapma Token iptal edilerek oturum kapatılır.

İş Akışı

  1. Kullanıcı giriş ekranını açar.
  2. Zorunlu alanları doldurur.
  3. Sistem kimlik bilgilerini doğrular.
  4. İki aşamalı doğrulama gerekiyorsa ek kod istenir.
  5. Başarılı işlem sonrası kullanıcı yetkili olduğu admin veya public alana yönlendirilir.

Dikkat Edilmesi Gerekenler

Konu ıklama
Captcha Kayıt, şifre sıfırlama ve doğrulama kodu gönderme ekranlarında zorunlu olabilir.
Şifre tekrarı Şifre ve şifre tekrarı aynı olmalıdır.
401/403 Oturum süresi dolduğunda veya yetki yoksa erişim engellenir.
Token süreleri Backend access token için 60 dakika, refresh token için 90 dakika yapılandırmıştır.

Dashboard

Amaç

Admin alanına giriş yapan kullanıcıya başlangıç ekranı sağlar. Route sabiti /admin/dashboard olarak tanımlıdır ve DashboardAppService backend tarafında bulunur.

Ekranda Görülen Alanlar

Kodda Dashboard.tsx ekranı ve DashboardAppService doğrulanmıştır. Dashboard içeriği kurulum ve route kayıtlarına bağlı olarak değişebilir.

Kullanıcı İşlemleri

İşlem ıklama
Genel durumu görüntüleme Kullanıcı ana yönetim panelinden özet bilgilere ulaşır.
Menüye geçiş Sol/üst menüden yetkili olduğu modüle geçer.

İş Akışı

  1. Kullanıcı giriş yapar.
  2. Admin kök route'u dashboard ekranına yönlendirir.
  3. Kullanıcı menüden işlem yapmak istediği modülü seçer.

Dikkat Edilmesi Gerekenler

Dashboard içeriği route, menu ve backend veri durumuna bağlıdır. Koddan tüm dashboard kartları ayrıntılı olarak doğrulanmadığı için bu bölüm genel tutulmuştur.

Dinamik Liste Ekranları

Amaç

Uygulamanın birçok yönetim ekranı, tek bir dinamik liste altyapısı üzerinden çalışır. Bu altyapı liste kolonlarını, filtreleri, form alanlarını, yetkileri, alt formları, notları, import/export davranışını ve workflow aksiyonlarını list form tanımından alır.

Dinamik listeler yalnızca klasik tablo görünümü üretmez. Platform DevExpress tabanlı Grid, Pivot, Chart, Tree, Gantt, Scheduler ve Form bileşenlerini dinamik olarak yönetebilir. Böylece aynı datasource ve list form tanımı üzerinden farklı veri görünümü ve iş akışı ekranları hazırlanabilir.

Ekranda Görülen Alanlar

Dinamik liste ekranlarında görülebilen başlıca alanlar:

Alan ıklama
Veri tablosu DevExtreme DataGrid tabanlı kayıt listesi.
Kolonlar List form field tanımına göre gelir.
Arama paneli Genel arama yapılmasını sağlar.
Filtre satırı Kolon bazlı filtreleme yapılabilir.
Header filter Kolon değerleri üzerinden seçimli filtreleme sağlar.
Grup paneli Alanlar sürüklenerek gruplama yapılabilir.
Kolon seçici Yetkili ve aktifse kolon görünürlüğü düzenlenebilir.
Sayfalama Sayfa boyutu ve navigasyon butonları list form ayarına göre gösterilir.
Özet alanları Toplam, ortalama, adet, minimum, maksimum gibi özetler gösterilebilir.
Extra filter Listeye özel ek filtre toolbar alanları.
Alt formlar Seçili kayda bağlı alt liste veya form sekmeleri.
Not paneli Kayıt bazlı not görüntüleme/ekleme yetkiye bağlıdır.
Import yöneticisi Excel/CSV içe aktarma desteklenir.
Widget alanları Listenin üst kısmında SQL ile beslenebilen birden fazla özet widget gösterilebilir.

Kullanıcı İşlemleri

İşlem ıklama
Listeleme Kayıtlar tablolarda görüntülenir.
Kayıt ekleme Yetki ve list form ayarı uygunsa yeni kayıt formu açılır.
Kayıt düzenleme Yetki ve alan bazlı düzenleme ayarına göre kayıt güncellenir.
Kayıt silme Tekil veya çoklu silme yapılabilir. Çoklu silme birden fazla kayıt seçildiğinde görünür.
Filtreleme Filtre satırı, header filter, extra filter ve arama paneli kullanılabilir.
Gruplama Grup paneli açıksa kolon bazlı gruplama yapılabilir.
Dışa aktarma List form ayarına göre export kullanılabilir.
İçe aktarma Import Dashboard üzerinden template alma, dosya yükleme, önizleme ve aktarım yapılabilir.
Workflow işlemi Seçili satırların durumuna göre onay/red gibi workflow butonları gösterilebilir.
Not ekleme Not yetkisi ve kayıt anahtarı varsa not paneli açılır.
Alt liste oluşturma Dinamik formun altında ilişkili sub listeler gösterilebilir.
İlişkili form kullanma İki form arasında parent-child ilişkiler kurulabilir.

İş Akışı

  1. Kullanıcı menüden bir liste ekranı açar.
  2. Sistem ilgili listFormCode için kolon ve grid ayarlarını backendden alır.
  3. Kullanıcı kayıtları görüntüler, filtreler veya arar.
  4. Yetkisi varsa yeni kayıt ekler veya mevcut kaydı düzenler.
  5. Kaydetme sonrası grid yenilenir.
  6. İhtiyaç varsa içe aktarma, dışa aktarma, not veya workflow aksiyonu kullanılır.

Dikkat Edilmesi Gerekenler

Konu ıklama
Alan yetkileri Alanlar okuma, ekleme ve güncelleme moduna göre gizlenebilir veya pasif olabilir.
Varsayılan değerler @AUTONUMBER, sequence veya URL filtresi üzerinden otomatik değer atanabilir.
Cascade lookup Üst alan boşsa bağlı lookup alanı pasif olabilir; üst alan değişince alt alan temizlenebilir.
Grid state Kullanıcı kolon/filtre düzenini kaydedebilir; başarılı kayıtta bildirim gösterilir.
Mobil davranış Düzenleme popup'ı mobil veya dokunmatik cihazlarda tam genişlikte açılabilir.
Datasource seçimi Liste, tenant veya ekran ihtiyacına göre farklı datasource üzerinden çalışabilir.
Veritabanı tipi Datasource yapısı MSSQL ve PostgreSQL kaynaklarıyla çalışacak şekilde tasarlanmıştır.

List Form Yönetimi

Amaç

Dinamik liste ve form ekranlarının tanımlarını yönetmek için kullanılır. Kodda list form, field, customization, query preview, json row operasyonları, wizard ve workflow servisleri doğrulanmıştır.

Ekranda Görülen Alanlar

Ekran ıklama
List Form Listesi List form kayıtlarını listeler.
List Form Düzenleme Detay, database, kolon, edit form, filtre, arama, grup, pivot, tree, gantt, scheduler, pager, state, sub form, widget, workflow ve chart ayar sekmeleri.
Alan Yönetimi Her kolon/alan için detay, permission, seçenek, lookup, filtreleme, başlık, grup, özet, validasyon, koşullu format ve pivot ayarları.
Wizard Yeni list form, menü, permission ve seed dosyası üretimi için adımlı kurulum ekranı.
Workflow Designer Liste form bazlı workflow kriterleri ve akış tasarımı.

Kullanıcı İşlemleri

İşlem ıklama
Liste form oluşturma Wizard ile yeni liste/form tanımı hazırlanabilir.
Liste form düzenleme Grid, form, datasource, yetki, filtre ve görünüm seçenekleri düzenlenir.
Alan ekleme/düzenleme Kolon özellikleri ve formdaki davranışları ayarlanır.
JSON satır işlemleri Komut, ekstra filtre, sub form, widget, chart series/pane/axis gibi yapılandırmalar eklenir.
Workflow tanımlama Onay akışı için kriter ve alanlar belirlenir.

İş Akışı

  1. Yönetici List Form menüsünü açar.
  2. Yeni ekran gerekiyorsa wizard başlatır.
  3. Liste kodu, menü bilgisi, tablo/veri kaynağı ve alanlar tanımlanır.
  4. Oluşturulan list form düzenleme ekranında detaylandırılır.
  5. Permission ve menü ayarları tamamlandıktan sonra kullanıcılar ekrana erişebilir.

Dikkat Edilmesi Gerekenler

Bu ekran teknik/yönetici kullanıcılar içindir. Yanlış datasource, SQL veya permission tanımı son kullanıcı ekranlarının çalışmasını etkileyebilir.

Kimlik Yönetimi

Amaç

Kullanıcı, rol, permission, claim type, oturum, concurrent lisans kapsamındaki aktif kullanıcılar ve organizasyon birimi yönetimini sağlar. Bu bölüm, uygulamayı kullanabilecek kişilerin genel bilgilerini, iş bilgilerini, yetki gruplarını, şube erişimlerini, hesap durumlarını ve güvenlik seçeneklerini yönetmek için kullanılır.

Ekranda Görülen Alanlar

Kodda seed edilen veya servisle doğrulanan ekranlar:

Ekran Menü/Route ıklama
Kullanıcılar /admin/list/AbpIdentity.Users Kullanıcı listesi ve kullanıcı detayına geçiş.
Kullanıcı Detayı /admin/users/detail/:userId Kullanıcı bilgileri, avatar, kilit/aktiflik, rol ve permission işlemleri.
Roller /admin/list/AbpIdentity.Roles Rol listesi ve rol izinleri.
Permission Groups /admin/list/Abp.Identity.PermissionGroups Permission grup tanımları.
Permissions /admin/list/Abp.Identity.Permissions Permission tanımları.
Claim Types /admin/list/App.IdentityManagement.ClaimTypes Kullanıcı claim tipleri.
Audit Logs /admin/list/App.IdentityManagement.AuditLogs Denetim kayıtları.
Sessions /admin/list/App.IdentityManagement.Sessions Kullanıcı oturum kayıtları.
Organization Units /admin/ous Organizasyon birimi ağacı, üye ve rol atamaları.

Kullanıcı tanımında yönetilebilen başlıca bilgi grupları:

Bilgi Grubu ıklama
Genel bilgiler Ad, soyad, e-posta, telefon, kullanıcı adı ve temel profil bilgileri.
İş bilgileri Kullanıcının departmanı, job position bilgisi, şubesi ve çalışma saati tanımı.
Kimlik bilgileri Kullanıcıya ait ek kimlik/claim bilgileri.
Rol ve yetkiler Kullanıcının hangi rollere sahip olduğu ve kullanıcı bazlı özel permissionları.
Şube erişimi Kullanıcının hangi branch kayıtlarını görebileceği veya yönetebileceği.
Hesap durumu Aktiflik, status, admin verification, email confirm, two factor ve account end date gibi hesap alanları.
Şifre politikası Şifre değiştirme zamanı ve periyodik şifre değişim kuralları.

Kullanıcı İşlemleri

İşlem ıklama
Kullanıcı listeleme Kullanıcı kayıtları listelenir ve filtrelenir.
Kullanıcı bilgisi düzenleme E-posta, ad, soyad, telefon, aktiflik ve doğrulama bilgileri düzenlenebilir.
Rol atama Kullanıcıya rol atanabilir.
Permission yönetimi Kullanıcı veya role permission verilebilir.
Permission kopyalama Kullanıcı veya rol yetkileri başka kullanıcı/role kopyalanabilir.
Claim type yönetimi ABP claim type kayıtları tanımlanır ve kullanıcı tanımlama sürecinde kullanılabilir.
Kullanıcı oturumu sonlandırma kickUser servisi ile oturum düşürülebilir.
Organizasyon birimi yönetimi Birim oluşturma, taşıma, silme, kullanıcı/rol atama işlemleri yapılabilir.
Aktif kullanıcı izleme Concurrent lisans yönetimi kapsamında aktif kullanıcılar ve oturumlar takip edilebilir.

İş Akışı

  1. Yönetici Kimlik Yönetimi menüsünden ilgili ekranı açar.
  2. Kullanıcı, rol, permission group, claim type veya organizasyon birimi kaydını seçer.
  3. Kullanıcı tanımında genel bilgileri, iş bilgilerini, departman/job position alanlarını, şube erişimini ve rol bilgilerini düzenler.
  4. Gerekirse kullanıcı veya rol permissionlarını tanımlar ya da mevcut yetkileri başka kullanıcı/role kopyalar.
  5. Organization Unit ekranında takım/birim oluşturur ve ilgili kullanıcıları bu birime atar.
  6. Sistem değişiklikleri kaydeder ve ilgili listeyi günceller.

Dikkat Edilmesi Gerekenler

Konu ıklama
Kullanıcı permissionları Rol permissionlarına ek olarak kullanıcı özelinde verilebilir.
Kilit yönetimi Hesap kilidi ve aktiflik alanları kullanıcının girişini etkiler.
Permission değişikliği Menü görünürlüğü ve işlem butonları üzerinde etkili olur.
Audit takibi Audit kayıtları üzerinden hangi kullanıcının ne zaman hangi API çağrısını yaptığı, insert/update/delete gibi işlemler ve işlem detayları takip edilebilir.
Aktif oturum Concurrent lisans yönetimi nedeniyle aktif kullanıcı listesi önemlidir; yetkili kullanıcı gerektiğinde aktif oturumu sonlandırabilir.

Profil

Amaç

Kullanıcının kendi profil bilgilerini, şifresini ve bildirim tercihlerini yönetmesini sağlar.

Ekranda Görülen Alanlar

Sekme ıklama
Genel Profil bilgileri.
Şifre Şifre değiştirme alanları.
Bildirim Ayarları Kullanıcı bildirim kuralları ve kanalları.

Kullanıcı İşlemleri

İşlem ıklama
Profil güncelleme Kullanıcı kendi bilgilerini günceller.
Şifre değiştirme Mevcut şifre ve yeni şifre bilgileriyle şifre değiştirir.
Bildirim tercihi Bildirim tiplerine göre kural ve kanal ayarlarını yönetir.

İş Akışı

  1. Kullanıcı Profil menüsüne girer.
  2. İlgili sekmeyi seçer.
  3. Alanları düzenler.
  4. Kaydet butonuyla değişiklikleri uygular.

Dikkat Edilmesi Gerekenler

Şifre kuralları sistem ayarlarında tanımlanabilir. Profil ve şifre alanlarının görünürlüğü permission veya ayarlarla kısıtlanabilir.

Tenant ve Şube Yönetimi

Amaç

Çok kiracılı yapıda tenant kayıtlarını, tenant bazlı bağlantı ayarlarını, şube tanımlarını, tenant bazında değiştirilebilen tanım listelerini ve organizasyon birimlerini yönetmek için kullanılır. Platform tenant, branch ve organization unit bazında kayıtları ayırabilir veya filtreleyebilir. Kurulum tercihine göre her tenant ayrı veritabanı bağlantısı ile de çalışabilir.

Ekranda Görülen Alanlar

Ekran ıklama
Tenant Listesi Tenant kayıtlarının listelenmesi.
Tenant Connection String Tenant varsayılan bağlantı cümlesini görüntüleme/güncelleme/silme.
Tenant Seed Tenant verisini oluşturma veya güncelleme.
Şubeler App.Branches list formu.
Organization Units Organizasyon birimi ağacı, kullanıcı ve rol atamaları.
Sectors Tenant bazında sektör tanımları.
Departments Tenant bazında departman tanımları.
Job Positions Tenant bazında görev/pozisyon tanımları.
Organizasyon Şeması Departman, job position ve kullanıcı bilgileriyle oluşturulan organizasyon görünümü.

Kullanıcı İşlemleri

İşlem ıklama
Tenant listeleme Tenant kayıtlarını görüntüler.
Tenant detay görüntüleme Tenant bilgilerine ulaşır.
Bağlantı ayarı yönetme Varsayılan connection string düzenlenir.
Seed çalıştırma Tenant için başlangıç verileri oluşturulur.
Şube yönetimi Şube kayıtları dinamik liste üzerinden yönetilir.
Branch bazlı yetkilendirme Kullanıcıların yetkileri ve veri erişimleri şube bazında sınırlandırılabilir.
Organizasyon birimi yönetimi Departman/birim ağacı üzerinden kullanıcı ve rol ilişkileri yönetilir.
Tenant bazlı tanım yönetimi Sector, Department ve Job Position gibi tanımlar tenant ihtiyacına göre düzenlenir.
Organizasyon şeması oluşturma Tanımlanan departman, pozisyon ve kullanıcı bilgileriyle organizasyon şeması hazırlanır.

İş Akışı

  1. Yönetici tenant veya şube ekranını açar.
  2. İlgili kaydı seçer.
  3. Gerekirse tenant bağlantı cümlesini veya tenant seed işlemini yönetir.
  4. Tenant altında kullanılacak branch kayıtlarını tanımlar.
  5. Tenant için sector, department ve job position tanımlarını oluşturur.
  6. Kullanıcıları departman, pozisyon ve şube bilgileriyle ilişkilendirir.
  7. Organization Unit veya organizasyon şeması ekranında birim/takım yapısını düzenler.
  8. Sistem başarı veya hata bildirimi gösterir.

Dikkat Edilmesi Gerekenler

Tenant connection string değişiklikleri uygulamanın veri erişimini doğrudan etkiler. Bu işlem teknik yetki gerektirir. Branch ve organization unit yetkileri kullanıcıların hangi kayıtları görebileceğini etkileyebileceği için bu tanımlar dikkatli yapılmalıdır. Tenant bazlı sector, department ve job position tanımları kullanıcı kartları, organizasyon şeması ve filtreleme davranışlarında kullanılabilir.

Sistem Ayarları

Amaç

Uygulama ayarlarını gruplar halinde görüntülemek ve güncellemek için kullanılır. ABP setting altyapısı kullanılır; mevcut ayarlar yönetilebildiği gibi sisteme yeni ayar tanımları da eklenebilir. Bazı ayarlar global düzeyde, bazı ayarlar tenant düzeyinde değiştirilebilir.

Ekranda Görülen Alanlar

Alan ıklama
Ana grup menüsü Ayar ana grupları sol menüde listelenir.
Alt grup kartları Her ana grup altında alt grup kartları yer alır.
Ayar alanları Text, Number, Memo, Bool ve List tipleri desteklenir.
Yardım ikonu Ayar açıklaması tooltip olarak gösterilir.
Kaydet Değişiklikleri kaydeder.

Yönetilebilen önemli ayar grupları:

Ayar Grubu ıklama
Tema Elstar tema yapısı, açık/koyu mod ve public/admin görünüm ayarları.
Kayıt ve giriş Register, local login, iki aşamalı doğrulama ve süreli giriş davranışları.
Captcha Cloudflare Turnstile/Captcha endpoint, site key ve secret key ayarları.
Hesap doğrulama Admin verification, e-posta doğrulama ve telefon doğrulama ayarları.
Şifre standartları Minimum uzunluk, benzersiz karakter, küçük/büyük harf, rakam, özel karakter ve periyodik şifre değiştirme kuralları.
Kilitlenme Hatalı giriş sayısı ve kilit süresi ayarları.
E-posta SMTP, varsayılan gönderici, Amazon SES profil/region/access key ayarları.
SMS Posta Güvercini URL, kullanıcı adı ve şifre ayarları.
WhatsApp WhatsApp URL, phone number id, template name ve token ayarları.
Rocket.Chat Rocket URL, user id ve token ayarları.

Kullanıcı İşlemleri

İşlem ıklama
Ayar görüntüleme Kullanıcı yetkili olduğu ayarları görür.
Ayar düzenleme Alan tipine göre değer girer veya seçim yapar.
Yeni ayar tanımı yönetme Yetkili teknik/yönetici kullanıcılar setting definition kayıtlarını genişletebilir.
Tema değiştirme Site theme style ayarı değiştiğinde açık/koyu mod güncellenir.
Kaydetme Başarılı işlemde başarı bildirimi gösterilir.

İş Akışı

  1. Yönetici Ayarlar ekranına girer.
  2. Sol menüden ana ayar grubunu seçer.
  3. Alt grup içindeki değerleri günceller.
  4. Kaydet butonuna basar.
  5. Sistem ayarları kaydeder ve uygulama konfigürasyonunu yeniler.

Dikkat Edilmesi Gerekenler

Ayarlar permission ve provider bilgilerine göre değişebilir. Yanlış e-posta, captcha, SMS, Rocket.Chat, WhatsApp, Amazon SES, SMTP veya tema ayarı ilgili entegrasyonları etkileyebilir. Tenant bazında değiştirilebilen ayarlar yalnızca ilgili tenant davranışını etkilerken global ayarlar tüm sistemi etkileyebilir.

Datasource Yönetimi

Amaç

Datasource tanımları, dinamik listelerin ve Developer Kit araçlarının hangi veritabanı veya bağlantı üzerinden çalışacağını belirler. Platform birden fazla veritabanı kaynağından liste, form ve endpoint üretimini destekler.

Ekranda Görülen Alanlar

Alan ıklama
Datasource listesi Tanımlı veri kaynakları listelenir.
Kod/ad bilgisi Datasource'un list form veya endpointlerde seçilebilmesi için kullanılır.
Veritabanı sağlayıcısı MSSQL veya PostgreSQL gibi sağlayıcı bilgisi.
Bağlantı bilgisi İlgili veritabanına erişim için kullanılan bağlantı tanımı.
Tenant ilişkisi Datasource tenant bazlı kullanılacaksa ilgili tenant bağlamı.

Kullanıcı İşlemleri

İşlem ıklama
Datasource ekleme Yeni veritabanı kaynağı tanımlanır.
Datasource düzenleme Bağlantı ve sağlayıcı bilgileri güncellenir.
Listeye datasource seçme Dinamik list formun hangi datasource üzerinden çalışacağı belirlenir.
Endpointlere datasource bağlama CRUD endpoint veya custom endpoint için veri kaynağı seçilir.

İş Akışı

  1. Teknik kullanıcı Datasource ekranını açar.
  2. MSSQL veya PostgreSQL bağlantısı için datasource kaydı oluşturur.
  3. Dinamik list form, CRUD endpoint veya custom endpoint içinde bu datasource'u seçer.
  4. Sistem liste, form veya API işlemlerini seçilen kaynak üzerinden yürütür.

Dikkat Edilmesi Gerekenler

Yanlış datasource veya bağlantı bilgisi dinamik listelerin veri getirememesine ya da hatalı veritabanında işlem yapmasına neden olabilir. Tenant bazlı çalışmada datasource seçimi veri izolasyonunu doğrudan etkiler.

Menü ve Route Yönetimi

Amaç

Uygulama menülerini, menü gruplarını, route kayıtlarını ve menü ağacını yönetir. Route yapısı veritabanından beslendiği için public, authenticated ve protected ekranlar merkezi olarak tanımlanabilir. Route kayıtlarında hem hazır statik componentler hem de Developer Kit ile oluşturulan dinamik componentler kullanılabilir.

Ekranda Görülen Alanlar

Ekran ıklama
Menü Grupları Menü grubu kayıtları.
Menü Listesi Menü kodu, parent code, URL, ikon, sıra, permission gibi alanlar.
Menü Manager Sürükle-bırak veya ağaç yapısında menü düzenleme.
Routes Route path, component type, component path, route type ve authority bilgileri.

Kullanıcı İşlemleri

İşlem ıklama
Menü ekleme/düzenleme Menü kaydı oluşturulur veya güncellenir.
Menü sıralama Menü ağacında sıralama ve parent ilişkisi düzenlenir.
Permission bağlama Menü görünürlüğü için RequiredPermissionName atanır.
Route yönetme Route kayıtlarının component ve yetki bilgileri düzenlenir.
Dinamik component bağlama Aktif custom componentler istenilen route path altında kullanıcıya sunulur.
Menü grubu yönetme Tenant veya uygulama ihtiyacına göre menü grupları tanımlanır.

İş Akışı

  1. Yönetici Menü Yönetimi ekranını açar.
  2. Menü veya route kaydını seçer.
  3. URL, component path, yetki ve görünüm bilgilerini düzenler.
  4. Kaydeder.
  5. Uygulama konfigürasyonu yenilendiğinde route ve menü davranışı güncellenir.

Dikkat Edilmesi Gerekenler

Yanlış component path route yüklenememesine neden olur. Yanlış permission adı menünün görünmemesine veya yetkisiz erişime neden olabilir. Menü pathi ile route pathi uyumlu değilse kullanıcı menüden ekrana gidemeyebilir.

Developer Kit

Amaç

Teknik kullanıcıların SQL nesnelerini, custom componentleri, custom endpointleri, CRUD endpointleri, dynamic service kayıtlarını ve Wizard Manager ile yeni low-code ekranları yönetmesini sağlar. Developer Kit, uygulamanın kullanıcı tarafından genişletilebilmesi için hazırlanmış teknik araç setidir.

Ekranda Görülen Alanlar

Ekran Route ıklama
List Form Wizard /admin/listform/wizard veya seed menüde wizard manager Yeni dinamik ekran üretimi.
Custom Endpoints /admin/list/App.DeveloperKit.CustomEndpoints Custom endpoint tanımları.
CRUD Endpoints /admin/developerkit/endpoints Entity üzerinden endpoint üretimi/yönetimi.
Components /admin/developerkit/components Dinamik React component yönetimi.
Dynamic Services /admin/developerkit/dynamic-services C# dynamic service kodu test/compile/publish işlemleri.
SQL Query Manager /admin/sqlQueryManager SQL nesne ve sorgu yönetimi.

Developer Kit içinde öne çıkan araçlar:

Araç Kullanım Amacı
SQL Query Manager Veritabanı nesnelerini inceleme, sorgu çalıştırma, tablo oluşturma, seçili nesneleri farklı veritabanına kopyalama ve değişiklikleri seed dosyalarına taşıma.
CRUD Endpoints Seçilen datasource ve tablo üzerinden CRUD API endpointleri üretme.
Custom Endpoints Dinamik SQL çalıştıran, GET/POST destekleyen, URL, parametre ve permission ile yönetilen özel endpointler oluşturma.
Custom Components React tabanlı dinamik component tanımlama, aktif/pasif yapma ve route üzerinden sunma.
Dynamic Services C# ile yazılan servisleri derleme, yayınlama, Swagger üzerinde API olarak görünür hale getirme ve componentlerle entegre etme.
Wizard Manager Menü, alt menü, SQL tablo seçimi, sütun seçimi, editor seçimi, list form, sub list, workflow, widget, dil metni ve permission üretimini adımlı olarak yapma.

Kullanıcı İşlemleri

İşlem ıklama
Component oluşturma Dinamik component adı, açıklaması, bağımlılıkları, kodu ve aktiflik durumu yönetilir.
Endpoint üretme CRUD endpoint tanımı oluşturulur veya aktif/pasif yapılır.
Custom endpoint oluşturma SQL, parametre, HTTP metodu, URL ve permission bilgileriyle özel API tanımlanır.
Dynamic service derleme Kod test compile edilir, yayınlanır veya pasif yapılır.
SQL çalıştırma Yetkili kullanıcı SQL nesnelerini ve sorgularını yönetir.
Veritabanı nesnesi kopyalama Table, stored procedure, view ve function nesneleri birden fazla veritabanına kopyalanabilir.
Seed güncelleme Deploy edilen SQL objesi SqlData yapısı altında JSON olarak saklanarak sonraki seeder çalıştırmalarında güncel tutulabilir.
Low-code ekran deploy etme Wizard Manager sonunda menü, dil metni, permission, grid/form/gantt/chart gibi ayarlar otomatik oluşturulabilir.

İş Akışı

  1. Teknik kullanıcı Developer Kit menüsünden ilgili aracı açar.
  2. Gerekiyorsa SQL Query Manager ile tablo, view, function veya stored procedure hazırlar.
  3. Datasource ve tablo seçimi yapar.
  4. CRUD endpoint, custom endpoint, dynamic service veya custom component tanımlar.
  5. Wizard Manager kullanılıyorsa menü, alt menü, kolonlar, editorler, sub listeler, widgetlar ve workflow adımları belirlenir.
  6. Test/compile/generate işlemi çalıştırılır.
  7. Başarılıysa deploy/publish edilir.
  8. Oluşturulan route ve menüler permissionlarla birlikte kullanıcılara sunulur.

Hazır Component Örnekleri

Component ıklama
DynamicEntityComponent Dinamik entity veya tablo kaynaklı veriyi component içinde göstermek için örnek olarak kullanılabilir.
RoleListComponent Rol listesini veya rol odaklı bir görünümü örneklemek için kullanılan hazır componenttir.

Wizard Manager ile Low-Code Ekran Oluşturma

Wizard Manager, yeni bir ekranın teknik detaylarını adım adım oluşturmak için kullanılır:

Adım ıklama
Menü seçimi Yeni menü eklenir veya mevcut bir menünün altına alt menü oluşturulur.
SQL tablo seçimi Datasource içindeki tablolar arasından kaynak tablo seçilir.
Sütun seçimi Listede ve formda gösterilecek sütunlar belirlenir.
Editor seçimi SelectBox, TextBox ve DevExpress editorleri gibi alan tipleri seçilir.
Alt liste ilişkisi Oluşturulan formun altında sub listeler tanımlanabilir.
Form ilişkisi İki form arasında ilişki kurulabilir.
Widget tanımı Listenin üst kısmında SQL ile beslenen özet widgetlar oluşturulabilir.
Workflow tanımı Start, Compare, Approval, Information ve Finish adımlarından oluşan dinamik akış kurulabilir.
Deploy Menü, dil textleri, grid/form/gantt/chart ayarları, permission group ve permissionlar otomatik tanımlanır.

Dikkat Edilmesi Gerekenler

Bu modül son kullanıcıdan çok teknik yönetici içindir. Dynamic service, custom endpoint ve SQL işlemleri sistem davranışını doğrudan etkiler. SQL çalıştırma için SqlQueryManager.SqlExecution.Execute izni gerekir. Deploy edilen dinamik ekranlar kullanıcı menüsüne eklendiğinde ilgili permissionlar da doğru rol veya kullanıcılara atanmalıdır.

Dosya Yönetimi

Amaç

Host veya tenant bazında dosya ve klasörlerin yönetilmesini sağlar. File Manager, ABP BlobManager/BlobStoring altyapısında tutulan dosyaları kullanıcı arayüzünden dinamik olarak yönetilebilir hale getirir. Tenant bazında her kiracıya ait dizin ayrı yönetilebilir.

Ekranda Görülen Alanlar

Alan ıklama
Tenant seçimi Host bağlamında tenant veya Host dosya alanı seçilebilir. Tenant kullanıcısında seçim sabitlenir.
Breadcrumb Klasör yolu gösterilir.
Dosya/klasör grid veya liste görünümü Kullanıcı görünüm modunu değiştirebilir.
Arama Dosya ve klasör adıyla arama yapılır.
Sıralama Ada, boyuta veya değiştirilme tarihine göre sıralama yapılır.
Toolbar Yükle, klasör oluştur, kopyala, kes, yapıştır, yeniden adlandır, indir, sil, tümünü seç.
Tenant dizini Her tenant/kiracı için ayrı dosya alanı yönetilebilir.

Kullanıcı İşlemleri

İşlem ıklama
Dosya yükleme Dosya seçilerek mevcut klasöre yüklenir.
Klasöre girme Klasör üzerinde çift tıklanarak klasör içine girilir.
Klasör oluşturma Mevcut klasör altında yeni klasör oluşturulur.
Yeniden adlandırma Seçili tek öğenin adı değiştirilir.
İndirme Sadece dosya tipindeki tek öğe indirilebilir.
Silme Tekil veya çoklu silme yapılır.
Kopyalama/taşıma Seçili öğeler panoya alınır ve hedef klasöre yapıştırılır.
Cut/Copy/Paste Dosya veya klasörler kesilebilir, kopyalanabilir ve başka dizine yapıştırılabilir.
Arama/sıralama Liste görünümü daraltılır veya sıralanır.

İş Akışı

  1. Kullanıcı Dosyalar ekranını açar.
  2. Host bağlamındaysa tenant/kiracı dizinini seçer.
  3. Klasör üzerinde çift tıklayarak klasör içinde gezinir.
  4. Dosya yükler, dosya indirir, dizin oluşturur veya öğe seçer.
  5. Copy, cut, paste, rename veya delete gibi toolbar işlemlerini kullanır.
  6. Sistem başarı/hata bildirimi gösterir.

Dikkat Edilmesi Gerekenler

Kısıt ıklama
Sistem klasörleri intranet, avatar, import, note, backup klasörleri korumalıdır.
Koruma Korumalı klasörler seçilemez, silinemez, kopyalanamaz veya yeniden adlandırılamaz.
Klasör silme İçinde dosya bulunan klasör güvenlik nedeniyle silinmez.
Aynı klasöre taşıma Aynı klasöre taşıma işlemi engellenir.

Bildirim Yönetimi

Amaç

Sistem bildirimlerinin türlerini, kurallarını, kullanıcı bildirimlerini ve kullanıcı bildirim tercihlerini yönetir. Bildirimler yazılımın herhangi bir anında tanımlanan kişi, telefon, e-posta, rol veya organizasyon hedefine iletilebilir.

Ekranda Görülen Alanlar

Ekran ıklama
Notification Types Bildirim tipleri.
Notification Rules Bildirim kuralları.
Notifications Gönderilen veya kullanıcıya ulaşan bildirim kayıtları.
Profil Bildirim Ayarları Kullanıcının kendi bildirim tercihleri.

Kullanıcı İşlemleri

İşlem ıklama
Bildirim listeleme Bildirim kayıtları görüntülenir.
Okundu bilgisi güncelleme Bildirim tekil veya kanal bazlı okundu yapılabilir.
Kural yönetme Kullanıcı kendi bildirim kuralını ekleyebilir veya silebilir.
Test bildirim gönderme Uygun servis üzerinden bildirim kuralına bağlı mesaj gönderilebilir.
Rol bazlı bildirim Bildirim hedefi rol olarak seçilebilir.
Kişi bazlı bildirim Belirli kullanıcı veya iletişim bilgilerine bildirim gönderilebilir.
Kanal bazlı gönderim Mail, SMS, Rocket, UI toast, desktop veya WhatsApp gibi kanallar kullanılabilir.

İş Akışı

  1. Yönetici bildirim tip ve kurallarını tanımlar.
  2. Gönderim kanalı, hedef kullanıcı/rol/telefon/e-posta bilgisi ve mesaj şablonu belirlenir.
  3. Kullanıcı Profil > Bildirim Ayarları bölümünden tercihlerini düzenler.
  4. Sistem olay oluştuğunda uygun kanaldan bildirim üretir.
  5. Kullanıcı bildirimi okundu olarak işaretleyebilir.

Dikkat Edilmesi Gerekenler

Kodda SMS, Mail, Rocket, Desktop, UiActivity, UiToast ve WhatsApp kanal sabitleri görülmektedir. Kanalın çalışması ilgili ayarların doğru yapılandırılmasına bağlıdır.

Intranet

Amaç

Tenant bazında kurum içi duyuru, anket, sosyal gönderi, etkinlik ve kullanıcıya sunulacak dosya içeriklerini yönetmek için kullanılır. Kullanıcılar online olduklarında intranet alanında anonsları görebilir, anketlere katılabilir, sosyal duvar üzerinden paylaşım yapabilir, etkinlikleri takip edebilir ve doğum günü gibi dashboard bilgilerini görüntüleyebilir.

Ekranda Görülen Alanlar

Ekran/Alan ıklama
Duyurular App.Intranet.Announcement list formu.
Anketler App.Intranet.Survey, soru, seçenek, cevap ve yanıt list formları.
Sosyal Gönderiler App.Intranet.SocialPost ve yorum kayıtları.
Etkinlikler Etkinlik tipi, kategori, etkinlik ve beğeni kayıtları.
Dashboard widget'ları Yaklaşan etkinlikler, doğum günleri, anketler, dokümanlar ve duyurular.
Social Wall Gönderi oluşturma, medya, konum ve etkileşim bileşenleri.
Dosya gösterimi Kullanıcılara sunulacak dosyalar ve dokümanlar intranet widgetları içinde gösterilebilir.

Kullanıcı İşlemleri

İşlem ıklama
Duyuru görüntüleme Kullanıcı duyuruları dashboard veya modal üzerinden görür.
Anons yönetimi Yetkili kullanıcı tenant bazında anons/duyuru tanımlayabilir.
Ankete katılma Anket modalı üzerinden yanıt verilir.
Anket oylama Kullanıcı anket sorularına oy verebilir veya yanıt gönderebilir.
Sosyal gönderi oluşturma Metin, medya veya konum içeren gönderi oluşturulabilir.
Sosyal duvar etkileşimi Kullanıcı gönderileri görüntüler, yorum veya beğeni gibi etkileşimlerde bulunabilir.
Etkinlik görüntüleme Etkinlik bilgisi modal üzerinden açılabilir.
Event tanımlama Yetkili kullanıcı etkinlik tipi, kategori ve etkinlik kayıtlarını yönetebilir.
Doğum günü görüntüleme Doğum günü olan kullanıcılar dashboard widgetında gösterilebilir.
Doküman görüntüleme Kullanıcıya sunulan dosya veya dokümanlar widget üzerinden erişilebilir hale gelir.

İş Akışı

  1. Yönetici tenant kapsamında duyuru, anket, sosyal gönderi ve event kayıtlarını oluşturur.
  2. Dosya gösterilecekse ilgili dokümanlar File Manager/Blob alanında hazırlanır.
  3. Kullanıcı intranet dashboard veya social wall ekranını açar.
  4. Widget veya gönderiler üzerinden içeriğe ulaşır.
  5. Anket oylama, yorum, medya, beğeni veya etkinlik gibi etkileşimler yapılır.

Dikkat Edilmesi Gerekenler

Google Maps veya konum işlevleri için ilgili API anahtarı gerekebilir. Konum picker hata mesajları kodda ayrıca ele alınmıştır. Intranet içerikleri tenant bağlamında çalıştığı için bir tenantta tanımlanan duyuru, anket veya event başka tenant kullanıcılarına gösterilmeyebilir.

Forum

Amaç

Kurum, platform veya kiralama yapan kullanıcıların kategori, konu ve gönderiler üzerinden ortak çalışmasını ve görüş alışverişi yapmasını sağlar.

Ekranda Görülen Alanlar

Ekran ıklama
Forum Kullanıcıların kategori, konu ve gönderileri görüntülediği ekran.
Forum Management Yönetim dashboard'u ve kategori/konu/gönderi yönetimi.
Search Modal Forum içinde arama.
Create Topic Modal Yeni konu oluşturma.
Create Post Modal Konuya gönderi/cevap ekleme.

Kullanıcı İşlemleri

İşlem ıklama
Kategori listeleme Forum kategorileri görüntülenir.
Konu oluşturma Yetkili kullanıcı yeni konu açar.
Gönderi oluşturma Konuya cevap eklenir.
Beğenme Konu veya gönderi beğenilebilir.
Sabitleme/kilitleme Yetkili kullanıcı konuyu sabitleyebilir veya kilitleyebilir.
Çözüm işaretleme Bir gönderi kabul edilen cevap olarak işaretlenebilir.
Yönetim işlemleri Kategori, konu ve gönderi kayıtları yönetilir.
Ortak çalışma Kiralama yapan veya platformu kullanan kullanıcılar ortak bir bilgi paylaşım alanında buluşabilir.

İş Akışı

  1. Kullanıcı Forum ekranını açar.
  2. Kategori seçer veya arama yapar.
  3. Konu detayını görüntüler.
  4. Cevap yazar veya etkileşimde bulunur.
  5. Yetkili kullanıcı gerekiyorsa konuyu kilitler, sabitler veya çözüm işaretler.

Dikkat Edilmesi Gerekenler

Kilitli kategori veya konu üzerinde yeni gönderi oluşturma davranışı backend ve yetkiye bağlıdır. Yönetim ekranları yalnızca ilgili permissionlara sahip kullanıcılara açılmalıdır.

Video Oda

Amaç

Canlı video oda/toplantı süreçlerini yönetir. Kodda oda listesi, oda detayı, dashboard, katılımcı, sohbet, ekran paylaşımı ve SignalR/WebRTC servisleri doğrulanmıştır. Kullanıcı bir oda oluşturup diğer kullanıcıları davet ederek uygulama içinde videolu görüşme yapabilir.

Ekranda Görülen Alanlar

Ekran/Panel ıklama
Video Oda Dashboard Genel video oda yönetim alanı.
Oda Listesi Oda kayıtlarını listeler.
Oda Detayı Oda ve katılımcı bilgileri.
Video Player Kamera/ses akışı.
Participants Panel Katılımcı listesi.
Chat Panel Genel ve özel mesajlar.
Documents Panel Oda dokümanları.
Screen Share Panel Ekran paylaşımı.
Kick Participant Modal Katılımcı çıkarma onayı.

Kullanıcı İşlemleri

İşlem ıklama
Oda oluşturma/düzenleme Video oda kaydı oluşturulur veya güncellenir.
Kullanıcı davet etme Odaya katılacak kullanıcılar davet edilebilir veya katılımcı listesine eklenebilir.
Oda başlatma/bitirme Toplantı başlatılır veya sonlandırılır.
Odaya katılma SignalR bağlantısı kurulur, WebRTC medya akışı başlatılır.
Mesaj gönderme Genel veya özel mesaj gönderilebilir.
Duyuru gönderme Katılımcılara duyuru iletilebilir.
El kaldırma Katılımcı el kaldırabilir; yetkili kullanıcı onaylayabilir veya indirebilir.
Susturma/çıkarma Yetkili kullanıcı katılımcıyı susturabilir veya odadan çıkarabilir.
Kamera/mikrofon açma kapama Kullanıcı medya ayarlarını değiştirebilir.

İş Akışı

  1. Yönetici veya yetkili kullanıcı video oda kaydı oluşturur.
  2. Görüşmeye katılacak kullanıcıları davet eder.
  3. Oda başlatılır.
  4. Katılımcılar odaya bağlanır.
  5. Kamera, mikrofon, sohbet ve ekran paylaşımı kullanılır.
  6. Oda sonunda toplantı bitirilir.

Dikkat Edilmesi Gerekenler

Kamera ve mikrofon için tarayıcı izni gerekir. SignalR bağlantısı koptuğunda yeniden bağlanma bildirimleri gösterilir. Kamera/mikrofon açılamazsa hata bildirimi verilir.

Public Site ve İçerik Yönetimi

Amaç

Public site sayfalarını, ürünleri, ödeme akışını, blog içeriklerini, demo taleplerini, iletişim kayıtlarını ve kiralama/sipariş süreçlerini yönetir. Public sayfalar dinamik component ve Tailwind CSS düzenlemeleriyle yönetilebilir.

Ekranda Görülen Alanlar

Public Ekran Route
Home /home
About /about
Services /services
Products /products
Checkout /checkout
Payment /payment
Success /success
Blog /blog
Blog Detail /blog/:id
Demo /demo
Contact /contact

Yönetim tarafında doğrulanan listeler:

Yönetim Ekranı ıklama
Home/About/Services/Contact designer Public sayfa tasarım/yönetim ekranları.
Products Ürün kayıtları.
Payment Methods Ödeme yöntemi kayıtları.
Installment Options Taksit seçenekleri.
Sales Orders Satış siparişleri ve satış sipariş kalemleri.
Blog Categories Blog kategori kayıtları.
Blog Posts Blog yazıları.
Demos Demo talep kayıtları.

Public site tarafında kullanılan temel içerikler:

İçerik ıklama
Home, About, Services Public sayfa içerikleri ve dinamik tasarım alanları.
Product Kiralanabilir ürün veya paket kayıtları.
Payments Ödeme yöntemi yönetimi.
Installment Options Taksit veya ödeme periyodu seçenekleri.
Sales Orders Aylık veya yıllık kiralama siparişleri.
Blog Posts Blog içerikleri.
Demo, Contact Talep ve iletişim formları.

Kullanıcı İşlemleri

İşlem ıklama
Public içerik görüntüleme Ziyaretçi public sayfaları görüntüler.
Demo talebi gönderme Demo formu üzerinden talep oluşturulur.
Ürün seçme Ürün ve ödeme ekranları üzerinden sipariş akışı başlatılır.
Sipariş oluşturma Ödeme bilgileri ile satış siparişi oluşturulur.
Aylık/yıllık kiralama Kullanıcı ürün veya paket için aylık/yıllık sipariş oluşturabilir.
Subdomain ile kullanım Sipariş/tenant süreci sonrasında kiracıya subdomain üzerinden sistem kullandırılabilir.
Blog görüntüleme Blog listesi ve detayları görüntülenir.
İçerik yönetimi Yönetici list form ekranları üzerinden içerik kayıtlarını yönetir.

İş Akışı

  1. Ziyaretçi public siteye girer.
  2. Ürün, hizmet veya blog içeriğini inceler.
  3. Demo, iletişim veya ödeme akışını kullanır.
  4. Yönetici admin panelinden public içerikleri ve gelen kayıtları yönetir.

Dikkat Edilmesi Gerekenler

Mevcut işleyiş Havale/EFT ile çalışacak şekilde tarif edilmiştir. Kredi kartı entegrasyonu ileride eklenebilecek bir geliştirme alanıdır. Sipariş, tenant ve subdomain süreçleri birlikte ele alınmalıdır.

Dil ve Lokalizasyon

Amaç

Uygulama metinlerinin ve dil kayıtlarının yönetilmesini sağlar. ABP lokalizasyon yapısı genişletilerek dil, language key ve language text kayıtlarının dinamik olarak yönetilebildiği bir yapı sunulur. Uygulama 15'ten fazla dil ile çalışabilecek şekilde tasarlanmıştır.

Ekranda Görülen Alanlar

Ekran ıklama
Language Dil kayıtları.
Language Text Çeviri metinleri.
Language Key Backend servis olarak doğrulanmıştır; menüde ayrı kayıt bu taramada doğrulanmadı.

Kullanıcı İşlemleri

İşlem ıklama
Dil kaydı yönetme Desteklenen diller eklenir veya düzenlenir.
Language key oluşturma Uygulama içinde kullanılacak metin anahtarları tanımlanır.
Çeviri metni yönetme Anahtar bazlı metinler güncellenir.
Çoklu dil yönetimi Her dil için karşılık gelen text değerleri girilir.
Cache temizleme languageText.service.ts içinde Redis cache temizleme servisi doğrulanmıştır.

İş Akışı

  1. Yönetici Dil menüsünü açar.
  2. Dil veya çeviri metni kaydını seçer.
  3. Değeri günceller.
  4. Gerekirse cache temizlenir.

Dikkat Edilmesi Gerekenler

Lokalizasyon veritabanı üzerinden kullanılmaktadır. Yanlış çeviri anahtarı veya eksik metin kullanıcı arayüzünde ham anahtar görünmesine neden olabilir. Yeni dinamik ekranlar deploy edilirken menü, alan ve permission metinleri için dil kayıtlarının da oluşturulması önemlidir.

Raporlama

Amaç

Rapor kategori ve rapor template kayıtlarını yönetmek, DevExpress report viewer ve report designer altyapısını kullanmak için hazırlanmıştır. Yetkili kullanıcılar tanımlı raporları görüntüleyebilir, mevcut raporları düzenleyebilir ve rapor tasarımlarını güncelleyebilir.

Ekranda Görülen Alanlar

Ekran ıklama
Report Categories Rapor kategori tanımları.
Report Templates Rapor template kayıtları.
Report Viewer DevExpress rapor görüntüleyici.
Report Designer DevExpress rapor tasarım ekranı.

Kullanıcı İşlemleri

İşlem ıklama
Rapor kategorisi yönetme Kategori ekleme/düzenleme/silme.
Template yönetme Rapor şablonu kayıtlarını yönetme.
Rapor görüntüleme Yetkili raporu viewer ile açma.
Rapor tasarlama Designer üzerinden rapor tasarımını düzenleme.
Rapor düzenleme Tanımlanan bir rapor açılarak DevExpress designer ile değiştirilebilir.

İş Akışı

  1. Yönetici rapor kategorisi oluşturur.
  2. Rapor template kaydını ilgili kategori altında tanımlar.
  3. Kullanıcı rapor görüntüleme route'u ile raporu açar.
  4. Yetkili teknik kullanıcı DevExpress report designer ekranında tasarımı günceller.
  5. Değiştirilen rapor yeniden görüntülenebilir hale gelir.

Dikkat Edilmesi Gerekenler

DevExpress controllerları Swagger dokümantasyonundan hariç tutulmuştur. Rapor tasarımı teknik bilgi gerektirir.

Background Worker ve Mail Queue

Amaç

Zamanlanmış veya arka plan işleriyle ilgili kayıtları yönetir. ABP Background Workers ve Hangfire altyapısı kullanılır. Cron zamanına göre tanımlanan worker kayıtları belirli aralıklarla çalıştırılabilir, izlenebilir ve detayları incelenebilir.

Ekranda Görülen Alanlar

Ekran ıklama
Recurring Jobs Tekrarlı job kayıtları.
Jobs Çalışan veya geçmiş job kayıtları.
MailQueue modülü Mail queue altyapısı backend modülü olarak doğrulanmıştır.

Tanımlanabilen veya kodda altyapısı bulunan worker örnekleri:

Worker ıklama
BackupWorker Yedekleme işlemleri için kullanılabilir.
MailQueueWorker Kuyruktaki e-posta işlemlerini yürütür.
NotificationWorker Bildirim üretme/gönderme süreçlerini çalıştırır.
SqlWorker Belirlenen SQL işlemlerini zamanlanmış olarak çalıştırır.
SessionCleanupWorker Kullanıcı oturum temizleme süreçlerini yürütür.

Kullanıcı İşlemleri

İşlem ıklama
Job listeleme Arka plan iş kayıtları görüntülenir.
Job üretme generateBackgroundWorkers servisi doğrulanmıştır.
Hangfire dashboard görüntüleme Geliştirme ortamında veya yetkili üretim route'u ile dashboard açılır.
Cron izleme Çalıştırılan cron kayıtları ve detayları incelenebilir.

İş Akışı

  1. Yönetici background worker ekranını açar.
  2. Worker tipini, cron zamanını ve gerekli parametreleri tanımlar.
  3. Hangfire zamanı geldiğinde worker'ı çalıştırır.
  4. Yönetici çalışan veya geçmiş job kayıtlarını kontrol eder.
  5. Gerekirse worker üretme veya düzeltme işlemleri yapılır.

Dikkat Edilmesi Gerekenler

Hangfire veritabanı bağlantısı hazır değilse başlatılmaz. Üretim ortamında dashboard yetkilendirme ile korunur.

Tanımlar

Amaç

Sistem genelinde kullanılan referans verilerin yönetilmesini sağlar. Genel tanımlar platformun içinde hazır olarak bulunur; yetkili kullanıcılar bu kayıtları dinamik listeler üzerinden görüntüleyebilir ve ihtiyaç halinde güncelleyebilir.

Ekranda Görülen Alanlar

Kodda doğrulanan tanım listeleri:

Grup Listeler
SaaS Tanımlar GlobalSearch, AiBot, ContactTitle, Currency, CountryGroup, Country, City, District, UomCategory, Uom, Sequence, SkillType, SkillLevel, Skill
Administration Tanımlar Sector, Department, JobPosition, WorkHour
Kısıtlar IpRestrictions, WorkHour

Kullanıcı İşlemleri

İşlem ıklama
Kayıt listeleme Tanım kayıtları görüntülenir.
Kayıt ekleme/düzenleme/silme Yetkiye göre CRUD işlemleri yapılır.
Lookup kullanımı Bu tanımlar başka formlarda seçim alanı olarak kullanılabilir.
Otomatik tanım kullanımı Sistem içinde hazır gelen genel tanımlar dinamik ekranlarda lookup veya filtre kaynağı olarak kullanılabilir.
Çalışma saati tanımlama Kullanıcıların hangi gün ve saat aralıklarında uygulamayı kullanabileceği belirlenebilir.
IP restriction tanımlama Kullanıcının yalnızca izin verilen IP adreslerinden bağlantı kurması sağlanabilir.
Tenant bazlı tanım yönetimi Sector, Department, JobPosition ve WorkHour gibi tanımlar tenant ihtiyacına göre yönetilebilir.

İş Akışı

  1. Yönetici ilgili tanım ekranını açar.
  2. Yeni kayıt ekler veya mevcut kaydı düzenler.
  3. Kaydedilen tanım, bağlı formlarda lookup olarak kullanılabilir.
  4. WorkHour tanımları kullanıcı kartları veya erişim kısıtlarıyla ilişkilendirilir.
  5. IpRestriction tanımları güvenli bağlantı kuralları için kullanılır.

Dikkat Edilmesi Gerekenler

Tanım kayıtları başka formlara bağlı olabilir. Silme işleminden önce bağlı kayıt etkileri kontrol edilmelidir. Hazır gelen genel tanımlar sistem davranışını etkileyebileceği için gereksiz değişiklik yapılmamalıdır. WorkHour ve IP restriction kayıtları kullanıcıların sisteme erişimini doğrudan etkileyebileceği için değişiklikler kontrollü yapılmalıdır.

AI Assistant ve AiBot Tanımları

Amaç

AI asistan ekranı ve AiBot tanımlarını yönetmek için kullanılır.

Ekranda Görülen Alanlar

Ekran ıklama
Assistant ui/src/views/ai/Assistant.tsx ile doğrulanmıştır.
AiBot Tanımları App.Definitions.AiBot list formu ve AiBotAppService.

Kullanıcı İşlemleri

İşlem ıklama
AI asistanı kullanma Asistan ekranında sorgu/yanıt akışı kullanılır.
Bot tanımı yönetme AiBot kayıtları dinamik liste ile yönetilir.

İş Akışı

  1. Kullanıcı AI ekranını açar.
  2. Asistanla etkileşime girer.
  3. Yönetici bot tanımlarını güncelleyerek davranışı yapılandırır.

Dikkat Edilmesi Gerekenler

AI servis sağlayıcı ayrıntıları bu statik taramada doğrulanmamıştır. Entegrasyon ayarları ayrıca kontrol edilmelidir.

5. Ortak Komponentler

DataGrid / Dinamik Tablo

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır /admin/list/:listFormCode route'u ile açılan dinamik listelerde.
Nasıl kullanılır Kayıtlar satır-sütun yapısında görüntülenir; arama, filtre, grup, sıralama ve sayfalama yapılır.
Özel davranış Kolon yetkileri, state kaydı, conditional styling, summary, alt form ve workflow butonları list form tanımına göre değişir.

Form Komponentleri

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Yeni kayıt, düzenleme ve görüntüleme ekranlarında.
Nasıl kullanılır Alanlar doldurulur; zorunlu alanlar tamamlanır; kaydet butonu ile işlem tamamlanır.
Özel davranış View modunda alanlar read-only olur. Ekleme/düzenleme modunda alan bazlı permission ve script davranışı uygulanır.

Modal / Popup

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Düzenleme popup'ı, import modalı, not paneli, silme onayı, dosya upload, forum konu/gönderi oluşturma, video katılımcı çıkarma.
Nasıl kullanılır Kullanıcı modal içindeki formu doldurur veya onay verir.
Özel davranış Mobil/dokunmatik cihazlarda bazı popup'lar tam genişlikte açılır.

Lookup / Select Alanları

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Tanım seçimi, tenant seçimi, ayar listeleri, dinamik form lookup alanları.
Nasıl kullanılır ılır listeden değer seçilir; temizleme butonu varsa seçim kaldırılabilir.
Özel davranış Cascade lookup alanlarında üst alan seçilmeden alt alan pasif kalabilir.

Date Picker / DateBox

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Tarih ve saat alanlarında.
Nasıl kullanılır Takvimden tarih seçilir veya maskeli giriş yapılır.
Özel davranış useMaskBehavior, openOnFieldClick ve showClearButton davranışları uygulanır.

Dosya Yükleme

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Dosya yöneticisi, not dosyaları, image upload editor, import manager.
Nasıl kullanılır Dosya seçilir veya yükleme alanına bırakılır.
Özel davranış Import manager Excel/CSV önizleme ve aktarım süreci sunar.

Bildirim / Toast

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Kayıt, silme, yükleme, bağlantı, hata ve uyarı işlemlerinde.
Nasıl kullanılır Kullanıcı bildirimleri ekranın köşesinde kısa süreli olarak görür.
Özel davranış Başarı, bilgi, uyarı ve hata tipleri vardır.

Onay Pencereleri

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Silme, developer kit silme, dosya silme, workflow veya özel aksiyonlarda.
Nasıl kullanılır Kullanıcı işlemi onaylar veya vazgeçer.
Özel davranış Bazı eski ekranlarda window.confirm, bazı ekranlarda özel UiDialog kullanılır.

Sayfalama, Sıralama ve Filtreleme

Özellik Kullanıcıısından Açıklama
Nerelerde kullanılır Dinamik listeler ve dosya yöneticisi.
Nasıl kullanılır Sayfa boyutu, ileri/geri butonları, kolon sıralama ve filtre alanları kullanılır.
Özel davranış Liste form ayarına göre standart, virtual veya infinite scrolling kullanılabilir.

6. API ve Swagger Açıklaması

Swagger, teknik kullanıcıların ve sistem yöneticilerinin API endpointlerini görmesi, test etmesi ve model şemalarını incelemesi için kullanılır.

Kodda doğrulanan Swagger özellikleri:

Özellik ıklama
Swagger UI /swagger üzerinden ABP Swagger UI etkinleştirilmiştir.
Swagger JSON /swagger/v1/swagger.json endpointi yapılandırılmıştır.
OAuth Swagger OAuth client ve Platform scope ile yapılandırılmıştır.
API adı Sozsoft Platform Api.
Hariç tutulan controllerlar DevExpress CustomReportDesigner, CustomWebDocumentViewer, QueryBuilder Swagger'dan hariç tutulmuştur.

Ana API Grupları

API Grubu Amaç
/api/app/* Genel uygulama servisleri: public, identity extension, list form data, dashboard, forum, intranet, file management, video room vb.
/api/admin/* List form administration servisleri.
ABP Identity/Tenant API'leri Kullanıcı, rol, permission, tenant ve hesap işlemleri.
Languages API Dil ve çeviri metinleri.
Settings API Ayar grupları ve ayar değerleri.
Notifications API Bildirim, bildirim kuralı ve kullanıcı bildirim tercihleri.
SqlQueryManager API SQL nesne ve sorgu yönetimi.
Dynamic Services Runtime derlenen servislerin controller olarak kaydedilmesi.

Önemli Endpoint Kategorileri

Kategori Örnek Kullanım
Kimlik Login, refresh token, logout, kayıt, şifre sıfırlama, hesap doğrulama.
Profil Profil görüntüleme/güncelleme, şifre değiştirme, avatar güncelleme.
List Form Liste konfigürasyonu alma, veri listeleme, CRUD, import, customization, workflow.
Datasource Dinamik liste, endpoint ve SQL işlemleri için veri kaynağı tanımı.
Menü/Route Menüleri alma, route kayıtları, custom component kayıtları.
Dosya Dosya listeleme, yükleme, indirme, silme, taşıma, kopyalama.
Forum Kategori, konu, gönderi, beğeni, sabitleme, kilitleme, çözüm işaretleme.
Video Oda Oda listeleme, oluşturma, güncelleme, başlatma, bitirme, katılımcı ve sohbet.
Ayarlar Ayarları listeleme ve değer güncelleme.
Bildirim Bildirim listeleme, okundu bilgisi güncelleme, bildirim kuralı yönetimi.

Yetkilendirme Gerektiren API'ler

Admin ve dinamik list form API'lerinin çoğu authentication ve permission gerektirir. Kodda örnek olarak:

API/Servis Yetki
Tenant update TenantManagementPermissions.Tenants.Update
Identity user create/update IdentityPermissions.Users.Create, IdentityPermissions.Users.Update
Identity role create/update IdentityPermissions.Roles.Create, IdentityPermissions.Roles.Update
SQL execute SqlQueryManager.SqlExecution.Execute
Dinamik liste işlemleri İlgili list formun CRUD permissionları.

API Kullanırken Dikkat Edilmesi Gerekenler

Konu ıklama
Token Bearer token gerekir. Token süresi dolduğunda refresh veya yeniden giriş gerekir.
Tenant Çok kiracılı yapıda tenant bağlamı veri erişimini etkiler.
Permission Endpoint görünse bile permission yoksa 401/403 döner.
Correlation Id Hata takibi için X-Correlation-Id header'ı expose edilmiştir.
Dynamic API Runtime üretilen servisler canlı sistem davranışını değiştirebilir.
Datasource seçimi Custom endpoint, CRUD endpoint ve list form işlemlerinde doğru datasource seçilmelidir.
Dynamic service Yayınlanan C# servisleri Swagger üzerinde görünür hale gelebilir; permission ve güvenlik kontrolleri yapılmalıdır.

7. Kullanıcı Rolleri ve Yetkiler

Kodda kullanıcıya atanmış hazır rol listesi değil, permission odaklı yetki modeli doğrulanmıştır. Bu nedenle tablo permission grupları üzerinden hazırlanmıştır.

Permission Grubu Örnek Permission Kullanıcıya Etkisi
AbpIdentity.Users Create, Update, Delete, Export, Import, Note, ManagePermissions, ManageRoles Kullanıcı kayıtlarını ve kullanıcı rol/permissionlarını yönetir.
AbpIdentity.Roles Create, Update, Delete, ManagePermissions Rol kayıtlarını ve rol izinlerini yönetir.
Abp.Identity.PermissionGroups Create, Update, Delete, Export, Import, Note Permission group kayıtlarını yönetir.
Abp.Identity.Permissions Create, Update, Delete, Export, Import, Note Permission kayıtlarını yönetir.
AbpTenantManagement.Tenants Create, Update, Delete Tenant kayıtlarını yönetir.
App.Menus.* Menü ve route permissionları Menü ve route kayıtlarını yönetir.
App.Listforms.* List form permissionları Dinamik liste/form ekranları oluşturma ve düzenleme.
App.Settings / ayar permissionları Ayar grubu permissionları Ayarları görme ve güncelleme.
App.Notifications.* Notification type/rule/notification Bildirim altyapısını yönetir.
App.Files Dosya ekranı Dosya yöneticisini açar.
Branch bazlı yetkiler Kullanıcı-şube ilişkileri Kullanıcının hangi şube kayıtlarını görebileceğini veya yönetebileceğini sınırlar.
Organization Unit yetkileri OU kullanıcı/rol ilişkileri Organizasyon ağacı üzerinden kullanıcı ve rol erişimlerini yönetir.
App.ForumManagement.* Forum yönetimi Forum admin işlemleri.
App.Videoroom.* Video oda ekranları Video oda yönetim işlemleri.
SqlQueryManager.SqlExecution.Execute SQL çalıştırma SQL Query Manager üzerinde sorgu çalıştırma.

Doğrulanması Gereken Alan: Kuruma özel rol adları ve hangi role hangi permissionların verildiği veritabanındaki rol-permission eşleştirmesine bağlıdır.

8. Formlar ve Zorunlu Alanlar

Statik Formlar

Form Adı Kullanıldığı Ekran Zorunlu Alanlar Opsiyonel Alanlar Validasyon Kaydetme Sonrası
Login /login Kullanıcı adı, şifre; iki aşamalı doğrulama aktifse kod Beni hatırla Alanlar boş olamaz Başarılıysa oturum açılır.
Register /register E-posta, şifre, şifre tekrarı, ad, soyad, captcha - E-posta formatı, şifre tekrarı eşleşmesi Hesap oluşturma sonucu gösterilir.
Forgot Password /forgot-password E-posta, captcha - E-posta boş olamaz Sıfırlama kodu gönderilir.
Reset Password /reset-password Şifre, şifre tekrarı - Şifre tekrarı eşleşmesi Şifre güncellenir.
Confirmation Code /confirm E-posta, captcha - Alanlar boş olamaz Doğrulama kodu gönderilir.
Extend Login /extend-login E-posta, captcha - Alanlar boş olamaz Talep gönderilir.
Settings /admin/settings Ayar tipine göre değişir Ayar tipine göre değişir Tip bazlı giriş Ayarlar kaydedilir, config yenilenir.
File Upload /admin/files En az bir dosya Klasör seçimi Dosya seçilmelidir Dosya listesi yenilenir.
Create Folder /admin/files Klasör adı Parent klasör Ad boş olmamalıdır Klasör listesi yenilenir.
Rename Item /admin/files Yeni ad - Ad boş olmamalıdır Liste yenilenir.

Dinamik Formlar

Dinamik formlarda zorunlu alanlar list form field tanımlarından gelir. Kodda desteklenen validasyon tipleri:

Validasyon Tipi ıklama
required Alan boş bırakılamaz.
numeric Sayısal değer beklenir.
range Belirli aralıkta değer beklenir.
stringLength Metin uzunluğu kontrol edilir.
custom Özel validasyon kuralı çalışabilir.
compare Başka alanla karşılaştırma yapılabilir.
pattern Regex/pattern kontrolü yapılır.
email E-posta formatı kontrol edilir.
async Asenkron validasyon yapılabilir.

Dinamik form alan tipleri:

Editor Tipi Kullanım
dxTextBox, dxTextArea Metin girişi.
dxNumberBox Sayı girişi.
dxDateBox, dxDateRangeBox, dxCalendar Tarih/tarih aralığı.
dxSelectBox, dxLookup, dxAutocomplete Tekli seçim/arama.
dxTagBox Çoklu seçim.
dxDropDownBox, dxGridBox Gelişmiş seçim.
dxCheckBox, dxSwitch, dxRadioGroup Boolean veya seçenekli alanlar.
dxHtmlEditor Zengin metin.
dxImageUpload Görsel yükleme.

9. Listeleme, Filtreleme ve Raporlama Özellikleri

Tablolar

Dinamik listelerde DevExtreme DataGrid kullanılır. Tablo özellikleri list form ayarına göre değişir.

Özellik ıklama
Sıralama Kolon başlığından veya list form sort ayarıyla yapılır.
Filtre satırı Kolon altında filtre girişi sağlar.
Header filter Kolon değerlerinden seçim yapılır.
Arama paneli Tüm liste içinde arama sağlar.
Grup paneli Kolon bazlı gruplama yapılabilir.
Sayfalama Sayfa boyutu ve gezinme butonları desteklenir.
Kolon seçici Kolon görünürlüğü kullanıcı tarafından değiştirilebilir.
State storing Kullanıcı tablo düzenini kaydedebilir.
Summary Toplam, ortalama, minimum, maksimum ve adet gösterilebilir.

Filtreler

Filtre Tipi ıklama
Standart grid filtresi Kolon değerlerine göre filtreleme.
Extra filter toolbar List form özel filtre alanları.
URL filtresi Route query parametresinden gelen filtre yeni kayıt default değerlerini etkileyebilir.
Lookup filtreleri Seçim alanları için datasource bazlı filtre.

Import / Export

İşlem ıklama
Template üretme Excel veya CSV template alınabilir.
Dosya yükleme Excel/CSV dosyası import session olarak yüklenir.
Önizleme Aktarılacak kayıtlar ve validasyon durumu gösterilir.
Aktarım Eşleştirme ve validasyon sonrası kayıtlar sisteme alınır.
Log görüntüleme Import log kayıtları görüntülenebilir.

Raporlama ve Grafik

Özellik ıklama
Chart route /admin/chart/:listFormCode olarak tanımlanmıştır.
Pivot route /admin/pivot/:listFormCode olarak tanımlanmıştır.
Gantt/Scheduler/Tree List form ayar sekmelerinde desteklenir.
DevExpress Reporting Report viewer ve designer bileşenleri vardır.

10. Hata Mesajları ve Kullanıcı Bildirimleri

Kodda doğrulanan yaygın mesaj davranışları:

Mesaj / Durum Ne Zaman Görünür Kullanıcı Ne Yapmalı
Hata! Genel API veya render hatasında. İşlemi tekrar deneyin; devam ederse yöneticiden correlation id ile destek isteyin.
401 / 403 Oturum geçersiz veya yetki yok. Yeniden giriş yapın veya yetki talep edin.
GridStateSaved Tablo görünüm düzeni kaydedildiğinde. İşleme devam edebilirsiniz.
GridStateSaveError Tablo görünüm ayarı kaydedilemediğinde. Tekrar deneyin.
Files uploaded successfully Dosya yükleme tamamlandığında. Dosya listede görünür.
Failed to upload files Dosya yükleme başarısız olduğunda. Dosya boyutu, bağlantı veya yetkiyi kontrol edin.
Folder created successfully Klasör oluşturulduğunda. Klasörü kullanabilirsiniz.
Failed to create folder Klasör oluşturulamadığında. Adı ve yetkiyi kontrol edin.
Protected system folders cannot be deleted Korumalı sistem klasörü silinmek istendiğinde. Bu klasörlerde işlem yapmayın.
Only files can be downloaded Klasör indirilmek istendiğinde. Dosya tipinde bir öğe seçin.
Cannot move items to the same folder Aynı klasöre taşıma denendiğinde. Farklı hedef klasör seçin.
Sınıfa katılamadı Video odaya katılım başarısız olduğunda. Bağlantı, oda durumu ve yetkiyi kontrol edin.
Kamera açılamadı Tarayıcı kamera izni veya cihaz erişimi yoksa. Kamera izni verin veya cihazı kontrol edin.
Mikrofon açılamadı Mikrofon izni veya cihaz erişimi yoksa. Mikrofon izni verin veya cihazı kontrol edin.
Bağlantı koptu, yeniden bağlanılıyor... SignalR bağlantısı kesildiğinde. Bağlantının yeniden kurulmasını bekleyin.
Your passwords do not match Şifre tekrarı eşleşmediğinde. İki şifre alanını aynı girin.
SuccessfullySaved Ayarlar başarıyla kaydedildiğinde. Değişiklikler uygulanmıştır.

11. Sık Kullanılan Senaryolar

Senaryo: Yeni kayıt oluşturma

  1. Kullanıcı ilgili liste menüsüne girer.
  2. Yeni kayıt butonuna basar.
  3. Zorunlu alanları doldurur.
  4. Lookup veya tarih alanlarını seçer.
  5. Kaydet butonuna basar.
  6. Sistem kaydı oluşturur ve listeyi yeniler.

Senaryo: Kayıt düzenleme

  1. Kullanıcı ilgili liste ekranında kaydı bulur.
  2. Düzenleme aksiyonunu seçer.
  3. Yetkili olduğu alanları günceller.
  4. Kaydet butonuna basar.
  5. Sistem değişiklikleri kaydeder.

Senaryo: Kayıt filtreleme

  1. Kullanıcı liste ekranını açar.
  2. Arama paneline kelime yazar veya kolon filtresini kullanır.
  3. Gerekirse extra filter alanlarını doldurur.
  4. Liste filtreye göre güncellenir.

Senaryo: Excel/CSV içe aktarma

  1. Kullanıcı ilgili liste ekranında import yöneticisini açar.
  2. Gerekirse template indirir.
  3. Excel veya CSV dosyasını yükler.
  4. Önizleme ekranında eşleşme ve validasyonları kontrol eder.
  5. Aktarımı başlatır.
  6. Sistem aktarım sonucunu ve logları gösterir.

Senaryo: Dosya yükleme

  1. Kullanıcı Dosyalar ekranını açar.
  2. Gerekirse tenant seçer.
  3. Hedef klasöre gider.
  4. Dosya yükle butonuna basar.
  5. Dosyaları seçer.
  6. Sistem dosyaları yükler ve listeyi yeniler.

Senaryo: Kullanıcı yetkisi verme

  1. Yönetici kullanıcı veya rol ekranını açar.
  2. İlgili kullanıcıyı veya rolü seçer.
  3. Permission yönetimi ekranını açar.
  4. Gerekli permissionları işaretler.
  5. Kaydeder.
  6. Kullanıcının menü ve işlem yetkileri güncellenir.

Senaryo: Ayar değiştirme

  1. Yönetici Ayarlar ekranına girer.
  2. Sol menüden ayar grubunu seçer.
  3. İlgili değeri değiştirir.
  4. Kaydet butonuna basar.
  5. Sistem başarı bildirimi gösterir ve konfigürasyonu yeniler.

Senaryo: Video odaya katılma

  1. Kullanıcı video oda ekranından odayı açar.
  2. Tarayıcı kamera ve mikrofon izinlerini verir.
  3. Sistem SignalR bağlantısını kurar.
  4. Kullanıcı sohbet, kamera, mikrofon ve ekran paylaşımı özelliklerini kullanır.
  5. İşlem sonunda odadan ayrılır veya oda sonlandırılır.

Senaryo: Forumda konu açma

  1. Kullanıcı Forum ekranını açar.
  2. Kategori seçer.
  3. Yeni konu oluşturma modalını açar.
  4. Başlık ve içerik bilgilerini girer.
  5. Kaydeder.
  6. Konu forum listesinde görünür.

Senaryo: Tenant ve branch bazlı kullanım hazırlama

  1. Yönetici tenant kaydını oluşturur veya mevcut tenantı seçer.
  2. Gerekirse tenant için ayrı connection string tanımlar.
  3. Tenant seed işlemiyle başlangıç verilerini oluşturur.
  4. Tenant altında branch kayıtlarını tanımlar.
  5. Kullanıcıları ilgili branch veya organization unit yapısıyla ilişkilendirir.
  6. Kullanıcılar yalnızca yetkili oldukları tenant/branch kapsamındaki kayıtları görür.

Senaryo: Low-code ile yeni liste ekranı oluşturma

  1. Teknik kullanıcı Datasource kaydını seçer veya oluşturur.
  2. Wizard Manager ekranında yeni menü ya da alt menü bilgisini girer.
  3. SQL tablo ve listede gösterilecek sütunları seçer.
  4. Her sütun için uygun editor tipini belirler.
  5. Gerekirse sub list, widget ve workflow adımlarını tanımlar.
  6. Deploy işlemini çalıştırır.
  7. Sistem menü, route, dil metni, permission group, permission, grid/form ve ilgili component ayarlarını oluşturur.

Senaryo: Custom endpoint ile veri sağlama

  1. Teknik kullanıcı Custom Endpoints ekranını açar.
  2. Datasource, SQL, HTTP metodu, URL, parametre ve permission bilgilerini tanımlar.
  3. Endpointi aktif hale getirir.
  4. Dinamik veya statik component bu endpointten veri alacak şekilde yapılandırılır.
  5. Yetkili kullanıcılar endpoint üzerinden beslenen ekranı kullanır.

Senaryo: Background worker tanımlama ve izleme

  1. Yönetici worker tanımını açar.
  2. Worker tipini ve cron zamanını belirler.
  3. Gerekli parametreleri kaydeder.
  4. Hangfire zamanı geldiğinde worker'ı çalıştırır.
  5. Yönetici çalışan job kayıtlarını ve detaylarını izler.

Senaryo: Organizasyon şeması oluşturma

  1. Yönetici tenant bazında sector, department ve job position tanımlarını hazırlar.
  2. Kullanıcı kartlarında departman ve job position alanlarını doldurur.
  3. Organization Unit ekranında takım veya birim oluşturur.
  4. Kullanıcıları ilgili birimlere atar.
  5. Organizasyon şeması departman, pozisyon ve kullanıcı bilgileriyle görüntülenir.

Senaryo: Intranet anketi veya duyurusu yayınlama

  1. Yönetici tenant kapsamında duyuru veya anket kaydı oluşturur.
  2. Anket için soru ve seçenekleri tanımlar.
  3. Gerekirse ilgili dosyaları File Manager üzerinden hazırlar.
  4. Kullanıcı intranet dashboard veya social wall ekranında içeriği görür.
  5. Kullanıcı ankete oy verir, duyuruyu görüntüler veya etkinliklere katılır.

Senaryo: Kullanıcı erişimini saat ve IP ile kısıtlama

  1. Yönetici WorkHour tanımında gün ve saat aralıklarını belirler.
  2. Gerekirse IpRestriction kaydı ile izin verilen IP adreslerini tanımlar.
  3. Kullanıcı kartında çalışma saati veya restriction ilişkisi belirlenir.
  4. Kullanıcı yalnızca izin verilen zaman ve bağlantı koşullarında uygulamaya erişebilir.

Senaryo: Aktif kullanıcı oturumunu sonlandırma

  1. Yetkili kullanıcı aktif oturum veya session listesini açar.
  2. Concurrent lisans kapsamında aktif kullanıcıları inceler.
  3. Sonlandırılması gereken kullanıcı oturumunu seçer.
  4. Kick işlemini çalıştırır.
  5. Kullanıcının aktif oturumu düşürülür.

Senaryo: Rapor düzenleme

  1. Yönetici rapor kategorisini ve rapor template kaydını açar.
  2. İlgili raporu DevExpress report designer ile düzenler.
  3. Tasarımı kaydeder.
  4. Kullanıcı report viewer ile güncellenen raporu görüntüler.

12. Sık Sorulan Sorular

Menüyü neden göremiyorum?

Menü görünürlüğü permissiona bağlıdır. Yetkiniz yoksa menü gösterilmeyebilir. Yöneticinizden ilgili permissionı talep edin.

Ekrana girdiğimde yetkisiz erişim sayfasıılıyor. Ne yapmalıyım?

Oturumunuz bitmiş veya ilgili route için yetkiniz olmayabilir. Önce tekrar giriş yapın; sorun devam ederse yöneticinize başvurun.

Listedeki bazı butonlar neden görünmüyor?

Ekleme, düzenleme, silme, export, import, note ve workflow butonları hem ekran ayarına hem de kullanıcı permissionına bağlıdır.

Tablo düzenimi kaydedebilir miyim?

Evet. İlgili list formda state storing açıksa kolon, filtre ve görünüm düzeniniz kaydedilebilir.

Dosya yöneticisinde bazı klasörleri neden silemiyorum?

Sistem klasörleri korumalıdır. Ayrıca içinde dosya bulunan klasörler güvenlik nedeniyle silinmez.

İçe aktarma yaparken zorunlu alan hatası alıyorum. Ne yapmalıyım?

Template dosyasını kullanın ve zorunlu kolonları boş bırakmadığınızdan emin olun. Önizleme ekranındaki hata satırlarını kontrol edin.

Şifre sıfırlama linkim çalışmıyor. Ne yapmalıyım?

Token süresi dolmuş olabilir. Şifremi unuttum ekranından yeni sıfırlama talebi oluşturun.

Video odada kamera veya mikrofon açılmıyor. Ne yapmalıyım?

Tarayıcı izinlerini, cihaz bağlantısını ve başka bir uygulamanın kamerayı kullanıp kullanmadığını kontrol edin.

Swagger ne için kullanılır?

Swagger teknik kullanıcıların API'leri incelemesi ve yetkili ise test etmesi için kullanılır. Son kullanıcı işlemleri için admin paneli tercih edilmelidir.

Tenant, branch ve organization unit arasındaki fark nedir?

Tenant kiracı/kurum alanını, branch tenant içindeki şube ayrımını, organization unit ise kullanıcı ve rol ilişkilerinin ağaç yapısında yönetildiği organizasyon yapısını ifade eder.

Her tenant ayrı veritabanı kullanabilir mi?

Evet. Tenant bazlı connection string tanımlanarak tenantların ayrı veritabanı üzerinde çalışması sağlanabilir.

Dinamik liste farklı veritabanından veri gösterebilir mi?

Evet. Datasource tanımları sayesinde MSSQL veya PostgreSQL kaynakları seçilebilir ve dinamik listeler bu kaynaklardan beslenebilir.

Public ürünler nasıl kiralanır?

Public ürün ve ödeme ekranları üzerinden aylık veya yıllık sipariş oluşturulabilir. Mevcut akış Havale/EFT odaklıdır; kredi kartı entegrasyonu ileride eklenebilir.

Developer Kit ile kod yazmadan ekran oluşturulabilir mi?

Evet. Wizard Manager, datasource, tablo, sütun, editor, menü, permission, widget, sub list ve workflow seçimleriyle low-code şekilde yeni liste/form ekranı oluşturmayı destekler.

Kullanıcıların hangi saatlerde uygulamaya gireceği yönetilebilir mi?

Evet. WorkHour tanımlarıyla kullanıcıların hangi gün ve saat aralıklarında uygulamayı kullanabileceği belirlenebilir.

Kullanıcı girişi belirli IP adresleriyle sınırlandırılabilir mi?

Evet. IP restriction tanımlarıyla sadece izin verilen IP adreslerinden bağlantı kurulması sağlanabilir.

Organizasyon şeması hangi bilgilerden oluşur?

Organizasyon şeması tenant bazında tanımlanan department, job position ve kullanıcı ilişkileriyle oluşturulur.

Aktif kullanıcılar izlenebilir mi?

Evet. Concurrent lisans yönetimi nedeniyle aktif kullanıcı/session kayıtları izlenebilir ve yetkili kullanıcı gerektiğinde kick işlemiyle oturumu sonlandırabilir.

Raporlar sonradan değiştirilebilir mi?

Evet. Yetkili kullanıcı DevExpress report designer ile tanımlı raporları düzenleyebilir ve report viewer ile görüntüleyebilir.

13. Ekler

Terimler Sözlüğü

Terim ıklama
Tenant Çok kiracılı yapıda ayrı müşteri/kurum alanı.
Permission Bir ekranı veya işlemi yapma izni.
Role Birden fazla permission içerebilen kullanıcı grubu.
List Form Dinamik liste ve form ekranı tanımı.
Lookup Başka kayıtlardan seçim yapılan alan.
Workflow Kayıt üzerinde onay/red gibi durum geçişlerini yöneten akış.
Import Excel/CSV dosyasından veri alma işlemi.
Export Liste verisini dışa aktarma işlemi.
State Storing Tablo görünüm ayarlarının kullanıcı için saklanması.
Swagger API dokümantasyonu ve test arayüzü.
SignalR Canlı bağlantı ve anlık iletişim altyapısı.
WebRTC Tarayıcı üzerinden ses/görüntü iletişimi altyapısı.

Kısaltmalar

Kısaltma ıklama
API Application Programming Interface.
CRUD Create, Read, Update, Delete.
UI User Interface.
JWT JSON Web Token.
CDN Content Delivery Network veya dosya sunum alanı.
SQL Structured Query Language.

Teknik Notlar

Konu Not
Backend C#, ABP Framework, OpenIddict, Hangfire, DevExpress Reporting, SignalR.
Frontend React, Vite, Tailwind CSS, DevExtreme, Formik, React Router.
Çok kiracılık PlatformConsts.IsMultiTenant aktiftir.
Cache Redis cache yapılandırması bulunur.
Blob/File ABP BlobStoring FileSystem ile CDN path üzerinden çalışır.
Swagger OAuth destekli ABP Swagger UI kullanılır.
Dynamic Services Runtime derleme ve controller registration altyapısı vardır.

Modül Listesi

Modül ıklama
Platform Ana uygulama modülü.
Languages Dil ve lokalizasyon yönetimi.
Settings Ayar yönetimi.
Notifications Bildirim yönetimi.
MailQueue Mail queue altyapısı.
Sender SMS, Rocket, WhatsApp gibi gönderim ayarları/altyapısı.
SqlQueryManager SQL nesne ve sorgu yönetimi.
DataSource MSSQL/PostgreSQL kaynaklarının tenant ve dinamik liste/endpoint bazında yönetimi.
FileManagement Dosya ve klasör yönetimi.
DeveloperKit SQL Query Manager, CRUD endpoint, custom endpoint, dynamic service, custom component ve Wizard Manager ile low-code geliştirme.
Intranet Duyuru, anket, sosyal gönderi, etkinlik.
Forum Kategori, konu, gönderi.
Videoroom Canlı oda/toplantı yönetimi.

Ekran Listesi

Ekran Route veya Kod
Login /login
Register /register
Forgot Password /forgot-password
Reset Password /reset-password
Setup /setup
Dashboard /admin/dashboard
Dynamic List /admin/list/:listFormCode
Form New /admin/form/:listFormCode
Form View /admin/form/:listFormCode/:id
Form Edit /admin/form/:listFormCode/:id/edit
Chart /admin/chart/:listFormCode
Pivot /admin/pivot/:listFormCode
Settings /admin/settings
Files /admin/files
Forum /admin/forum
Forum Management /admin/forumManagement
Video Room Dashboard /admin/videoroom/dashboard
Video Room List /admin/videoroom/list
Video Room Detail /admin/videoroom/room/:id
Organization Units /admin/ous
Menu Manager /admin/menuManager
Developer Components /admin/developerkit/components
Developer Endpoints /admin/developerkit/endpoints
Dynamic Services /admin/developerkit/dynamic-services
Public Home /home
Public About /about
Public Services /services
Public Products /products
Public Checkout /checkout
Public Payment /payment
Public Blog /blog
Public Demo /demo
Public Contact /contact

Eksik / Netleştirilmesi Gereken Konular

Konu ıklama
Kuruma özel rol adları Kodda permission modeli doğrulandı; rol-permission eşleştirmeleri veritabanından doğrulanmalıdır.
Canlı menü sırası ve görünürlük Seed dosyası incelendi; canlı ortamda menü kayıtları değişmiş olabilir.
Dinamik component içerikleri Backend custom component kayıtları runtime veritabanından geldiği için canlı kayıtlar ayrıca kontrol edilmelidir.
Route sabitlerinde geçen ERP alanları Supply chain, maintenance, warehouse, projects, CRM, MRP ve accounting route sabitleri var; ancak bu taramada fiziksel ekran veya seed menü kanıtı bulunmadı.
Ödeme sağlayıcı ayrıntıları Sipariş oluşturma akışı doğrulandı; ödeme sağlayıcı entegrasyon ayrıntısı statik koddan netleşmedi.
AI entegrasyonu AI ekranı ve AiBot tanımları doğrulandı; sağlayıcı/model ayarları ayrıca kontrol edilmelidir.
Swagger endpointlerinin tam listesi Uygulama çalıştırılarak /swagger/v1/swagger.json çıktısı alınırsa endpoint listesi daha ayrıntılı tabloya dönüştürülebilir.