Uploaded by apostolou

Εργασία05

advertisement
Πανεπιστήμιο Δ. Μακεδονίας
Τμήμα Πληροφορικής
Object Oriented Programming Java
Εργασία 5
Ένα σύστημα αεροπορικών κρατήσεων περιλαμβάνει δύο βασικές λειτουργίες. Η πρώτη
λειτουργία σχετίζεται με τη κράτηση μίας θέσης σε μία πτήση, ενώ η δεύτερη λειτουργία
παρέχει στον χρήστη τη δυνατότητα να αναζητήσει και να δει τις πτήσεις στις οποίες έχει
κάνει κράτηση στο παρελθόν.
Να δημιουργήσετε ένα πρόγραμμα το οποίο θα προσφέρει στο χρήστη μέσω Graphical User
Interface υλοποιημένο σε Java Swing τη δυνατότητα να κάνει κρατήσεις αεροπορικών
εισιτηρίων (Εικόνα 1) και να βλέπει τις κρατήσεις που έχει κάνει (Εικόνα 2). Όταν ανοίξει η
εφαρμογή θα ζητάει από το χρήστη αν θέλει να κάνει μία νέα κράτηση ή να κάνει αναζήτηση
στις κρατήσεις που έχει ήδη κάνει. Στην περίπτωση που επιλέξει τη νέα κράτηση θα
εμφανίζεται μία νέα οθόνη όπως φαίνεται στην Εικόνα 1 που θα περιλαμβάνει τα πεδία που
πρέπει να συμπληρώσει προκειμένου να πραγματοποιηθεί η κράτηση. Τα πεδία είναι:







Αεροδρόμιο αναχώρησης. Ένα drop down menu από όπου θα επιλέγει το
αεροδρόμιο.
Αεροδρόμιο προορισμού. Ένα drop down menu από όπου θα επιλέγει το
αεροδρόμιο.
Ημερομηνίες. Ο χρήστης θα συμπληρώνει την ημερομηνία αναχώρησης και
επιστροφής.
Κωδικός πτήσης (αλφαριθμητικό). Ένα drop down menu από όπου θα επιλέγει τον
κωδικό της πτήσης.
Αριθμός επιβατών (ακέραιος αριθμός).
Αριθμός ταυτότητας (αλφαριθμητικό). Ο χρήστης θα δίνει τον αριθμό αστυνομικής
ταυτότητας.
Αριθμός θέσης. Ο χρήστης θα δίνει τον αριθμό της θέσης. Εάν η θέση είναι
κατειλημμένη ή δεν υπάρχει τότε θα εμφανίζεται κατάλληλο μήνυμα.
Στη συνέχεια ο χρήστης καλείται να συμπληρώσει τα στοιχεία των επιβατών. Θα πρέπει να
συμπληρώσει τα στοιχεία για τόσους επιβάτες όσοι και ο αριθμός των επιβατών που έδωσε
προηγουμένως. Τέλος, ο χρήστης πατάει το κουμπί «Book» προκειμένου να
πραγματοποιηθεί η κράτηση. Σε περίπτωση σφάλματος θα πρέπει να εμφανίζεται ανάλογο
μήνυμα. Εάν η κράτηση είναι επιτυχής θα επιστρέφεται ανάλογο μήνυμα το οποίο θα
περιέχει και ένα μοναδικό αριθμό δεκαέξι ψηφίων το οποίο αναγνωρίζει μοναδικά μία
κράτηση. Τα στοιχεία κάθε κράτησης θα πρέπει να αποθηκεύονται σε μία βάση δεδομένων.
Συνεπώς, θα πρέπει να δημιουργήσετε μία βάση δεδομένων (με τη MySQL) στην οποία θα
αποθηκεύονται οι κρατήσεις των επιβατών και τα στοιχεία τους. Επίσης, η βάση δεδομένων
θα διατηρεί τις πτήσεις που διεξάγει η αεροπορική εταιρία και τα αεροδρόμια αναχώρησης
και προορισμού για κάθε μία πτήση. Πιο συγκεκριμένα:


Μία αεροπορική εταιρία διεξάγει πολλές πτήσεις.
Κάθε πτήση έχει ένα αεροδρόμιο αναχώρησης και ένα αεροδρόμιο προορισμού και
πραγματοποιείται μία συγκεκριμένη ημερομηνία. Η πτήση έχει διάρκεια η οποία
εκφράζεται σε ώρες και λεπτά.
Ν. Δημόκας
Σελίδα 1
Πανεπιστήμιο Δ. Μακεδονίας
Τμήμα Πληροφορικής




Object Oriented Programming Java
Μία πτήση έχει πολλές θέσεις.
Κάθε θέση καταλαμβάνεται από έναν επιβάτη.
Ένας επιβάτης κάνει κράτηση για μία θέση μίας πτήσης.
Ένας επιβάτης μπορεί να κάνει πολλές κρατήσεις.
Τέλος ο χρήστης μπορεί να δει τις κρατήσεις επιλέγοντας στην αρχική οθόνη την αναζήτηση
(Εικόνα 2). Σε αυτή τη περίπτωση, ο χρήστης θα πρέπει να εισάγει τον αριθμό αστυνομικής
ταυτότητας και το επίθετο και πατώντας το κουμπί αναζήτηση να του εμφανίζονται τα
στοιχεία όλων των κρατήσεων που έχει κάνει.
Εικόνα 1: Κράτηση εισιτηρίου
Ν. Δημόκας
Σελίδα 2
Πανεπιστήμιο Δ. Μακεδονίας
Τμήμα Πληροφορικής
Object Oriented Programming Java
Εικόνα 2: Οι κρατήσεις μου
Χρήσιμες Πληροφορίες:



Η εργασία είναι ομαδική (2 ατόμων)
Η αντιγραφή ανιχνεύεται και τιμωρείται.

Το όνομα του συμπιεσμένου (zip) αρχείου που θα παραδώσετε θα έχει το παρακάτω
format. Upload θα κάνει μόνο το ένα από τα 2 μέλη της ομάδας.

Επίθετο1_Όνομα1_ΑριθμόςΜητρώου1_ Επίθετο2_Όνομα2_ΑριθμόςΜητρώου2.zip
Θα πρέπει να παραδώσετε:
1. Τον πηγαίο κώδικα σε Java.
2. To .sql αρχείο που θα περιλαμβάνει την υλοποίηση της βάσης δεδομένων και τα
δεδομένα που είναι αποθηκευμένα.
Η εργασία θα πρέπει να παραδοθεί μέχρι τις 21/06/2021 και ώρα 23:59.


Παράδοση μέσω eclass.
Ν. Δημόκας
Σελίδα 3
Download