Εφαρμογή desktop για τη διαχείριση γιατρών, ασθενών και ραντεβού, που αναπτύχθηκε για το μάθημα CN5004 Advanced Programming (2025–26).
Γιατροί — Προσθήκη, επεξεργασία και διαγραφή γιατρών. Υποστηρίζει ειδικούς με επιπλέον πεδία. Γιατροί με ενεργά ραντεβού δεν μπορούν να διαγραφούν.
Ασθενείς — Εγγραφή ασθενών με πλήρη στοιχεία, συμπεριλαμβανομένου ιατρικού ιστορικού (αλλεργίες, χρόνιες παθήσεις). Επικύρωση email και τηλεφώνου κατά την εισαγωγή.
Ραντεβού — Προγραμματισμός ραντεβού με επιλογή ασθενή, γιατρού, ημερομηνίας και ώρας. Σήμανση ραντεβού ως ολοκληρωμένων ή ακυρωμένων. Αυτόματη αποτροπή διπλής κράτησης.
Αποθήκευση δεδομένων — Όλα τα δεδομένα αποθηκεύονται σε αρχεία CSV μετά από κάθε αλλαγή και φορτώνονται κατά την εκκίνηση.
- Java 21+
- Apache Maven 3.8+
# Κλωνοποίηση αποθετηρίου
git clone https://github.com/dacrab/ClinicMS.git
cd ClinicMS
# Εκτέλεση εφαρμογής
mvn javafx:runClinicMS/
├── src/main/java/com/clinicms/
│ ├── MainApp.java
│ ├── model/ # Doctor, Specialist, Patient, Appointment
│ ├── service/ # DataStore (πρόσβαση δεδομένων + CSV I/O)
│ ├── controller/ # JavaFX controllers
│ └── util/ # Validator, CsvUtil, IdGenerator
├── src/main/resources/ # FXML views και CSS
├── data/ # doctors.csv, patients.csv, appointments.csv
├── docs/ # Διάγραμμα κλάσεων UML
└── pom.xml
Δημιουργήθηκε για ακαδημαϊκούς σκοπούς στο πλαίσιο του μαθήματος CN5004 Advanced Programming.