Ürün kataloğu

ASM360 özellikleri

Aile hekiminin maaşından ASM'nin denetim, soğuk zincir, stok ve personel operasyonuna; meslektaş topluluğundan ticari hizmetlere kadar 160 özellik tek çalışma alanında. Her modülü açıp ne işe yaradığını, nasıl kullanıldığını ve sınırını okuyabilirsin.

Durum rozetlerini birlikte okuyalım

Her özelliğin yanında gerçek durumu yazar. Hiçbir iddiayı olduğundan büyük göstermiyoruz.

Maaş sonuçları tahminîdir, resmî bordronun yerine geçmez. KVKK gereği hasta verisi tutulmaz; yalnız toplam/agregat sayılar işlenir.

Maaş & Bordro

undefined özellik

Dönem seçiminden mevzuat sürümlü hesaba, bordro okumadan mutabakat ve itiraza kadar maaşın tüm yolu. Sonuçlar tahminîdir; resmî bordro esastır.

Maaş Motoru

Mevzuat sürümlü kural setiyle kalem kalem tahmini net hesabı.

  • Yıl/ay dönem seçimi Aktif

    Hesaplamayı belirli bir döneme (yıl+ay) bağlar; seçilebilir yıllar bu yıl ve önceki 4 yıl.

    Nasıl kullanılır?

    1. Yıl seç (son 5 yıl)
    2. Ay seç (12 ay)
    3. Dönem değişince rule-info yeniden yüklenir

    İlgili rol: aile hekimi / aile sağlığı çalışanı

  • Sürümlü kural seti sunucudan Aktif

    Hangi girdilerin isteneceğini ve hangi mevzuat sürümünün geçerli olduğunu sunucudaki aktif kural setinden alır; motor UI'ye gömülü değil.

    Nasıl kullanılır?

    1. /calculations/rule-info?year&month çağrılır
    2. ruleSet.version + inputDefinitions döner
    3. UI bu tanımlara göre form üretir

    İlgili rol: aile hekimi

    Sınır: Dönem için yayınlanmış kural yoksa hata gösterilir

  • Zorunlu girdi doğrulaması + min/max Aktif

    Eksik zorunlu alan veya geçersiz/aralık dışı değer varsa hesaplamayı durdurur; varsayılanı olan alan doldurulur ve uyarı verir.

    Nasıl kullanılır?

    1. Her girdi Decimal'e çevrilir
    2. Eksik zorunlu → missingInputs, aralık dışı → invalidInputs
    3. EngineValidationError fırlatılır

    İlgili rol: aile hekimi

  • Yaş grubu ara puan hesaplayıcı Aktif

    Yaş gruplarına göre kayıtlı kişi sayısından ara puanı otomatik hesaplar; katsayı yüksekten ilk 3500 kişi sayılır.

    Nasıl kullanılır?

    1. Her yaş grubuna kayıtlı kişi girilir
    2. araPuanHesapla ilk 3500 kişiyi katsayı yüksekten sayar
    3. Ara puan calculate girdisine yazılır

    İlgili rol: aile hekimi

  • Kayıtlı / hizmet-almamış nüfus (yarım katsayı) Aktif

    Son 12 ayda hizmet almamış kişiler yarım katsayı ile sayılır; bileşen bu ayrımı yapar.

    Nasıl kullanılır?

    1. 'kayıtlı' ve 'hizmet almamış ½' ayrı girilir
    2. hizmetAlmamis yarım katsayıya tabi tutulur
    3. Toplam/sayılan kişi özetlenir

    İlgili rol: aile hekimi

  • Tabip / ASÇ profil ayrımı (HYP ve yaş seti) Aktif

    Kullanıcı profiline göre (aile_hekimi / aile_sagligi_calisani) doğru HYP kriter seti ve yaş grubu tablosu kullanılır.

    Nasıl kullanılır?

    1. Profil personelTipi okunur
    2. ruleSet.version ASC ile başlıyorsa ASC setleri
    3. YAS_GRUPLARI_ASC / HYP_ASC seçilir

    İlgili rol: aile hekimi / aile sağlığı çalışanı

  • HYP hedef katsayı checklist Aktif

    Tamamlanan tarama/takip hedefleri açıldıkça maaşa esas katsayı canlı yükselir (ör. +%5).

    Nasıl kullanılır?

    1. Hastalık grupları altında tarama/takip anahtarları açılır
    2. hypKatsayiFromChecklist katsayıyı hesaplar
    3. tarama_takip girdisine yazılır

    İlgili rol: aile hekimi

  • Önceki kümülatif matrah / GVİ / EMSAN girdisi Aktif

    Bordrodan okunan önceki kümülatif vergi matrahı, GVİ istisnası ve EMSAN matrahı hesaplama formuna otomatik yazılır.

    Nasıl kullanılır?

    1. Bordro yüklenir/okunur
    2. onerilenGirdiler alanları forma aktarılır
    3. onceki_kumulatif/gvi_istisna/emsan_matrah dolar

    İlgili rol: aile hekimi

  • Gezici sağlık hizmeti girdisi Kısmi

    Motor, kural setinin döndürdüğü girdi tanımlarını dinamik render eder; gezici sağlık ancak sunucudaki kural setine 'input definition' olarak eklenmişse görünür.

    Nasıl kullanılır?

    1. rule-info inputDefinitions listesi gelir
    2. Tanımlı her alan TextField olarak çizilir
    3. Formül gezici alanı kullanıyorsa hesaba girer

    İlgili rol: aile hekimi

    Sınır: Kodda sabitlenmiş özel bir 'gezici sağlık' alanı bulunamadı; varlığı kural-seti seed'ine bağlı

  • Brüt / kesinti / net kalem kalem döküm Aktif

    Kurallar sıraya göre çalıştırılır, her kalem (kazanç/kesinti/bilgi) tutarıyla listelenir; brüt, kesinti ve net ayrı hesaplanır (Decimal, float yok).

    Nasıl kullanılır?

    1. Kurallar sortOrder ile çalışır
    2. includeInTotal olanlar brüt/kesintiye toplanır
    3. net = brüt − kesinti

    İlgili rol: aile hekimi

    Sınır: Negatif kazanç/kesinti üretilirse hata verir

  • Kalem bazında mevzuat dayanağı Aktif

    Her kalemin altında ilgili mevzuat dayanağı (legalBasis) gösterilir.

    Nasıl kullanılır?

    1. Kural setinde legalBasis tanımlı
    2. Kalem sonucuna taşınır
    3. UI'da kalem altında yazılır

    İlgili rol: aile hekimi

    Sınır: Dayanak metni kural setinde tanımlı olduğu ölçüde görünür

  • Kural sürümü + uyarılar + TAHMİN uyarısı Aktif

    Sonuçta kullanılan kural sürümü, varsayılan-kullanıldı gibi uyarılar ve 'Bu sonuç tahminidir; resmî bordronun yerine geçmez' bildirimi gösterilir.

    Nasıl kullanılır?

    1. Motor warnings üretir
    2. disclaimer sabiti eklenir
    3. UI uyarı kutusu + disclaimer satırı çizer

    İlgili rol: aile hekimi

    Sınır: Kesin maaş/resmî bordro garantisi verilmez; açıkça tahmin ibaresi var

  • İzlenebilir/tekrar-üretilebilir hesap kaydı + geçmiş Aktif

    Her hesap; girdi/parametre anlık görüntüsü, kural sürümü ve formül SHA hash'i ile saklanır; kullanıcı geçmiş hesaplarını listeleyip açabilir.

    Nasıl kullanılır?

    1. run: snapshot + ruleSetHash + audit log yazılır
    2. /calculations/me geçmişi döner
    3. /calculations/:id kalemleriyle getirir

    İlgili rol: aile hekimi

    Sınır: Geçmiş listesi calculate.tsx'te değil ayrı endpoint/ekran üzerinden

Bordro Okuma & Sıralı Yükleme

PDF bordrodan matrah alanlarını oku-ve-at ilkesiyle çıkarır.

  • Çoklu PDF yükleme Aktif

    Birden çok ay bordrosu tek seferde seçilip yüklenebilir.

    Nasıl kullanılır?

    1. DocumentPicker multiple:true, type pdf
    2. Seçilen dosyalar bordroOku ile gönderilir
    3. Sonuç okunan aylar olarak listelenir

    İlgili rol: aile hekimi

  • Açık rıza (KVKK) kutusu Aktif

    Yüklemeden önce 'oku ve at' esaslı işleme için açık rıza kutusu işaretlenmeli; işaretlenmezse dosya seçtirilmez.

    Nasıl kullanılır?

    1. Rıza kutusu işaretlenir (KVKK linki)
    2. riza yoksa uyarı + buton pasif
    3. Rıza sonrası seçim açılır

    İlgili rol: aile hekimi

    Sınır: KVKK: rıza olmadan işlem yapılmaz

  • Yıl ve ay doğrulama (yanlış belge reddi) Aktif

    Okunan bordronun yılı/ayı beklenenle uyuşmazsa reddedilir; karışık kişi/karışık yıl seti sunucuda da reddedilir.

    Nasıl kullanılır?

    1. okunanYil != hedef yıl → hata
    2. hedefAy okunanAylar içinde değilse → hata
    3. Sunucu farklıPersonel/farklıYil kontrolü yapar

    İlgili rol: aile hekimi

  • Sıra atlamayı engelleme Aktif

    Ocak'tan seçili aya kadar bordrolar sırayla istenir; eksik olan bir sonraki ay hedeflenir, atlanamaz.

    Nasıl kullanılır?

    1. gerekliAylar = 1..(ay-1)
    2. yüklü olmayan ilk ay hedefAy olur
    3. İlerleme sayacı/çubuğu gösterilir

    İlgili rol: aile hekimi

  • Kümülatif vergi matrahı çıkarma Aktif

    Bordrolardan bir sonraki ayın önceki kümülatifi = son ayın KümVrg.Mat + Ay.Vrg.Mat olarak hesaplanır; aynı ayın çok parçası için zincirin en ilerisi alınır.

    Nasıl kullanılır?

    1. PDF metninden etiketli alanlar okunur
    2. Son ay için max(Küm+Ay) bulunur
    3. onceki_kumulatif olarak döner

    İlgili rol: aile hekimi

  • Okunamayan dosya uyarısı Aktif

    Anlamlı hiçbir alanı yakalanamayan bordro 'okunamayan' sayılır ve kullanıcıya kaç dosyanın okunamadığı bildirilir.

    Nasıl kullanılır?

    1. parseBordro sonucu bordroBos ise okunamayan listesine eklenir
    2. okunamayanDosyalar döner
    3. UI uyarı gösterir

    İlgili rol: aile hekimi

    Sınır: Taranmış/görüntü PDF (metin içermeyen) okunamaz

  • Dosya adedi / boyut sınırı Aktif

    En çok 12 dosya, dosya başına 5MB; hem istemci hem sunucu denetler, ayrıca %PDF- imzası doğrulanır.

    Nasıl kullanılır?

    1. İstemci adet/boyut kontrolü
    2. Sunucu FilesInterceptor limitleri
    3. pdfImzasiVar magic-byte kontrolü

    İlgili rol: aile hekimi

  • OKU-VE-AT (PDF saklanmaz) Aktif

    PDF diske yazılmaz; pdfjs ile bellekte metin çıkarılıp yalnız gerekli sayılar döndürülür, istemcide de kopya dosya silinir.

    Nasıl kullanılır?

    1. Buffer bellekte parse edilir
    2. Yalnız çıkarılan sayılar döner
    3. İstemcide cache kopyası deleteAsync ile silinir

    İlgili rol: aile hekimi

    Sınır: KVKK: hasta verisi değil, yalnız teknik matrah alanları; belge kalıcı saklanmaz

HYP Hedef Koçu & Sözleşme Yenileme

Gösterge oranları, hedefe kalan işlem ve EK-5 puan tahmini.

  • Hedef koçu (pay/payda, gösterge %, durum) Aktif

    Her gösterge için gerçekleşen/hedef kitle oranı, eşiğe göre başarılı/riskli/düşük durumu hesaplanır ve renklendirilir.

    Nasıl kullanılır?

    1. Payda>0 ise yüzde hesaplanır
    2. hedef ve hedef-10 eşiğine göre durum
    3. Kartta yüzde+durum rozeti gösterilir

    İlgili rol: aile hekimi

  • Hedefe kalan işlem + öneri Aktif

    Eşiğe ulaşmak için kaç işlem daha gerektiğini hesaplar ve öneri metni sunar; toplam kalan işlem özetlenir.

    Nasıl kullanılır?

    1. gerekliPay = ceil(payda*hedef/100)
    2. kalan = gerekliPay − pay
    3. Özette 'X işlem hedefe kaldı'

    İlgili rol: aile hekimi

  • Gösterge trendi (son 6 ay) Aktif

    Bir göstergenin son 6 aylık performans yüzdesi çubuk grafik olarak gösterilir.

    Nasıl kullanılır?

    1. /hyp/trend?kriterId&year&month çağrılır
    2. Son 6 dönemin yüzdeleri döner
    3. Modalda bar grafik çizilir

    İlgili rol: aile hekimi

  • Sözleşme yenileme EK-5: 24 gösterge Aktif

    EK-5 tablosundaki 24 gösterge resmî sıra, puan bantları ve azami puanlarıyla birebir kodlanmış.

    Nasıl kullanılır?

    1. 24 gösterge tanımı sabit
    2. Her göstergeye oran (%) girilir
    3. Bant eşiğine göre puan verilir

    İlgili rol: aile hekimi / aile sağlığı çalışanı

  • Toplam/azami puan + eşik + yenilenir/risk Aktif

    Girilen oranlardan toplam puan hesaplanır; 70 ve üzeri YENİLENİR, altı RİSK; azami 100 puan.

    Nasıl kullanılır?

    1. Her gösterge puanı toplanır
    2. toplam>=70 → yenilenir
    3. Sonuç kartında YENİLENİR/RİSK rozeti

    İlgili rol: aile hekimi

    Sınır: Resmî karar değil; bilgilendirme amaçlı hesap

  • Eşiğe kalan + en hızlı puan önerisi Aktif

    Eşiğe kaç puan kaldığını ve hangi göstergeyi hangi orana çıkarınca kaç puan kazanılacağını (ilk 5) önerir.

    Nasıl kullanılır?

    1. sonrakiEsik ile üst bant bulunur
    2. kazanç puanına göre sıralanır
    3. '%Y'ye çıkın → +N puan' önerisi

    İlgili rol: aile hekimi

  • Resmî kaynak gösterimi Aktif

    Hesabın dayanağı olarak Resmî Gazete 6.9.2025 Sayı 33009, Karar 10375 (EK-5) belirtilir.

    Nasıl kullanılır?

    1. MEVZUAT_KAYNAK sabiti tanımlı
    2. Sonuçla birlikte döner
    3. UI altında kaynak notu yazılır

    İlgili rol: aile hekimi

  • KVKK sınırı — yalnız toplam sayı Aktif

    Hasta adı/T.C. istenmez; yalnız hedef kitle ve gerçekleşen toplam sayılar (veya oran) tutulur.

    Nasıl kullanılır?

    1. Yalnız payda/pay veya oran girilir
    2. Uyarı: hasta verisi girmeyin
    3. Motor yalnız sayı işler

    İlgili rol: aile hekimi

    Sınır: KVKK / k-anonimlik: bireysel hasta verisi yok, agregat

Bordro Mutabakatı & İtiraz Asistanı

Beklenen ile gerçekleşeni karşılaştır, aleyhte kalemi itiraza çevir.

  • Beklenen kalemlerin hesaptan otomatik dolması Aktif

    Bir dönem için mutabakat açıldığında, o döneme ait son maaş hesabının kalemleri 'beklenen' olarak otomatik yüklenir.

    Nasıl kullanılır?

    1. Dönem seçilir
    2. Son salaryCalculation kalemleri çekilir
    3. Mutabakat kalemi olarak yazılır

    İlgili rol: aile hekimi

    Sınır: O döneme ait hesap yoksa manuel kalem eklenir

  • Gelir/kesinti farkı (cep etkisi) + durum Aktif

    Her kalemde beklenen ile bordroda gerçekleşen karşılaştırılır; kazanç eksik/kesinti fazlaysa aleyhte, tersi lehte olarak işaretlenir (0,5 TL tolerans).

    Nasıl kullanılır?

    1. gerçekleşen tutar girilir
    2. cepEtkisi hesaplanır
    3. aleyhte/lehte/uyumlu durumu ve tutar özeti

    İlgili rol: aile hekimi

  • Toplu güncelleme + manuel kalem ekleme Aktif

    Bordrodaki tutarlar toplu güncellenebilir; listede olmayan (ör. nöbet ücreti) kalem manuel eklenebilir.

    Nasıl kullanılır?

    1. Değerler toplu gönderilir / manuel kalem girilir
    2. Header net yeniden hesaplanır
    3. Detay güncellenir

    İlgili rol: aile hekimi

  • Aleyhte kalemleri itiraza dönüştürme Aktif

    Aleyhte (kayıp) ve henüz itiraz edilmemiş kalemlerden İtiraz Asistanı'na kayıt üretilir (idempotent), gerekçe otomatik yazılır.

    Nasıl kullanılır?

    1. 'Aleyhte N kalemi itiraza dönüştür' basılır
    2. Her kayıp kalem için itiraz oluşturulur
    3. Kalem itirazId ile işaretlenir, mutabakat tamamlandı

    İlgili rol: aile hekimi

  • İtiraz: dönem/kalem, beklenen/resmî, fark Aktif

    Dönem, kalem adı, beklenen (ASM360) ve resmî bordro tutarı girilir; fark otomatik hesaplanır.

    Nasıl kullanılır?

    1. Dönem+kalem+tutarlar girilir
    2. farkHesapla beklenen−resmî
    3. Kayıt oluşturulur + audit log

    İlgili rol: aile hekimi

  • İtiraz şablonları (genel + il-özel) Aktif

    Kullanıcının iline uygun aktif itiraz nedeni şablonları DB'den listelenir (genel + il-özel).

    Nasıl kullanılır?

    1. Kullanıcı ili okunur
    2. Aktif genel + il şablonları döner
    3. Neden seçilince şablon uygulanır

    İlgili rol: aile hekimi

  • Gerekli belge kontrol listesi Aktif

    Seçilen şablonun gerekli belgeleri işaretlenebilir kontrol listesi olarak üretilir ve tamamlanma sayısı gösterilir.

    Nasıl kullanılır?

    1. Şablonun gerekliBelgeler dizisi alınır
    2. Her belge false ile checklist'e yazılır
    3. UI'da işaretlenip kaydedilir

    İlgili rol: aile hekimi

  • Düzenlenebilir dilekçe (taslak) Taslak

    Şablon gövdesindeki {placeholder}'lar kullanıcı/dönem/tutar bilgileriyle doldurulup düzenlenebilir bir dilekçe metni üretilir; kullanıcı serbestçe değiştirebilir, yeniden üretebilir.

    Nasıl kullanılır?

    1. Şablon gövdesi placeholder'larla doldurulur
    2. Metin düzenlenebilir alanda gösterilir
    3. 'Yeniden oluştur' ile güncellenir

    İlgili rol: aile hekimi

    Sınır: Yalnız taslak üretir; resmî/otomatik gönderim YOK, hazır hukuk hizmeti değil

  • Son tarih + durum + lehte/aleyhte sonuç takibi Aktif

    İtirazın durumu (taslak/hazır/gönderildi/sonuçlandı), son tarihi ve sonucu (kabul/kısmi/red) elle takip edilir.

    Nasıl kullanılır?

    1. Durum butonlarından seçilir
    2. Son tarih girilir
    3. Sonuçlandıysa kabul/kısmi/red işaretlenir

    İlgili rol: aile hekimi

    Sınır: Durum/sonuç kullanıcının manuel girdiği bilgidir; resmî sistemle entegre değil

  • Dilekçeyi kopyala / paylaş Aktif

    Üretilen dilekçe metni web'de panoya kopyalanır, mobilde sistem paylaşım menüsüyle paylaşılır.

    Nasıl kullanılır?

    1. 'Dilekçeyi paylaş/kopyala' basılır
    2. Web: clipboard'a yazılır
    3. Mobil: Share.share çağrılır

    İlgili rol: aile hekimi

Günlük Yönetim

undefined özellik

Panel, komuta merkezi, öz-değerlendirmeli sağlık skoru, takvim ve bildirim merkeziyle her günün özeti tek ekranda.

Ana Panel & Günlük Yönetim

Dashboard, komuta merkezi, sağlık skoru, takvim ve bildirimler.

  • Dashboard (bu ay / son maas tahmini) Aktif

    Icinde bulunulan ayin hesabi (yoksa son hesaplama), abonelik durumu, ASM/hesaplama sayilari ve okunmamis bildirim rozeti; Promise.allSettled ile bagimsiz hata yonetimi

    Nasıl kullanılır?

    1. 4 uc paralel cekilir
    2. 'Bu ay' yoksa 'Son tahmini odeme' gosterilir
    3. Hepsi duserse hata bandi (sifir veri gibi sunulmaz)

    İlgili rol: aile hekimi / uye

    Sınır: tahmin: maas 'Tahmini sonuc, resmi bordronun yerine gecmez' disclaimer'i ekranda

  • Bugun / Komuta merkezi Aktif

    Sec ilen ASM'nin soguk zincir/stok/denetim/gorev/olay/belge/fatura/karar/HYP ozet kartlari; kritik/uyari/iyi/veri_yok durumu + karta dokununca ilgili module deep-link

    Nasıl kullanılır?

    1. GET /asms/:id/bugun (uyelik dogrulanir)
    2. 9 modul DB'den paralel ozetlenir, kartOzet/kartSirala
    3. Kart yol'a router.push

    İlgili rol: sorumlu hekim / uye (ASM uyesi)

    Sınır: veri_yok notr renkte gosterilir, yesil 'iyi' DEGIL; 'her sey yolunda' yalniz en az bir kurulu modul sorunsuzken

  • ASM Saglik Skoru (alt skor + risk + trend) Aktif

    Denetim/soguk zincir/stok/belge/personel/olay alt skorlarindan agirlikli genel skor + risk duzeyi; gunluk snapshot ile 30 gunluk trend

    Nasıl kullanılır?

    1. GET /asms/:id/saglik (uyelik dogrulanir)
    2. Alt alanlar puanlanir, agirlikli genelSkor + riskDuzeyi
    3. Gunluk upsert snapshot; trend son 30 gun

    İlgili rol: sorumlu hekim / uye (ASM uyesi)

    Sınır: tahmin/oz-degerlendirme: 'operasyonel oz-degerlendirme, resmi denetim sonucu degildir'; veri girilmemis alan skor=null (dusuk skor DEGIL, agirliktan haric)

  • Takvim / Ajanda + ICS disa aktarim Aktif

    Denetim/belge/stok/gorev/DOF son tarihleri + kisisel hatiraticilar ay bazli listelenir; gecen/bugun/bu hafta ozeti; standart .ics dosyasi olarak disa aktarilir

    Nasıl kullanılır?

    1. GET /asms/:id/takvim?year&month
    2. GET /asms/:id/takvim/ics (VCALENDAR uretir)
    3. Web indir / mobil Share; hatirlatici POST /hatirlatici

    İlgili rol: sorumlu hekim / uye

  • Bildirim merkezi (okundu, deep-link, tercihler) Aktif

    Uygulama ici bildirimler listelenir, tekil/tumu okundu isaretlenir, sosyal bildirimlerde ilgili gonderi/profile deep-link; kategori bazli tercihler kullaniciya bagli saklanir

    Nasıl kullanılır?

    1. GET /notifications (okunmamis sayisi + liste)
    2. POST /notifications/:id/read ve /read-all
    3. GET/PUT /notifications/prefs (debounce'lu kayit)

    İlgili rol: uye

    Sınır: WhatsApp/push dis kanal NOTIFY_WHATSAPP=1 olmadikca kapali (gercek numara baglanana kadar); uygulama ici bildirim her zaman calisir

Finans & Belgeler

undefined özellik

Ortak gider paylaşımı, fatura tarama, karar defteri, süre-takipli belge kasası ve resmî yazışma taslakları.

Gider, Ödeme & Dönem

Ortak gider, doktor başı bölme, ödeme kaydı ve dönem kapatma.

  • ASM ve dönem (ay/yıl) seçimi Aktif

    Kullanıcı üyesi olduğu ASM'yi ve ay/yıl dönemini seçerek o döneme ait giderleri görür

    Nasıl kullanılır?

    1. ASM listesi /asms/me ile gelir, çok ASM varsa SelectField ile seçilir
    2. Ay okları ile dönem değişir; içinde bulunulan aydan ileri gidilemez (ileriKapali)
    3. Seçime göre backend expenses/summary/allocations yeniden yüklenir

    İlgili rol: aile hekimi / üye

  • Gider ekleme (kategori + açıklama + TL tutar) Aktif

    Aktif üyelerden herkes seçili döneme kategori, açıklama ve tutarla gider kalemi ekler

    Nasıl kullanılır?

    1. Kategori DB'den (expense-categories) gelir, açıklama ve tutar girilir
    2. Tutar regex ile doğrulanır (^\d+(\.\d{1,2})?$)
    3. Backend gider + audit kaydını tek transaction'da yazar

    İlgili rol: aile hekimi / üye (aktif üye)

    Sınır: Manuel giriş; fatura/harici sistem entegrasyonu değil

  • Kamu binası / kira kuralı Aktif

    Bina kamuysa 'kira' ortak gidere yazılamaz; kira doktorların maaşından kesildiği için bölüştürülmez

    Nasıl kullanılır?

    1. ASM ayarındaki buildingType='public' kontrol edilir
    2. Kira kategorisiyle gider eklenirse BadRequest döner
    3. Frontend kamu binasında kira kategorisini seçenekten çıkarır ve bilgi notu gösterir

    İlgili rol: aile hekimi

    Sınır: Bina türü ASM ayarından; manuel beyan

  • Dönem toplamı + doktor başı otomatik bölme Aktif

    Dönemin toplam gideri ve doktor sayısına bölünmüş kişi başı tutarı otomatik hesaplanır

    Nasıl kullanılır?

    1. Toplam = dönemdeki aktif giderlerin sum'ı (Decimal)
    2. Bölen = ayardaki physicianCount, yoksa aktif üye sayısı
    3. kisiBasi = toplam / bölen, 2 hane HALF_UP yuvarlama

    İlgili rol: aile hekimi

    Sınır: Kişi başı, deklare doktor sayısı/üye sayısına göre yaklaşık bölme; kesin bordro değil

  • Paylaştırma — yalnız EŞİT mi? (yüzde/sabit/oran kontrolü) Kısmi

    Mobil ekran yalnızca 'tüm üyelere eşit paylaştır'ı sunar; backend eşit VE manuel (kişi başı serbest tutar) destekler

    Nasıl kullanılır?

    1. Frontend her zaman { method:'equal' } gönderir; başka yöntem butonu yok
    2. Backend equal → splitEqual (yuvarlama farkı deterministik son paya)
    3. Backend manual → validateManualShares (pay toplamı = gider toplamı)

    İlgili rol: sorumlu hekim

    Sınır: Yüzde / sabit oran / önceden tanımlı oran YÖNTEMİ YOK. Manuel = serbest TL tutarları; mobil arayüzde manuel giriş açık değil, sadece eşit

  • Kendi payları + kısmi/tam ödeme kaydı Aktif

    Kullanıcı kendi payını, ödenen ve kalan tutarla görür; kalan varken kısmi veya tam ödeme kaydeder

    Nasıl kullanılır?

    1. myAllocations pay + ödenen + kalan hesaplar
    2. OdemeModal varsayılan olarak kalan tutarı önerir, kısmi tutar da girilebilir
    3. recordPayment satır kilidi (FOR UPDATE) ile kalan aşılırsa reddeder

    İlgili rol: üye (pay sahibi) / sorumlu hekim

    Sınır: Ödeme = uygulama içi kayıt; gerçek para transferi/banka entegrasyonu değil

  • Sorumlu hekim ödeme onayı Aktif

    Üyenin kaydettiği ödeme 'beklemede' düşer; sorumlu hekim onaylayınca 'confirmed' olur

    Nasıl kullanılır?

    1. pendingPayments recorded durumundaki ödemeleri listeler
    2. confirmPayment 'finance' yetkisi + sorumlu rol ister
    3. Koşullu update (status='recorded') ile çift onay yarışı engellenir

    İlgili rol: sorumlu hekim

  • Dönem kapatma Aktif

    Sorumlu hekim dönemi kapatır; kapalı döneme gider eklenemez

    Nasıl kullanılır?

    1. POST /periods/:y/:m/close, 'finance' yetkisi + sorumlu rol
    2. Koşullu update (status='open') ile çift kapatma yarışı çözülür
    3. Kapanınca closedBy/closedAt yazılır + audit

    İlgili rol: sorumlu hekim

  • Gerekçeli dönem yeniden açma Aktif

    Kapalı dönem, zorunlu gerekçe ile yeniden açılır; kapatan/kapanış bilgisi audit'e taşınır

    Nasıl kullanılır?

    1. Frontend en az 5 karakter gerekçe ister
    2. reopenPeriod yalnız 'closed' dönemi açar, reason + audit yazar
    3. closedAt/closedBy temizlenir, eski değer denetim kaydında saklanır

    İlgili rol: sorumlu hekim

  • Kapalı döneme gider girilemez Aktif

    Dönem kapalıysa gider ekleme ve paylaştırma engellenir

    Nasıl kullanılır?

    1. requireOpen kapalı dönemde BadRequest fırlatır
    2. createExpense ve allocate çağrılarında dönem açık kontrolü var
    3. Frontend kapalı dönemde ekle butonunu göstermez

    İlgili rol: aile hekimi

Fatura Tarama & Muhasebe

Fatura görselini AI ile oku, düzelt, gidere aktar, CSV paylaş.

  • Görsel seçme (kamera / galeri) Aktif

    Fatura fotoğrafı kameradan çekilir veya galeriden seçilir

    Nasıl kullanılır?

    1. İzin istenir (kamera/medya)
    2. launchCameraAsync / launchImageLibraryAsync base64 ile
    3. Web'de doğrudan galeri seçimi

    İlgili rol: aile hekimi / üye

  • AI ile alan okuma (tedarikçi/no/tarih/toplam/KDV/kategori) Aktif

    Görsel Gemini vision'a gönderilir; tedarikçi, fatura no, tarih, toplam, KDV, kategori önerisi ve açıklama JSON döner

    Nasıl kullanılır?

    1. GEMINI_API_KEY ile generativelanguage API'ye görsel + prompt gönderilir
    2. JSON parse edilir; kategori sadece geçerli kodlara eşlenir, tarih ISO doğrulanır
    3. trParaCoz ile TR para metni sayıya çevrilir

    İlgili rol: aile hekimi

    Sınır: GEMINI_API_KEY yoksa 503 (özellik kapalı). Okunan alanlar ÖNERİDİR, kullanıcı onayı olmadan kesin kayıt olmaz

  • Kullanıcı düzeltir ve kaydeder Aktif

    AI'nin okuduğu alanlar düzenlenebilir formda gösterilir, kullanıcı doğrular/düzeltir ve kaydeder

    Nasıl kullanılır?

    1. Okunan değerler TextField'lara önyüklenir
    2. Tutar/tarih doğrulanır (tarih YYYY-AA-GG)
    3. POST /fatura ile kaydedilir, görsel private saklanır, durum 'bekleyen'

    İlgili rol: aile hekimi

    Sınır: Kaydedilen fatura 'bekleyen' durumdadır; gider kaydı değil

  • Gider kalemine aktarma Aktif

    Kaydedilmiş fatura seçilen dönem/kategoriyle ortak gider kalemine dönüştürülür

    Nasıl kullanılır?

    1. Dönem/kategori seçilir, POST /fatura/:id/aktar
    2. createExpense çağrılır; koşullu update (giderId boşken) ile mükerrer önlenir
    3. Yarışı kaybeden gider 'void' işaretlenir + audit

    İlgili rol: sorumlu hekim (finance)

    Sınır: 'finance' yetkisi ister (sorumlu)

  • Muhasebeciye CSV paylaşımı Aktif

    Ayın faturaları noktalı virgüllü (TR Excel uyumlu) CSV olarak panoya/paylaşıma çıkar

    Nasıl kullanılır?

    1. GET /fatura/aktarim?year&month CSV üretir
    2. Web'de panoya kopyalar, mobilde Share ile paylaşır
    3. Alanlar CSV-escape edilir

    İlgili rol: sorumlu hekim

    Sınır: CSV metni; muhasebe yazılımına doğrudan API entegrasyonu değil

Karar Defteri, Belge Kasası & Arama

Numaralı kararlar, oylama, süre-takipli belge kasası ve arama.

  • Karar oluşturma + kategori Aktif

    Başlık, metin ve kategori (gider/kural/personel/demirbaş/diğer) ile numaralı karar oluşturulur

    Nasıl kullanılır?

    1. POST /kararlar 'create_edit' yetkisiyle
    2. kararNo son numaranın +1'i olarak artar
    3. tarih verilmezse bugün, oluşturan userId kaydedilir

    İlgili rol: aile hekimi / üye

  • Taslak→oylama→kabul/red→arşiv akışı Aktif

    Karar taslakken düzenlenir, oylamaya açılır, sonuçta kabul/red ile kapanır ve arşivlenir

    Nasıl kullanılır?

    1. Yalnız taslak düzenlenebilir
    2. Oylamaya açma 'approve' yetkisi ister; üyelere bildirim gider
    3. kabul/red/arşiv durum geçişleri sonuç notu ile yazılır

    İlgili rol: oluşturan + onay makamı (approve)

    Sınır: Kabul edilmiş karar silinemez (arşivlenir)

  • Oy verme (kabul/red/çekimser) + imza özeti Aktif

    Üyeler oy verir; kabul/red/çekimser sayıları, bekleyen sayısı ve imza listesi gösterilir

    Nasıl kullanılır?

    1. POST /imza tek oy (onConflictDoUpdate ile güncellenebilir)
    2. oyOzeti kabul/red/çekimser/imzalamayan sayar
    3. İmza listesi kişi + oy ile detayda gösterilir

    İlgili rol: üye

    Sınır: 'İmza' = uygulama içi oy kaydıdır; ıslak imza / yasal e-imza (KEP/e-İmza) DEĞİL

  • Sonuç önerisi + sonuç notu Aktif

    Oylara göre kabul/red/belirsiz önerisi hesaplanır; oluşturan sonucu not ile kapatır

    Nasıl kullanılır?

    1. gerekli = floor(toplam/2)+1 salt çoğunluk
    2. kabul/red gerekliyi geçerse öneri o yönde, yoksa belirsiz
    3. Sonuçlandırırken sonucNotu kaydedilir

    İlgili rol: oluşturan

    Sınır: Öneri; nihai kararı oluşturan verir (manuel onay)

  • Belge kasası (PDF, kategori, geçerlilik uyarısı, aç/sil) Aktif

    Sözleşme/ruhsat/resmî yazı vb. PDF'ler kategori + geçerlilik tarihiyle saklanır, süresi geçen/yaklaşan uyarısı verilir

    Nasıl kullanılır?

    1. PDF base64 private köke yazılır, DB'de referans durur
    2. belgeGecerlilik 30 gün içinde 'yakinda', geçmişse 'gecti' döner
    3. Aç imzalı kısa ömürlü URL ile; silme 'delete_void' (sorumlu)

    İlgili rol: aile hekimi / üye (yükleme) / sorumlu (silme)

    Sınır: Belge erişimi kullanıcıya bağlı imzalı URL; silme geri alınamaz

  • Birleşik belge arama (kasa+denetim+fatura) Aktif

    Kasa, denetim ve fatura belgeleri tek aramada, kaynak filtresiyle, TR-normalize çoklu kelime (AND) eşleşmeyle taranır

    Nasıl kullanılır?

    1. Kaynak çipleri: Tümü/Kasa/Denetim/Fatura (350ms debounce)
    2. aramaEslesme tüm sorgu kelimelerinin alanlarda geçmesini arar
    3. Sonuç tarihe göre sıralı, dış bağlantıyla açılır

    İlgili rol: aile hekimi / üye

    Sınır: Arama AKSAN-DUYARSIZ'dır (İ/ı, ş, ğ, ü, ö, ç normalize edilir) — 'aksan-duyarlı' iddiası koda ters; tam metin/dosya içeriği değil, başlık/açıklama/kategori üzerinde

Resmî Yazışma & Mevzuat

Şablondan taslak yazı üretimi ve mevzuat değişiklik duyuruları.

  • Sürümlü / il-özel şablon listesi Aktif

    Dilekçe/üst yazı/görevlendirme vb. türlerde, genel veya il-özel aktif şablonlar mevzuat dayanağıyla listelenir

    Nasıl kullanılır?

    1. GET /yazisma/sablonlar aktif şablonları tür + sortOrder ile getirir
    2. İl verilirse genel + o il şablonları filtrelenir
    3. Her şablon için gövdedeki {placeholder}'lar çıkarılır

    İlgili rol: aile hekimi

    Sınır: Şablon içeriği admin tarafından yönetilir

  • Değişken alan doldurma + eksik uyarısı Aktif

    Şablonun değişken alanları doldurulur; boş bırakılanlar [köşeli] kalır ve 'doldurulmayan' olarak uyarılır

    Nasıl kullanılır?

    1. placeholderlar alanları TextField olarak çıkarır
    2. yazismaUret {alan} → değer; verilmeyeni [alan] bırakır ve eksik listesine ekler
    3. Ekranda 'Doldurulmayan: ...' notu gösterilir

    İlgili rol: aile hekimi

  • Düzenlenebilir TASLAK üretimi Taslak

    Sistem yalnızca kontrol edilip düzenlenecek bir taslak metin üretir; resmî gönderim yapılmaz

    Nasıl kullanılır?

    1. POST /yazisma/uret taslak metin + zorunlu uyarı döndürür
    2. Ekranda sarı uyarı şeridi gösterilir, alanlar tekrar düzenlenebilir
    3. Üretim audit'e yazılır

    İlgili rol: aile hekimi

    Sınır: TASLAK — otomatik gönderilmiş resmî yazı DEĞİL; kurum/EBYS'ye gönderim yok

  • Taslağı kopyalama / paylaşma Aktif

    Üretilen taslak, başına '[TASLAK — göndermeden önce kontrol edin]' notu eklenerek panoya kopyalanır veya paylaşılır

    Nasıl kullanılır?

    1. Web'de navigator.clipboard ile kopyalanır
    2. Mobilde Share ile paylaşılır
    3. Metnin başına taslak uyarısı eklenir

    İlgili rol: aile hekimi

  • Mevzuat duyuruları (öncesi/sonrası, kaynak/yürürlük) Aktif

    Aktif mevzuat değişiklikleri; özet, önce/sonra karşılaştırması, yürürlük tarihi, etkilenen modüller ve kaynak ile gösterilir

    Nasıl kullanılır?

    1. GET /mevzuat/duyurular aktif duyuruları tarihe göre getirir
    2. Önce/Sonra kutuları ve yürürlük tarihi ekranda gösterilir
    3. Kaynak ve etkilenen modül bilgisi listelenir

    İlgili rol: aile hekimi

    Sınır: İçerik admin tarafından girilir; resmî mevzuat kaynağından otomatik çekilmez

Denetim & Uyum

undefined özellik

Denetim hazırlığı, soğuk zincir, OSGB ve afet planları. Göstergeler iç öz-değerlendirmedir; resmî denetim sonucu değildir.

Denetim Merkezi

Kontrol listesi, hazırlık skoru, kanıt belge ve dosya export.

  • Denetim kontrol listesi (madde durumu: tamam/eksik/uygulanamaz) Aktif

    Şablon maddelerini üç durumla işaretleyip denetim hazırlığını yönetir

    Nasıl kullanılır?

    1. Denetim Merkezi ekranını aç
    2. Maddeye dokun, Tamam/Eksik/Uygulanamaz seç
    3. Sorumlu kişi + not ekle, Kaydet

    İlgili rol: sorumlu hekim / personel

    Sınır: Resmi denetim sonucu değil, kendi-değerlendirmeli hazırlık aracı; maddeler admin şablonundan gelir

  • Hazırlık skoru (% zorunlu madde tamamlanma) Aktif

    Zorunlu maddelerin ne kadarının tamam olduğunu yüzde ve renkle gösterir

    Nasıl kullanılır?

    1. Ekranı aç
    2. Üstteki skor kartını gör (tamam/toplam zorunlu)

    İlgili rol: sorumlu hekim

    Sınır: Tahmini hazırlık göstergesi; resmi puan/geçme garantisi değil

  • Kanıt belge (PDF) yükleme + son tarih/geçerlilik uyarısı Aktif

    Maddeye PDF kanıt eklenir; süresi geçen/yakında dolan/belge eksik maddeler işaretlenir

    Nasıl kullanılır?

    1. Maddeyi aç
    2. Belge yükle (PDF) seç
    3. Geçerlilik son tarihi gir

    İlgili rol: sorumlu hekim / personel

    Sınır: Belge geçerliliğini sistem doğrulamaz, kullanıcı beyanı; süre uyarısı yenilemeAy'a göre hesaplanır

  • Denetime-hazır dosya (özet metin export) Aktif

    Tüm maddelerin durum özetini paylaşılabilir/panoya kopyalanabilir metin olarak üretir

    Nasıl kullanılır?

    1. Skor kartında 'Denetim dosyası'na dokun
    2. Metin panoya kopyalanır / paylaşılır

    İlgili rol: sorumlu hekim

    Sınır: Düz metin özet; resmi PDF rapor/imzalı belge değil

Soğuk Zincir

Aşı dolabı sıcaklık kaydı, +2/+8°C ihlal uyarısı ve olay raporu.

  • Aşı dolabı + sabah/akşam sıcaklık kaydı Aktif

    Her dolap için günde iki kez sıcaklık ve min/max okuması elle kaydedilir

    Nasıl kullanılır?

    1. Dolapta 'Sıcaklık gir'e dokun
    2. Sabah/Akşam ve °C değerini yaz
    3. Kaydet

    İlgili rol: personel / sorumlu hekim

    Sınır: MANUEL giriş — kullanıcı sıcaklığı elle yazar; IoT/otomatik sensör bağlantısı YOK

  • +2/+8°C ihlal tespiti + anlık ASM içi bildirim Aktif

    Girilen değer güvenli aralık dışıysa ihlal işaretlenir ve ASM'nin aktif üyelerine in-app bildirim gider

    Nasıl kullanılır?

    1. Aralık dışı sıcaklık gir
    2. Ekranda uyarı + üyelere bildirim oluşur

    İlgili rol: sistem (kayıt anında)

    Sınır: Bildirim yalnızca uygulama-içi (in-app) tetiklenir; ihlal ancak kayıt girildiğinde yakalanır (sürekli izleme değil)

  • Elektrik/arıza olay kaydı + sonlandırma + aylık rapor Aktif

    Kesinti/arıza olayı açılır, sürüyor işaretlenir, sonlandırılır; ay bazında uyum+ihlal+olay raporu üretilir

    Nasıl kullanılır?

    1. Detay > Olaylar > Olay ekle
    2. Tür + aşı etkilendi mi seç
    3. Aylık rapor ile paylaş

    İlgili rol: personel / sorumlu hekim

    Sınır: Rapor paylaşılabilir metin; resmi mühürlü belge değil

OSGB & Risk Değerlendirme

İSG hizmet talebi, durum akışı ve kurumsal irtibat ataması.

  • OSGB hizmet talebi (risk deg/İSG eğitim/acil plan/muayene/kaza/danışmanlık) Aktif

    ASM belirtilen hizmet türlerinden öncelik ve tercih tarihiyle talep oluşturur

    Nasıl kullanılır?

    1. 'OSGB hizmeti talep et'
    2. Hizmet türü + öncelik + tercih tarih gir
    3. Talep oluştur

    İlgili rol: sorumlu hekim / üye

    Sınır: ASM360 hizmeti kendisi SUNMAZ — aracı/takip aracı; hizmet anlaşmalı OSGB firmasınca verilir (ekran:137)

  • Durum akışı yeni→planlandı→devam→tamamlandı + SLA/gecikme Aktif

    Talep durumu ileri akışta ilerletilir; SLA hedef tarihi hesaplanır ve geçince gecikme işaretlenir

    Nasıl kullanılır?

    1. Talep detayında '... yap' ile ilerlet
    2. Gecikme rozetini gör

    İlgili rol: sorumlu hekim

    Sınır: SLA gün sayısı OPERASYONEL varsayılan (osgb_sla_tanimlari), MEVZUAT DEĞERİ DEĞİL (hesap.ts:8 yorumu)

  • Atama (İSG uzmanı/işyeri hekimi/DSP/firma) + vaka + iptal + durum geçmişi Aktif

    Talebe rol bazlı irtibat ataması, vaka kaydı, gerekçeli iptal ve durum geçmişi tutulur

    Nasıl kullanılır?

    1. Detayda Atama/Vaka ekle
    2. İptal için gerekçe (zorunlu) yaz

    İlgili rol: sorumlu hekim

    Sınır: Atamada KVKK notu: yalnız kurumsal irtibat, hasta/kişisel sağlık verisi girilmez (ekran:340)

  • Yasal bilgilendirme (6331 İSG, 2 yılda bir yenileme) Aktif

    Ekranda mevcut yasal çerçeve ve hizmet adımları statik olarak anlatılır

    Nasıl kullanılır?

    1. Ekranın üst bölümündeki bilgilendirme kartlarını oku

    Sınır: Bilgilendirme metni; yeni yasal iddia genişletilmemeli (kod yorumu:12 uyarıyor)

Afet & İş Sürekliliği

Acil durum planı, irtibat rehberi, tatbikat ve hazırlık skoru.

  • Acil durum / is surekliligi plani (deprem, yangin, sel, salgin, kesinti, siber) Aktif

    ASM icin afet turune gore acil durum plani olusturur; baslik, sorumlu, uygulama adimlari, toplanma yeri kaydeder, duzenler ve siler.

    Nasıl kullanılır?

    1. afet.tsx > Plan ekle > tur + baslik + adimlar + toplanma yeri
    2. POST /afet/plan; PATCH/DELETE /afet/plan/:id
    3. PlanDetay ekraninda adimlari/toplanma yerini goruntule-duzenle

    İlgili rol: aile hekimi / ASM aktif uyesi

    Sınır: Ic hazirlik gostergesidir, resmi denetim/uygunluk sonucu degildir (ekran ustBilgi uyarisi); hasta/klinik veri tutulmaz.

  • Acil irtibat rehberi (kurumsal numaralar) Aktif

    112, AFAD, teknik servis gibi kurumsal irtibatlari kategoriyle kaydeder; tel: linki ile arama baslatir.

    Nasıl kullanılır?

    1. Irtibat sekmesi > Irtibat ekle > kurum + kategori + telefon
    2. POST /afet/irtibat; DELETE /afet/irtibat/:id
    3. Kart uzerindeki telefonla Linking.openURL(tel:)

    İlgili rol: ASM aktif uyesi

    Sınır: Numaralar kurumsaldir; kisisel/hasta irtibat degil (ekran uyarisi bunu belirtir).

  • Tatbikat kaydi (tarih, katilimci sayisi, sure, sonuc) Aktif

    Tahliye/yangin/deprem tatbikatini tarih, katilimci sayisi, sure(dk) ve sonuc (basarili/eksik/iptal) ile kaydeder.

    Nasıl kullanılır?

    1. Tatbikat sekmesi > Tatbikat ekle > tur + tarih + katilimci + sure + sonuc
    2. POST /afet/tatbikat; DELETE /afet/tatbikat/:id

    İlgili rol: ASM aktif uyesi

    Sınır: Yalniz katilimci SAYISI tutulur; kisi kimligi/hasta verisi tutulmaz (ekran uyarisi bunu net soyler).

  • Hazirlik gostergesi (0-100 skor + kritik eksik uyarisi) Aktif

    Planlar, tatbikat guncelligi ve irtibat sayisindan 0-100 hazirlik skoru uretir; kritik plan eksigi (deprem/yangin/kesinti) veya 12 aydir guncellenmemis plan uyarisi verir.

    Nasıl kullanılır?

    1. /afet cagrisi ozet dondurur
    2. Skor rengi ve kritik-eksik uyarisi otomatik gosterilir

    İlgili rol: ASM aktif uyesi

    Sınır: Ic gosterge; resmi uygunluk anlamina gelmez.

Personel & Operasyon

undefined özellik

Personel kaydı ve izin, vardiya-görev, olay/DÖF ve ASM yaşam döngüsü ile nakil-devir süreçleri.

Personel Takip

Personel kaydı, izin/rapor bakiyesi, vekil ve istihdam modeli.

  • Personel kaydı + görev/unvan + davet kodu Aktif

    Sorumlu hekim personel ekler, görev/unvan atar, üretilen kodla personel kendi hesabını bağlar

    Nasıl kullanılır?

    1. Personel ekle > ad/soyad/görev gir
    2. 'Ekle ve kod üret'
    3. Personel 'Koda göre katıl' ile bağlanır

    İlgili rol: sorumlu hekim (ekleme) / personel (katılma)

    Sınır: TC opsiyonel ve maskeli gösterilir (tcKimlikMask)

  • İzin/rapor + yıllık izin bakiyesi + vekil Aktif

    İzin/rapor türleriyle kayıt girilir, yıllık hak-kullanılan-kalan bakiyesi hesaplanır, vekil tanımlanır

    Nasıl kullanılır?

    1. 'İzin / rapor gir'
    2. Tür + tarih aralığı + vekil gir
    3. Kaydet

    İlgili rol: personel / sorumlu hekim

    Sınır: Gün sayısı takvim günü üzerinden; resmi bordro/SGK entegrasyonu değil

  • İzin onay/red (sorumlu hekim) Kısmi

    Backend'de izin onaylama/reddetme uçları var; mobil ekranda izin durumu görüntülenir ama onay/red aksiyonu arayüzde sunulmuyor

    Nasıl kullanılır?

    1. (Backend) leaves/:id/onayla|reddet çağrısı
    2. Ekranda yalnızca durum etiketi görülür

    İlgili rol: sorumlu hekim

    Sınır: Onay/red iş akışı mobil arayüzde eksik — API var, UI butonu yok; 'onay akışı' olarak sınırlı sunulmalı

  • İstihdam modeli (firma / mali müşavir) Aktif

    ASM personel istihdam modelini firma üstünde / mali müşavir olarak işaretler

    Nasıl kullanılır?

    1. İstihdam kartında seçenek seç
    2. Otomatik kaydedilir

    İlgili rol: sorumlu hekim

    Sınır: Sadece etiket/tercih kaydı; bordro üretimi değil

Personel Operasyonu

Aylık vardiya/nöbet çizelgesi ve son tarihli görev atama.

  • Vardiya/nöbet çizelgesi + aylık özet Aktif

    Aylık çizelgede personel bazında çalışma/nöbet/izin/rapor günleri atanır ve özetlenir

    Nasıl kullanılır?

    1. Vardiya sekmesi > personele dokun
    2. Gün + tür (tam gün/nöbet/izinli...) ata

    İlgili rol: sorumlu hekim (atama) / personel (görüntüleme)

    Sınır: Vardiya atamasını yalnız sorumlu hekim yapar; başlangıç/bitiş saati opsiyonel

  • Görev atama (öncelik, son tarih, bekliyor/devam/tamam, geciken) Aktif

    Personele görev atanır; öncelik ve son tarihle takip edilir, geciken görevler işaretlenir

    Nasıl kullanılır?

    1. Görevler sekmesi > Görev ekle
    2. Atanan + öncelik + son tarih gir
    3. Durum: bekliyor/devam/tamam

    İlgili rol: sorumlu hekim

    Sınır: Geciken = son tarihi geçmiş ve tamamlanmamış (otomatik)

Olay, Uygunsuzluk & DÖF

Ramak kala/olay bildirimi, düzeltici-önleyici aksiyon ve kapatma.

  • Ramak kala / olay / uygunsuzluk bildirimi (kategori + şiddet) Aktif

    Ramak kala, olay veya uygunsuzluk; kategori ve düşük→kritik şiddetle kayıt açılır

    Nasıl kullanılır?

    1. 'Olay / uygunsuzluk bildir'
    2. Tür + kategori + şiddet + açıklama gir
    3. Bildir

    İlgili rol: herkes (üye) / sorumlu hekim

    Sınır: Yüksek/kritik olaylar ASM ekibine in-app bildirilir (backend service'te tetiklenir)

  • DÖF aksiyonları (düzeltici/önleyici, sorumlu, son tarih, ilerlet) Aktif

    Her olaya düzeltici/önleyici aksiyon eklenir; sorumlu ve son tarihle bekliyor→devam→tamam ilerletilir

    Nasıl kullanılır?

    1. Olay detayında DÖF ekle
    2. Tür + sorumlu + son tarih gir
    3. Noktaya dokunarak durumu ilerlet

    İlgili rol: sorumlu hekim / personel

    Sınır: Geciken aksiyon otomatik işaretlenir

  • Durum akışı + gerekçeli kapatma (kök neden) Aktif

    Olay açık→inceleniyor→aksiyon→kapandı ilerler; kapatırken kök neden/sonuç notu istenir

    Nasıl kullanılır?

    1. Durum butonlarından ilerlet
    2. 'Kapandı' için kapatma notu yaz
    3. Olayı kapat

    İlgili rol: sorumlu hekim

ASM Yaşam Döngüsü (Proje)

Kurulum/taşınma/kapanış projeleri için şablon görev listesi.

  • Kurulum/tasinma/devir/kapanis projesi + hazir sablon gorev listesi Aktif

    Proje turune gore proje acar; istege bagli hazir sablon gorevleri ekler, gorev ekle/tamamla/sil yapar, durum degistirir; ilerleme yuzdesi ve geciken gorev sayisi gosterir.

    Nasıl kullanılır?

    1. proje.tsx > Yeni proje > tur + baslik + hedef tarih + sablon onayi
    2. POST /proje (sablondanOlustur); POST /proje/:id/gorev; PATCH /proje/gorev/:id

    İlgili rol: ASM aktif uyesi

    Sınır: ASM yasam dongusu projeleridir; doktor ASM degisimi ayri Nakil ekranindadir (ekran uyarisi bunu ayirir).

ASM Nakil & Devir-Teslim

Hekimin X→Y geçişinde devir-teslim listesi ve devralma.

  • ASM nakli: devir-teslim listesi, tutanak, tamamlaninca eski uyelik pasif + gecmis korunur Aktif

    Eski→yeni ASM gecisinde standart devir-teslim kalemlerini (gider/demirbas/belge/gorev/karar) isaretler, opsiyonel tutanak notu girer; tum maddeler tamamsa nakli bitirir, eski uyelik status='ayrildi' olur, nakil/gecmis kaydi korunur, kalan uyelere bildirim gider.

    Nasıl kullanılır?

    1. nakil.tsx > Nakil baslat > kaynak ASM + hedef + tarih (standart kalemler otomatik)
    2. POST /nakil; PATCH /nakil/:id/kalem/:id; POST /nakil/:id/tamamla
    3. Son aktif/sorumlu uye kontrolu (ayrilabilirMi) bloklar

    İlgili rol: ayrilan aile hekimi (kaynak ASM aktif uyesi)

    Sınır: Coklu-ASM kurumsal yonetim DEGIL; tek hekimin X→Y gecisi. Son sorumlu hekim once sorumlulugu devretmeli.

  • Devralma: ayrilan hekimin devir-teslimini kalan uye ustlenir Aktif

    Tamamlanmis ve henuz sahipsiz devir-teslimleri 'Devralinabilir' sekmesinde listeler; devralan hekim tutanagi ustlenip kaldigi yerden devam eder.

    Nasıl kullanılır?

    1. Devralinabilir sekmesi > kayit > Devral
    2. GET /nakil/gelenler?asmId=; POST /nakil/:id/devral

    İlgili rol: kaynak ASM'de kalan/gelen aktif uye

    Sınır: Yalniz tamamlanmis, devralinmamis, baskasina ait nakil devralinabilir; kendi naklini devralamaz.

Stok & Cihaz

undefined özellik

SKT/lot takipli stok ve FEFO çıkış, demirbaş garantisi, cihaz bakım-kalibrasyon kayıtları.

Stok, SKT & Demirbaş

Lot/SKT takipli stok, FEFO çıkış, sayım ve demirbaş garantisi.

  • Stok kalemi + lot/parti + SKT takibi Aktif

    Her ürün lot/parti ve son kullanma tarihiyle stoklanır; SKT geçti/yakın durumu renklenir

    Nasıl kullanılır?

    1. Ürün > Giriş
    2. Miktar + SKT (YYYY-AA-GG) + lot gir
    3. Kaydet

    İlgili rol: personel / sorumlu hekim

    Sınır: SKT/lot kullanıcı girişine dayanır; barkod okuma yerine elle giriş

  • FEFO çıkış (SKT en yakın partiden düşme) Aktif

    Çıkış/fire işleminde miktar otomatik olarak son kullanması en yakın partiden düşülür

    Nasıl kullanılır?

    1. Ürün > Çıkış
    2. Miktar + tür (çıkış/fire) gir
    3. Kaydet — düşülen miktar bildirilir

    İlgili rol: personel

  • Kritik stok uyarısı + sayım/fark düzeltme + rapor Aktif

    Kritik eşik altına düşen kalem işaretlenir; fiziksel sayımla parti düzeltilir; genel rapor paylaşılır

    Nasıl kullanılır?

    1. Parti satırında 'Sayım'a dokun
    2. Gerçek miktarı gir
    3. Rapor paylaş

    İlgili rol: sorumlu hekim / personel

    Sınır: Kritik eşiği kullanıcı tanımlar (0 = takip yok)

  • Demirbaş + garanti takibi Aktif

    Demirbaş kaydı; garanti bitiş tarihi geçti/yakın olarak işaretlenir

    Nasıl kullanılır?

    1. Demirbaş sekmesi > Demirbaş ekle
    2. Ad/kategori/durum + garanti bitişi gir

    İlgili rol: sorumlu hekim

    Sınır: Garanti tarihi kullanıcı beyanı

  • Demirbaş periyodik bakım takibi Kısmi

    Demirbaşta yalnızca aktif/arızalı/hurda durumu tutulur

    Nasıl kullanılır?

    1. Demirbaşı düzenle
    2. Durum: Aktif/Arızalı/Hurda seç

    İlgili rol: sorumlu hekim

    Sınır: Planlı bakım tarihi / bakım hatırlatma YOK — sadece anlık durum; 'bakım takibi' olarak pazarlanmamalı

Cihaz Bakım & Kalibrasyon

Cihaz envanteri, periyodik bakım/kalibrasyon ve garanti takibi.

  • Cihaz kaydi (tur, marka/model, seri no, konum, garanti, periyotlar) Aktif

    Buzdolabi/tansiyon/EKG/otoklav vb. cihazi kaydeder; kalibrasyon ve bakim periyodu (ay), garanti bitis tarihi girer, duzenler, siler.

    Nasıl kullanılır?

    1. cihaz.tsx > Cihaz ekle > ad + tur + konum + garanti + periyotlar
    2. POST /cihaz; PATCH/DELETE /cihaz/:id (delete_void=sorumlu)

    İlgili rol: ASM uyesi (create_edit yetkisi)

    Sınır: Periyot/tarihler manuel girilir (IoT/otomatik olcum degil); gosterge amaclidir, resmi kalibrasyon belgesi yerine gecmez (ekran uyarisi).

  • Periyodik bakim/kalibrasyon kaydi ve durum hesaplama (yaklasan/geciken) Aktif

    Bakim/kalibrasyon/ariza/onarim kaydi ekler; son tarihi gunceller, periyoda gore sonraki tarih ve durum (geciken/yaklasiyor/normal) hesaplar; ariza=cihaz arizali, onarim=aktif yapar.

    Nasıl kullanılır?

    1. Cihaz detayi > Bakim/kalibrasyon kaydet > tur + tarih + saglayici + sonuc
    2. POST /cihaz/:id/bakim
    3. Ozet satirinda geciken/yaklasan/arizali/garanti-biten sayaci

    İlgili rol: ASM uyesi (create_edit)

    Sınır: Durum tarih+periyot manuel girisinden hesaplanir; belge yuklemesi opsiyonel (belgeUrl), resmi belge yerine gecmez.

Topluluk & Gelişim

undefined özellik

Eğitim ve sertifika, bilgi merkezi, kurumsal vitrin, anonim kıyaslama, meslektaş ağı ve kura asistanı.

Eğitim & Sertifika

Eğitim modülleri, çoktan seçmeli sınav ve dijital sertifika no.

  • Egitim listesi, bolum tamamlama, coktan secmeli sinav, gecme notu, tekrar Aktif

    Kategori/seviye/sure ile yayindaki egitimleri listeler; bolumleri okuyup tamamlar (ilerleme %); coktan secmeli sinavi cozer, gecme notuna gore gecer/kalir, kalirsa tekrar dener.

    Nasıl kullanılır?

    1. egitim.tsx > egitim > bolumu tamamla > Sinava basla
    2. POST /egitim/:id/bolum/:id/tamamla; POST /egitim/:id/sinav
    3. Dogru cevap indeksleri kullaniciya gonderilmez (guvenlik)

    İlgili rol: aile hekimi / uye

    Sınır: Webinar/canli ders/resmi kredi YOK; sinav backendde degerlendirilir, dogru cevaplar client'a sizmaz.

  • Dijital sertifika no uretimi ve 'Sertifikalarim' Aktif

    Sinav gecilince benzersiz sertifika numarasi (egitimId+userId+tarih turevi) uretir; sertifika sekmesinde ad-soyad, kategori, tarih, puanla listeler.

    Nasıl kullanılır?

    1. Sinavi gec > sertifika no otomatik olusur
    2. GET /egitim/sertifikalarim
    3. Sertifikalarim sekmesinde kartlar

    İlgili rol: aile hekimi

    Sınır: Uygulama-ici dijital belge no'sudur; resmi akreditasyon/kredi (STE vb.) degildir.

Bilgi Merkezi & Blog

Kaynaklı yayınlar; AI taslak üretir, yayın insan onayıyla.

  • Yayinlanmis yazilar, kategori/etiket filtresi, ozet/ayrinti, kaynaklar Aktif

    Yalniz durum='yayinda' yazilari kategoriye gore listeler; detayda markdown icerik, sorumluluk reddi, son kontrol tarihi ve tiklanabilir kaynak linkleri gosterir.

    Nasıl kullanılır?

    1. blog.tsx > kategori filtresi > yazi
    2. GET /blog/posts; GET /blog/posts/:slug (auth:false)

    İlgili rol: tum ziyaretciler (auth:false, herkese acik okuma)

    Sınır: Yalniz yayinlanmis yazilar dis kullaniciya acilir; taslaklar gizli.

  • AI taslak uretir ama yayin YALNIZ insan/admin onayi + QA kapisi ile Aktif

    Gemini arastirmasi taslak yazi uretir (durum=taslak); yayina almak icin admin publishPost cagirir, taslakQa kalite kontrolu gecmezse yayin engellenir; yayindaki yazi once yayindan kaldirilmadan duzenlenemez.

    Nasıl kullanılır?

    1. AI: POST /blog... → runResearch taslak olusturur
    2. Admin: publishPost → QA gecerse durum='yayinda'
    3. QA basarisizsa BadRequestException, yayinlanmaz

    İlgili rol: admin/editor (yayinlayan); AI yalniz taslak

    Sınır: AI OTOMATIK YAYIN DEGIL - insan onayi zorunlu; publishPost QA (qa.gecti) kapisindan gecmeden yayinlanmaz; audit log tutulur.

Kurumsal Vitrin & Kiosk

Herkese açık ASM vitrini, anonim memnuniyet anketi ve sıra sayacı.

  • Kurumsal vitrin yayinlama (saat/hizmet/duyuru/tel/adres) Aktif

    ASM kurumsal bilgilerini yayinlar

    Nasıl kullanılır?

    1. Alanlari doldur
    2. PATCH /vitrin/:asmId
    3. Yayinla

    Sınır: Hasta adi/TC/tani yok; yayin 'publish_public' yetkisi

  • Public salt-okunur vitrin Aktif

    Aktif vitrini girissiz gosterir

    Nasıl kullanılır?

    1. GET public/vitrin/:asmId
    2. aktif degilse 404

    Sınır: Kisisel-olmayan bilgi; rate-limit; hasta verisi yok

  • Anonim memnuniyet anketi (kiosk) Aktif

    Anonim memnuniyet toplar

    Nasıl kullanılır?

    1. Yildiza dokun
    2. POST /vitrin/:asmId/anket

    Sınır: ANONIM: user_id saklanmaz (service:82)

  • Sira sayaci (ileri/geri/sifirla) Aktif

    Anlik cagri numarasi

    Nasıl kullanılır?

    1. +/- bas
    2. POST /vitrin/:asmId/sira

Anonim Kıyaslama

Opt-in kohortta yüzdelik konum; k-anonimlik eşiği korumalı.

  • Opt-in kiyaslama katilimi Aktif

    Anonim havuza katil/ayril

    Nasıl kullanılır?

    1. Katil bas
    2. POST /kiyaslama/:asmId/katilim

    Sınır: Opt-in; katilmayan goremez

  • Saglik skoru/memnuniyet, yuzdelik, konum Aktif

    Kohort icindeki goreli konum

    Nasıl kullanılır?

    1. Kohort toplanir
    2. kiyasla() yuzdelik/konum

    Sınır: Gostergedir; resmi siralama degil

  • K-anonimlik esigi 10 ASM + esik alti gizle Aktif

    10 ASM alti kohort gizli

    Nasıl kullanılır?

    1. n<10 ise null
    2. Kohort gizli gosterilir

    Sınır: Tek ASM/kisi ifsasi engellenir; k-anonimlik

Meslektaş Topluluğu

Kategorili soru-cevap, gruplar, kabul edilen cevap ve moderasyon.

  • Soru sorma (kategori) + listeler Aktif

    Kategori bazli soru sorma

    Nasıl kullanılır?

    1. Baslik+kategori
    2. POST /topluluk/sorular

    Sınır: Grup sorusu uyelik ister; hasta/vaka paylasilmamali

  • Grup olustur/katil/ayril Aktif

    Grup kurma/katilma/moderatorluk

    Nasıl kullanılır?

    1. Ad+kategori
    2. POST /topluluk/gruplar
    3. Katil
  • Cevap, kabul edilen cevap, sil/moderasyon Aktif

    Cevap, kabul, silme, gizleme

    Nasıl kullanılır?

    1. Cevap yaz
    2. Sahibi kabul
    3. Moderator gizler/siler

    Sınır: Kabul yalniz sahip; gizleme yalniz moderator

  • Uzman hekim & moderator rozeti Kısmi

    Moderator ve uzman rozeti

    Nasıl kullanılır?

    1. Moderator rolu uyelikten
    2. Uzman rozeti isFamilyMedicineSpecialist

    Sınır: Uzman bayragi kayitta BEYANLA set; resmi dogrulama yok

Meslektaş Sosyal Ağı

Gönderi/hikaye/video, etkileşim, keşfet ve şikâyet-moderasyon.

  • Profil (avatar/biyo/il), acik/gizli, takip/istek Aktif

    Profil yonetimi, gizli hesap istegi

    Nasıl kullanılır?

    1. PATCH /social/profilim
    2. POST /social/follow/:userId
  • Gonderi: foto/karusel/video/metin Aktif

    Foto/karusel/video/metin paylasimi

    Nasıl kullanılır?

    1. Medya sec
    2. POST /social/posts

    Sınır: Medya JPEG/PNG/WebP/MP4 ile sinirli

  • Hikaye 24s, video akisi, kesfet/arama/hashtag/populer Aktif

    24s hikaye, video, kesfet, hashtag

    Nasıl kullanılır?

    1. Hikaye 24s expiresAt
    2. Cursor sayfalama

    Sınır: Hikaye 24 saat sonra otomatik silinir

  • Begeni/yorum/yanit/yorum-begenisi, kaydet/paylas, DM paylas, kaydedilenler Aktif

    Etkilesim ve DM paylasimi

    Nasıl kullanılır?

    1. Begen/Kaydet
    2. Yorum+yanit
    3. DM ile paylas
  • Sikayet (kullanici/gonderi/yorum/hikaye), engelle, sustur, admin moderasyon Aktif

    Sikayet, engelle, sustur, moderasyon

    Nasıl kullanılır?

    1. POST /social/sikayet/:tur/:id
    2. Engelle/sustur
    3. Admin moderasyon
  • Responsive (mobil alt-nav + genis 3 sutun) Aktif

    Ekrana gore yerlesim

    Nasıl kullanılır?

    1. width>=1100 uc sutun
    2. Aksi tek sutun+alt nav
  • 'Uzman hekim (dogrulanmis)' rozeti Kısmi

    Ad yaninda uzman onay isareti

    Nasıl kullanılır?

    1. Kayitta uzman isaretlenir (beyan)
    2. 'dogrulanmis' check-circle gosterilir

    Sınır: KRITIK: 'dogrulanmis' beyana dayanir; 'resmi dogrulanmis hekim' iddiasi kurulmamali

Özel Mesajlaşma (DM)

Birebir sohbet, okundu bilgisi ve gönderi paylaşımı.

  • Sohbet baslat, liste+okunmamis, metin, okundu, sayfali eski mesaj Aktif

    1:1 mesajlasma, okunmamis, okundu

    Nasıl kullanılır?

    1. POST /social/dm/ac/:userId
    2. POST .../mesajlar
    3. 8sn polling

    Sınır: Gercek-zamanli soket yok; 8sn polling

  • Gonderi DM paylasimi + profil<->sohbet gecisi Aktif

    DM'de gonderi kartini acar

    Nasıl kullanılır?

    1. Gonderi paylas
    2. Karta dokun → ac

Kura & Yerleştirme Asistanı

Tercih sırala, üst sıradakilerin etkisiyle canlı yerleşim tahmini.

  • Aktif donem+resmi belge, kesin listede ara, puanla sira sahiplen Aktif

    Donem/evrak; listeden bulup puanla sahiplen

    Nasıl kullanılır?

    1. Ad ara
    2. Puan dogrula
    3. POST /kura/sahiplen

    Sınır: Puanli adayda dogrulama zorunlu

  • Bos birim+zincir birim, tercih ekle/sirala/kaydet, birak Aktif

    Ilan/zincir birim ekle, sirala, kaydet, birak

    Nasıl kullanılır?

    1. Birim ekle
    2. Sirala
    3. PUT /kura/tercihlerim

    Sınır: Zincir birim sahibi yer degistirirse bosalir (kosullu)

  • Ust siradaki etkisi, tahmini yerlesim, 10sn canli yenileme Aktif

    Ust tercihlere gore durum ve tahmini yerlesim canli

    Nasıl kullanılır?

    1. 10sn GET /kura/analiz
    2. Rakip siralar+durum
    3. Tahmini yerlesim

    Sınır: Yalniz katilimci tercihine dayali TAHMIN; resmi kura DEGIL

Ticari Hizmetler

undefined özellik

Tedarikçi dizini, vekil ilan ağı, sigorta teklif talebi ve hizmet siparişleri. Ödeme adımları simülasyondur.

Tedarikçi & Hizmet Ekosistemi

Kategori/il filtreli tedarikçi dizini, puan ve teklif talebi.

  • Tedarikci dizini (kategori/il filtresi, puan, iletisim, yorum) Aktif

    Kategori (tibbi sarf, atik, kalibrasyon, OSGB...) ve il filtresiyle tedarikci listeler; ortalama puan+yorum gosterir; ara/e-posta/web linki; 1-5 yildiz degerlendirme yapar.

    Nasıl kullanılır?

    1. tedarikci.tsx > kategori cip > tedarikci > Degerlendir
    2. GET /tedarikciler?kategori=; POST /tedarikciler/:id/degerlendir

    İlgili rol: aile hekimi / uye

    Sınır: Dizin admin tarafindan doldurulur (adminKaydet); kullanici tedarikci ekleyemez.

  • Teklif talebi ve talep takibi Aktif

    Secili tedarikciye konu+detay ile teklif talebi gonderir; 'Teklif taleplerim' altinda durumunu (yeni/yanitlandi/kapandi) izler. Admin talepleri gorup durumu manuel gunceller.

    Nasıl kullanılır?

    1. Tedarikci detayi > Teklif iste > konu + detay
    2. POST /tedarikciler/:id/talep; GET /tedarikciler/taleplerim

    İlgili rol: aile hekimi / uye

    Sınır: Grup alimi / uclu eslestirme / gercek odeme / otomatik SLA YOK; talep DB'ye dusen lead, durum manuel guncellenir (admin).

Vekil İlan Ağı

Vekil/geçici ilan aç, başvuru al, kısa liste ve kabul.

  • Vekil/gecici ilan ac, basvuru, kisa liste/kabul/red, iletisim asamali paylasim Aktif

    ASM adina rol (hekim/ASC), tarih, il, gerekli belge ile ilan acar; adaylar mesaj+iletisimle basvurur; yonetici basvurulari yeni/kisa liste/kabul/red yapar; kendi basvurusunu takip eder; ilani kapatir.

    Nasıl kullanılır?

    1. ilan.tsx > Ilan ac; aday: Bu ilana basvur
    2. POST /ilan; POST /ilan/:id/basvur; PATCH /ilan/:id/basvuru/:id
    3. Iletisim yalniz kisa_liste/kabul durumunda yoneticiye acilir

    İlgili rol: ilan acan: sorumlu hekim (publish_public/approve); basvuran: herhangi aile hekimi/personel

    Sınır: Aday iletisim bilgisi YALNIZ kisa liste/kabul asamasinda gorunur (ilan.service.ts:69); acik ilan/tarih gecerliligi filtreli.

Sigorta Teklifi

TSS/hayat/malpraktis/ferdi kaza için teklif talebi (lead).

  • Sigorta urunleri (TSS/hayat/malpraktis/ferdi kaza) icin teklif talebi Aktif

    4 urunu (tamamlayici saglik, hayat, malpraktis, ferdi kaza) faydalariyla gosterir; 'Teklif al' ile talep olusturur; ayni turde acik talep varsa mukerrer olusturmaz (idempotent).

    Nasıl kullanılır?

    1. sigorta.tsx > urun karti > Teklif al
    2. POST /insurance/request { type }
    3. Admin talepleri gorup durum/not gunceller

    İlgili rol: aile hekimi

    Sınır: Police karsilastirma / dijital satin alma YOK - yalniz teklif talebi (lead). Urun listesi frontendde statik; acente donusu manuel. Hero metnindeki 'kiyasla, dijital basvur' ibaresi kodda karsiligi olmayan pazarlama ifadesidir. KVKK: bilgiler yalniz aracilik amaciyla acenteyle paylasilir.

Hizmet Siparişleri

Hizmet siparişi taslağı, durum makinesi ve hareket geçmişi.

  • Siparis taslagi (tedarikci/baslik/tutar/aciklama) Aktif

    Hizmet siparisi taslagi

    Nasıl kullanılır?

    1. Alanlari gir
    2. POST /siparis (taslak)
  • Durum makinesi + hareket gecmisi + iptal/iade Aktif

    Durum gecisleri yetki+gecerlilikle, loglanir

    Nasıl kullanılır?

    1. Sonraki adim bas
    2. POST /siparis/:id/gecis

    Sınır: Gecersiz gecis reddedilir; is anlamina gore yetki

  • Odeme adimi (SIMULASYON) Simülasyon

    'Odendi' gecisini simule eder

    Nasıl kullanılır?

    1. Odeme adimi sec
    2. Onay
    3. Durum 'odendi (simule)'

    Sınır: SIMULASYON: gercek tahsilat yok; odeme saglayici entegrasyonu yok

Hesap & Güvenlik

undefined özellik

Kayıt ve roller, KVKK verilerini indir/sil hakları, abonelik yönetimi ve AI asistan.

Başlangıç, Hesap & ASM

Kayıt, oturum, ASM kurma/katılma, roller ve KVKK hakları.

  • E-posta ile kayit ve giris Aktif

    E-posta+sifre ile hesap acar ve oturum acar; kayitta ad/soyad/il/ilce/uzmanlik + sozlesme onaylari alinir, JWT token doner

    Nasıl kullanılır?

    1. register.tsx formu registerSchema ile dogrular
    2. POST /auth/register veya /auth/login (throttle korumali)
    3. access+refresh token saklanir, dashboard'a yonlenir

    İlgili rol: aile hekimi / personel / uye

  • Sifre sifirlama (unuttum) Aktif

    E-postaya 6 haneli 15 dk gecerli kod gonderir; kod+yeni sifre ile sifirlar, tum oturumlari kapatir

    Nasıl kullanılır?

    1. POST /auth/forgot-password (hesap varligi sizdirilmaz, her durumda ok)
    2. 6 haneli kod + en az 10 karakter yeni sifre
    3. POST /auth/reset-password

    İlgili rol: uye

  • E-posta dogrulama Aktif

    Dogrulanmamis e-postaya 6 haneli kod gonderir, kod girilince e-posta dogrulanir

    Nasıl kullanılır?

    1. Hesap ekraninda 'E-postani dogrula' (yalniz emailVerified=false ise)
    2. POST /auth/send-verify-email
    3. POST /auth/verify-email {code}

    İlgili rol: uye

  • Google / Apple ile giris Kısmi

    Gercek OAuth kodu var (jose ile Google/Apple JWKS imza dogrulamasi); id_token backend'de POST /auth/oauth ile dogrulanir

    Nasıl kullanılır?

    1. Google: expo-auth-session id_token alir
    2. Apple: iOS native AppleAuthentication (web'de yapilandirma gerekli der)
    3. Backend audience'i GOOGLE_CLIENT_ID/APPLE_CLIENT_ID ile dogrular

    İlgili rol: uye

    Sınır: simulasyon/yapilandirma: EXPO_PUBLIC_GOOGLE_CLIENT_ID yalniz eas.json (iOS build) tanimli; backend .env/.env.example'da GOOGLE_CLIENT_ID/APPLE_CLIENT_ID YOK; Apple web yapilandirmasi yok (yalniz iOS native). Butonlar env yoksa 'yapilandirilmamis' uyarisi verir

  • ASM bulma/olusturma (il/ilce) Aktif

    Il/ilce secilir, o ilcedeki mevcut ASM'ler listelenir; yoksa ad/birim/doktor sayisi/bina turu ile yeni ASM olusturulur

    Nasıl kullanılır?

    1. GET /asms/by-location?province&district
    2. Mevcut ASM'ye katilim davet kodu ister (kilit ikonu)
    3. POST /asms ile yeni ASM (yoneticiHekimBenim secimi)

    İlgili rol: aile hekimi / sorumlu hekim

    Sınır: Mevcut ASM'ye dogrudan katilim yok; davet kodu zorunlu

  • Davet kodu ile katilma Aktif

    asm360.app/davet?kod= linkiyle davet dogrulanir (gecerli/suresi dolmus/kullanilmis) ve uye olarak katilinir

    Nasıl kullanılır?

    1. GET /davet/:kod ile davet bilgisi (auth'suz)
    2. Giris/kayit gerekiyorsa yonlendirir
    3. POST /asms/join {invitationCode}

    İlgili rol: uye

  • Doktor/yonetici hekim daveti Aktif

    Sorumlu hekim davet linki/kodu uretir; sahipsiz ASM icin yonetici hekim daveti ayri uretilir, paylas/panoya kopyalar

    Nasıl kullanılır?

    1. POST /asms/:id/invite-link (doktor)
    2. POST /asms/:id/invite-responsible (yonetici)
    3. Share/clipboard ile paylasilir

    İlgili rol: sorumlu hekim

  • Sahipsiz ASM yoneticiligini devralma Aktif

    Yonetici hekimi olmayan ASM'de uye 'Yoneticiligi ben ustleneyim' ile sorumlu hekim olur

    Nasıl kullanılır?

    1. Uye rolunde ve sahipsiz=true ise buton gorunur
    2. POST /asms/:id/claim-responsible
    3. Liste yenilenir, rol responsible olur

    İlgili rol: uye (sahipsiz ASM'de)

  • Rol (sorumlu hekim / uye) Aktif

    memberRole responsible/member olarak gosterilir; sorumluluk devri, uye cikarma, ayrilma uclari mevcut

    Nasıl kullanılır?

    1. /asms/me memberRole doner
    2. Rozet 'Yonetici'/'Uye' gosterir
    3. transfer-responsible / remove / leave uclari

    İlgili rol: sorumlu hekim / uye

  • Profil goruntuleme/duzenleme Aktif

    Ad/soyad/telefon/il/ilce guncellenir; kimlik karti ve iletisim bilgileri gosterilir

    Nasıl kullanılır?

    1. GET /auth/me ile kullanici bilgisi
    2. Duzenle modalinda alanlar
    3. PATCH /auth/profile

    İlgili rol: uye

  • Sifre degistir + tum oturumlari kapat Aktif

    Mevcut+yeni sifre ile degistirir; backend tum oturumlari iptal edip taze token doner (diger cihazlar duser)

    Nasıl kullanılır?

    1. POST /auth/change-password {currentPassword,newPassword}
    2. Yeni token saklanir (aktif oturum korunur)
    3. Ayrica logout-all ucu mevcut

    İlgili rol: uye

  • KVKK verilerimi indir (JSON export) Aktif

    Kisisel verilerin JSON kopyasini olusturur; web'de dosya indirir, mobilde paylasir

    Nasıl kullanılır?

    1. GET /auth/export (throttle)
    2. Web: Blob → .json indirme
    3. Mobil: Share.share

    İlgili rol: uye

    Sınır: KVKK: agregat/kisisel hesap verisi; hasta verisi kapsam disi

  • Hesap silme (KVKK md.11) Aktif

    Sifre dogrulamasi + 'SIL' onayi ile hesap kapatilir; kisisel veriler anonimlestirilir (soft-delete), oturumlar sonlandirilir

    Nasıl kullanılır?

    1. Kutuya 'SIL' yazilir, sifre girilir
    2. POST /auth/delete-account
    3. Token temizlenir, girise duser

    İlgili rol: uye

    Sınır: KVKK: anonimlestirme (soft-delete); bordro dosyalari zaten saklanmaz

  • Ticari elektronik ileti rizasi Aktif

    Kayitta opsiyonel ticari ileti izni alinir; sonradan geri cekilebilir; pazarlama WhatsApp gonderimi bu izne kapili

    Nasıl kullanılır?

    1. Kayit: commercialMessageOptIn
    2. GET /auth/consents / POST consents/withdraw-commercial
    3. notifications.service pazarlamaIzniVar kontrolu

    İlgili rol: uye

    Sınır: IYS/KVKK: yalniz ticari ileti rizasi geri cekilebilir; islemsel mesajlar kapsam disi

  • Abonelik/deneme durumu ve iptal Aktif

    30 gun deneme durumu, kalan gun, aktif/iptal/sureli doldu durumlari sunucu tarafinda hesaplanir; denemede aninda, ucretli planda donem sonunda iptal

    Nasıl kullanılır?

    1. GET /subscription/me + /plans
    2. Durum gorunum (trialing/active/canceled/locked)
    3. POST /subscription/cancel

    İlgili rol: uye

    Sınır: Deneme/iptal/durum gercek; entitlement server-side

  • Online odeme / abonelik aktivasyonu Simülasyon

    Kart ile online odeme YOK; aktivasyon havale/EFT sonrasi destek ekibince manuel yapilir; activate() DEMO, gercek tahsilat yapmaz

    Nasıl kullanılır?

    1. Ekranda 'Online odeme yakinda' + iletisim notu
    2. activate() yalniz admin/webhook'tan cagrilir
    3. Audit metadata demo:true

    İlgili rol: uye

    Sınır: simulasyon: odeme saglayicisi entegrasyonu yok (Faz 8); tahsilat gercek degil

  • Rol bazli baslangic rehberi Kısmi

    24+ modulu gruplayan rehber; secilen role gore modulleri 'Senin icin' yildizlar ve dokununca ilgili ekrana yonlendirir

    Nasıl kullanılır?

    1. Rol secici (aile_hekimi/sorumlu/personel)
    2. Modul karti roller listesine gore onerilir
    3. router.push(modul.yol)

    İlgili rol: aile hekimi / sorumlu hekim / personel

    Sınır: tahmin/manuel: rol istemci tarafinda ELLE secilir, hesabin gercek rolune bagli degil; icerik statik

  • Yardim & SSS ve hukuki metinler Aktif

    Profilden Yardim & Destek, KVKK aydinlatma, gizlilik politikasi ve kullanim kosullari ekranlarina erisim

    Nasıl kullanılır?

    1. Profil > ilgili baglanti
    2. router.push ile statik icerik ekrani

    İlgili rol: uye

    Sınır: Statik bilgilendirme icerigi

  • Tema (acik/koyu) Aktif

    Acik/koyu tema secimi; drawer'daki dugmeyle degistirilir ve cihazda saklanir (asm360.tema)

    Nasıl kullanılır?

    1. ThemeProvider mod light/dark
    2. Drawer 'Tema degistir' → toggle()
    3. AsyncStorage'a persist

    İlgili rol: uye

AI Asistan

Genel & hukuk modlu asistan, mevzuat bağlamı ve PII redaksiyonu.

  • Genel+Hukuk modu, gecmis, geri bildirim Aktif

    Gemini asistan, iki mod, gecmis, up/down

    Nasıl kullanılır?

    1. Mod sec, POST /ai/chat
    2. Gecmise kaydedilir
    3. up/down feedback

    Sınır: Hukuki tavsiye degil; GEMINI_API_KEY gerekli (commit'li .env'de yok); gunluk 50 kota

  • Mevzuat/karar baglami (RAG) Aktif

    Ilgili karar/mevzuat baglama eklenir

    Nasıl kullanılır?

    1. Anahtar kelime cikar
    2. legalDecisions/mevzuatDuyurulari ara

    Sınır: Baglam yoksa uydurmamasi istenir; korpus veriye bagli

  • PII redaksiyonu (TC/tel/email/IBAN) + dilekce taslagi Aktif

    Hassas veriyi maskeler; dilekce taslagi

    Nasıl kullanılır?

    1. redactPII email→IBAN→tel→TC
    2. Maskeli metin Gemini'ye

    Sınır: Hasta verisi yok; dilekce TASLAK; sesli not YOK; resmi kurum entegrasyonu YOK

Tüm bu modüller tek abonelikte

Maaştan denetime her şey açık; 30 gün ücretsiz dene, sonra karar ver. Ayrı paket yok.