From c3ed8b09216c87f310a214f0af64f6cdbd8b862c Mon Sep 17 00:00:00 2001 From: Nikitha Date: Mon, 23 Feb 2026 16:10:51 -0700 Subject: [PATCH] Customer liked with appointment table --- .../petshopdesktop/database/CustomerDB.java | 43 +++++++++++ .../petshopdesktop/models/Customer.java | 75 +++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 src/main/java/org/example/petshopdesktop/database/CustomerDB.java create mode 100644 src/main/java/org/example/petshopdesktop/models/Customer.java diff --git a/src/main/java/org/example/petshopdesktop/database/CustomerDB.java b/src/main/java/org/example/petshopdesktop/database/CustomerDB.java new file mode 100644 index 00000000..abe47004 --- /dev/null +++ b/src/main/java/org/example/petshopdesktop/database/CustomerDB.java @@ -0,0 +1,43 @@ +package org.example.petshopdesktop.database; + +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import org.example.petshopdesktop.models.Customer; + +import java.sql.*; + +public class CustomerDB { + + // + // GET ALL CUSTOMERS + // + public static ObservableList getCustomers() + throws SQLException { + + ObservableList list = + FXCollections.observableArrayList(); + + Connection conn = ConnectionDB.getConnection(); + + String sql = "SELECT * FROM customer"; + + Statement stmt = conn.createStatement(); + ResultSet rs = stmt.executeQuery(sql); + + while(rs.next()) { + + Customer c = new Customer( + rs.getInt("customerId"), + rs.getString("firstName"), + rs.getString("lastName"), + rs.getString("email"), + rs.getString("phone") + ); + + list.add(c); + } + + conn.close(); + return list; + } +} \ No newline at end of file diff --git a/src/main/java/org/example/petshopdesktop/models/Customer.java b/src/main/java/org/example/petshopdesktop/models/Customer.java new file mode 100644 index 00000000..657bcfd9 --- /dev/null +++ b/src/main/java/org/example/petshopdesktop/models/Customer.java @@ -0,0 +1,75 @@ +package org.example.petshopdesktop.models; + +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; + +public class Customer { + + private SimpleIntegerProperty customerId; + private SimpleStringProperty firstName; + private SimpleStringProperty lastName; + private SimpleStringProperty email; + private SimpleStringProperty phone; + + // Constructor + public Customer(int customerId, + String firstName, + String lastName, + String email, + String phone) { + + this.customerId = new SimpleIntegerProperty(customerId); + this.firstName = new SimpleStringProperty(firstName); + this.lastName = new SimpleStringProperty(lastName); + this.email = new SimpleStringProperty(email); + this.phone = new SimpleStringProperty(phone); + } + + // Getters + public int getCustomerId() { + return customerId.get(); + } + + public String getFirstName() { + return firstName.get(); + } + + public String getLastName() { + return lastName.get(); + } + + public String getEmail() { + return email.get(); + } + + public String getPhone() { + return phone.get(); + } + + // Properties (optional but useful later) + public SimpleIntegerProperty customerIdProperty() { + return customerId; + } + + public SimpleStringProperty firstNameProperty() { + return firstName; + } + + public SimpleStringProperty lastNameProperty() { + return lastName; + } + + public SimpleStringProperty emailProperty() { + return email; + } + + public SimpleStringProperty phoneProperty() { + return phone; + } + + // This controls how customer appears in ComboBox + @Override + public String toString() { + return getFirstName() + " " + getLastName(); + } +} \ No newline at end of file