Tüm isteklerde X-Tenant header’ı zorunludur. İşlemler ve listelemeler sadece belirtilen tenant’a bağlı odalar ile sınırlandırılmıştır.
Endpoint özeti
| Metot | Endpoint | Açıklama |
|---|
GET | /api/v1/rooms | Odaları filtreli olarak listeler |
GET | /api/v1/rooms/{id} | Tek bir odayı detaylı getirir |
POST | /api/v1/rooms | Yeni oda oluşturur |
PUT | /api/v1/rooms/{id} | Odayı kısmi günceller |
DELETE | /api/v1/rooms/{id} | Odayı soft delete eder |
DELETE | /api/v1/rooms/{id}/force | Odayı kalıcı olarak siler |
Tüm parametreler, alanlar ve örnek istek/yanıtlar için API Referansı sekmesine bakın.
Oda kavramı
Oda (Room), klinikte randevuların gerçekleştirildiği veya tedavilerin uygulandığı fiziksel alanları temsil eder. Sistemde bir oda; adı, genel durumu (active, inactive, maintenance) ve randevularla olan ilişkisi üzerinden yönetilir. Randevu süreçleri odaların uygunluk durumlarına göre planlanır.
Silme kuralları
Odaların silinmesi, randevu (Appointment) veri bütünlüğünü korumak adına katı ilişki kurallarına bağlanmıştır.
Soft delete (DELETE /api/v1/rooms/{id})
Oda veritabanından kalıcı olarak silinmez, soft delete edilir.
Katı iş kuralı: Odanın mevcut herhangi bir randevu (appointment) ile ilişkisi varsa silme işlemi reddedilir.Hata mesajı: This room cannot be deleted because it is associated with one or more appointments. Please remove or reassign the room from all appointments before deleting.
Force delete (DELETE /api/v1/rooms/{id}/force)
Oda veritabanından kalıcı olarak silinir.
Geri alınamaz.Katı iş kuralı: Odanın, soft delete edilmiş randevular dahil olmak üzere herhangi bir randevu ile ilişkisi varsa kalıcı silme reddedilir.Hata mesajı: This room cannot be permanently deleted because it is associated with one or more appointments. Please remove or reassign the room from all appointments before deleting.
Yetkilendirme
Uygulama izinleri (permissions)
| İşlem | Permission |
|---|
| Listeleme | ViewAny:Room |
| Detay / Tek gösterme | View:Room |
| Oluşturma | Create:Room |
| Güncelleme | Update:Room |
| Silme (soft delete) | Delete:Room |
| Kalıcı silme (force delete) | ForceDelete:Room |
Token scope’ları (Passport)
| İşlem | Scope |
|---|
Okuma (index, show) | rooms:read |
Yazma (store, update, destroy, forceDelete) | rooms:write |