From b20042106700d4d4e34930b8b459d5ac28379cd3 Mon Sep 17 00:00:00 2001 From: Kathify Date: Thu, 18 Dec 2025 13:47:06 +0100 Subject: [PATCH 1/4] entity validation Customer --- src/main/java/backend/entities/Customer.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/main/java/backend/entities/Customer.java b/src/main/java/backend/entities/Customer.java index b09f088a..5e309538 100644 --- a/src/main/java/backend/entities/Customer.java +++ b/src/main/java/backend/entities/Customer.java @@ -11,8 +11,6 @@ public class Customer { private String firstName; private String lastName; - - @Column(unique = true, nullable = false) private String phoneNumber; private String email; @@ -72,5 +70,4 @@ public String toString() { ", email='" + email + '\'' + '}'; } - } From 89dc2a82b4118fb8a24c88db7d14d0322c666a86 Mon Sep 17 00:00:00 2001 From: Kathify Date: Wed, 14 Jan 2026 21:44:14 +0100 Subject: [PATCH 2/4] bookingconfirmed --- .../controller/BookingController.java | 67 +++++++++++-------- 1 file changed, 40 insertions(+), 27 deletions(-) diff --git a/src/main/java/frontend/controller/BookingController.java b/src/main/java/frontend/controller/BookingController.java index 945f403f..759577a3 100644 --- a/src/main/java/frontend/controller/BookingController.java +++ b/src/main/java/frontend/controller/BookingController.java @@ -24,59 +24,72 @@ public class BookingController { @FXML private DatePicker datePicker; @FXML private ComboBox startTimeBox; - @FXML private Label statusLabel; @FXML private void initialize() { - - guestsSpinner.setValueFactory( - new SpinnerValueFactory.IntegerSpinnerValueFactory(1, 8, 2) - ); - + guestsSpinner.setValueFactory(new SpinnerValueFactory.IntegerSpinnerValueFactory(1, 8, 2)); for (int h = 12; h <= 20; h++) { startTimeBox.getItems().add(LocalTime.of(h, 0)); -// startTimeBox.getItems().add(LocalTime.of(h, 15)); -// startTimeBox.getItems().add(LocalTime.of(h, 30)); } } - @FXML private void BookTable() { try { LocalDate date = datePicker.getValue(); LocalTime startTime = startTimeBox.getValue(); - if (date == null || startTime == null) { - statusLabel.setText("Please select date and time"); + if (firstNameField.getText().isEmpty() || lastNameField.getText().isEmpty() || + date == null || startTime == null) { + statusLabel.setText("Please fill in all required fields"); + statusLabel.setStyle("-fx-text-fill: red;"); return; } LocalTime endTime = startTime.plusHours(2); Booking booking = bookingService.bookTable( - restaurant, - firstNameField.getText(), - lastNameField.getText(), - emailField.getText(), - phoneField.getText(), - guestsSpinner.getValue(), - startTime, - endTime, - date + restaurant, + firstNameField.getText(), + lastNameField.getText(), + emailField.getText(), + phoneField.getText(), + guestsSpinner.getValue(), + startTime, + endTime, + date ); - statusLabel.setText( - "Booking confirmed! ID: " + booking.getId() + statusLabel.setText("Booking confirmed! ID: " + booking.getId()); + statusLabel.setStyle("-fx-text-fill: green;"); + + Alert alert = new Alert(Alert.AlertType.INFORMATION); + alert.setTitle("Booking confirmed"); + alert.setHeaderText(null); + alert.setContentText( + "Booking confirmed for " + firstNameField.getText() + " " + lastNameField.getText() + "\n" + + "Restaurant: " + restaurant.getName() + "\n" + + "Date & Time: " + date + " at " + startTime + "\n" + + "Guests: " + guestsSpinner.getValue() ); + DialogPane dialogPane = alert.getDialogPane(); + dialogPane.lookup(".content.label").setStyle("-fx-text-fill: #CF6720; -fx-font-weight: bold; -fx-font-family: 'Agency FB'; -fx-font-size: 16px;" + ); + + alert.showAndWait(); + + firstNameField.clear(); + lastNameField.clear(); + phoneField.clear(); + emailField.clear(); + guestsSpinner.getValueFactory().setValue(1); + datePicker.setValue(null); + startTimeBox.getSelectionModel().clearSelection(); } catch (Exception e) { statusLabel.setText(e.getMessage()); + statusLabel.setStyle("-fx-text-fill: red;"); } } - -// public void setRestaurant(Restaurant restaurant) { -// this.restaurant = restaurant; -// } -} +} \ No newline at end of file From ef7d6bd5bfb6a7a1784d4b157ccb458097362813 Mon Sep 17 00:00:00 2001 From: Kathify Date: Wed, 14 Jan 2026 21:53:39 +0100 Subject: [PATCH 3/4] bookingconfirmed --- src/main/java/frontend/controller/BookingController.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/frontend/controller/BookingController.java b/src/main/java/frontend/controller/BookingController.java index 759577a3..6d93bed9 100644 --- a/src/main/java/frontend/controller/BookingController.java +++ b/src/main/java/frontend/controller/BookingController.java @@ -73,9 +73,12 @@ private void BookTable() { "Date & Time: " + date + " at " + startTime + "\n" + "Guests: " + guestsSpinner.getValue() ); + DialogPane dialogPane = alert.getDialogPane(); - dialogPane.lookup(".content.label").setStyle("-fx-text-fill: #CF6720; -fx-font-weight: bold; -fx-font-family: 'Agency FB'; -fx-font-size: 16px;" - ); + var contentLabel = dialogPane.lookup(".content.label"); + if (contentLabel != null) { + contentLabel.setStyle("-fx-text-fill: #CF6720; -fx-font-weight: bold; -fx-font-family: 'Agency FB'; -fx-font-size: 16px;"); + } alert.showAndWait(); From 9964c3056a9d40fa65a9e75dcaf6c64aa37e7380 Mon Sep 17 00:00:00 2001 From: Kathrin Trinh Date: Wed, 14 Jan 2026 22:02:44 +0100 Subject: [PATCH 4/4] Delete src/main/java/backend/entities/Customer.java --- src/main/java/backend/entities/Customer.java | 73 -------------------- 1 file changed, 73 deletions(-) delete mode 100644 src/main/java/backend/entities/Customer.java diff --git a/src/main/java/backend/entities/Customer.java b/src/main/java/backend/entities/Customer.java deleted file mode 100644 index 5e309538..00000000 --- a/src/main/java/backend/entities/Customer.java +++ /dev/null @@ -1,73 +0,0 @@ -package backend.entities; - -import jakarta.persistence.*; - -@Entity -public class Customer { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - private Long customerId; - - private String firstName; - private String lastName; - private String phoneNumber; - private String email; - - public Customer() { - } - - public Customer(String firstName, String lastName, String phoneNumber, String email) { - this.firstName = firstName; - this.lastName = lastName; - this.phoneNumber = phoneNumber; - this.email = email; - } - - public Long getCustomerId() { - return customerId; - } - - public String getFirstName() { - return firstName; - } - - public void setFirstName(String firstName) { - this.firstName = firstName; - } - - public String getLastName() { - return lastName; - } - - public void setLastName(String lastName) { - this.lastName = lastName; - } - - public String getPhoneNumber() { - return phoneNumber; - } - - public void setPhoneNumber(String phoneNumber) { - this.phoneNumber = phoneNumber; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - @Override - public String toString() { - return "Customer{" + - "customerId=" + customerId + - ", firstName='" + firstName + '\'' + - ", lastName='" + lastName + '\'' + - ", phoneNumber='" + phoneNumber + '\'' + - ", email='" + email + '\'' + - '}'; - } -}