RSUD Dr. R. Sosodoro Djatikoesoemo | Native PHP Application
classDiagram
direction LR
class Users {
+int user_id PK
+varchar username UNIQUE
+varchar password
+varchar nama
+enum role
+varchar unit_kerja
+timestamp created_at
+timestamp updated_at
──────────────────
+login()
+logout()
+buatTiket()
+konfirmasiTiket()
+ubahProfil()
+ubahPassword()
}
class Categories {
+int kategori_id PK
+varchar nama_kategori
──────────────────
+tambah()
+ubah()
+hapus()
}
class Tickets {
+int tiket_id PK
+int user_id FK
+int kategori_id FK
+int teknisi_id FK
+int admin_id FK
+varchar judul
+text deskripsi
+varchar lokasi
+varchar foto_bukti
+text catatan_teknisi
+text penjelasan_kerusakan
+varchar foto_penyelesaian
+enum status
+text alasan_tolak
+datetime tanggal_buat
+datetime tanggal_selesai
+datetime tanggal_update
──────────────────
+simpanTiket()
+ubahStatus()
+assignTeknisi()
+ambilTiket()
+konfirmasiTiket()
}
class Ticket_logs {
+int log_id PK
+int tiket_id FK
+int user_id FK
+varchar aksi
+varchar status_lama
+varchar status_baru
+text keterangan
+timestamp created_at
──────────────────
+simpanLog()
}
Users "1" --> "*" Tickets : pelapor\n(user_id)
Users "1" --> "*" Tickets : teknisi\n(teknisi_id)
Users "1" --> "*" Tickets : admin\n(admin_id)
Categories "1" --> "*" Tickets : kategori\n(kategori_id)
Tickets "1" --> "*" Ticket_logs : riwayat\n(tiket_id)
Users "1" --> "*" Ticket_logs : aktor\n(user_id)