Notlar (Notes)
Route
/notlar
Sayfanın Amacı
Bir platform modülüyle ilişkili notlar oluşturmak, düzenlemek, silmek, dosya eki eklemek ve hatırlatıcı zamanı atamak.
Sayfada Bulunan Alanlar
- Başlık kartı: "Notlar" başlığı, "Notlarda ara" arama kutusu.
- Arama kutusu boşken: modül seçimi, not metni, opsiyonel hatırlatma tarihi/saati ve dosya eki alanlarından oluşan satır içi (inline) not oluşturma formu.
- Arama metni girildiğinde: eşleşen notların gösterildiği duyarlı, masonry (tuğla dizilimi) kart ızgarası. Her kart: modül etiketi, not metni, oluşturulma tarihi, varsa hatırlatıcı saat ikonu, dosya eki önizlemeleri (resim küçük görseli veya dosya ikonu+adı), "Düzenle" (kalem) ve "Mail Gönder" (zarf) ikon butonları.
Kullanıcı İşlemleri
- Arama kutusuna yazarak notlarda arama yapma.
- (Arama boşken) yeni not oluşturma: modül seçme, metin girme, opsiyonel hatırlatma tarihi/saati ekleme, dosya eki yükleme.
- Bir not kartında "Düzenle" ikonuna tıklayarak notu güncelleme veya onaylı şekilde silme.
- Bir not kartında "Mail Gönder" ikonuna tıklayarak notu e-posta ile paylaşma (bkz. Mail Box).
- Dosya eki küçük görseline/adına tıklayarak eki yeni sekmede açma.
Kullanılan Veriler
- Not listesi (id, modül, metin, oluşturulma/güncellenme tarihi, ekler) ve bu notlara ait hatırlatıcı kayıtları — birlikte getirilir, 30 saniyede bir otomatik güncellenir.
- Modül listesi (not oluştururken modül seçimi için).
Yetki ve Görünürlük
user rolündeki kullanıcılar bu sayfaya erişemez — doğrudan adresle girilse bile RequirePlatformAccess koruması devreye girer ve sayfa render edilmeden /platform'a yönlendirilir. Diğer tüm oturumlu kullanıcılar tam erişime sahiptir.
Kullanılan Bileşenler
dashboard/src/components/notes/index.tsx— sayfa bileşeni (arama, satır içi oluşturma formu, masonry kart ızgarası).dashboard/src/components/notes/NoteFormModal.tsx— oluşturma (satır içi mod) ve düzenleme (modal mod) formu; dosya eki yükleme ilerlemesi burada gösterilir.dashboard/src/components/notes/NoteMailModal.tsx— notu e-posta ile gönderme formu.
API İletişimi
| İşlem | Metot | Endpoint | Kullanım amacı |
|---|---|---|---|
| Not listesini getirme | GET | /iqv_notlar_listele |
Notları listeleme |
| Not oluşturma | POST | /iqv_not_ekle |
Yeni not ekleme |
| Not güncelleme | PUT | /iqv_not_guncelle |
Mevcut notu güncelleme |
| Not silme | DELETE | /iqv_not_sil |
Notu silme |
| Dosya eki yükleme | POST | /fileAddd |
Not ekini MinIO tabanlı dosya sunucusuna yükleme |
| Modül listesini getirme | GET | /iqv_platform_modulleri |
Not formunda modül seçimi için |
Hatırlatıcı uç noktaları için bkz. API Dokümantasyonu › Notlar ve Hatırlatıcılar.
Durum Yönetimi
- Not + hatırlatıcı listesi ve arama metni: yerel React state, servis katmanındaki periyodik (
usePolling) getirme ile beslenir. - Dosya ekleri: yükleme öncesi istemci tarafında base64 veri URL'sine çevrilir, yükleme sonrası kalıcı MinIO adresine dönüştürülür.
- Oturum/rol bilgisi: Redux
adminslice.