From 42f8f568ae3fd561b4fba4cdc3f22fe7ba941777 Mon Sep 17 00:00:00 2001 From: Harkamal Randhawa Date: Sat, 14 Mar 2026 20:12:48 -0600 Subject: [PATCH] use user phone --- .../api/dto/auth/UserInfoResponse.java | 9 +++++++++ .../petshopdesktop/api/dto/user/UserRequest.java | 9 +++++++++ .../petshopdesktop/api/dto/user/UserResponse.java | 9 +++++++++ .../controllers/StaffAccountsController.java | 2 +- .../StaffRegisterDialogController.java | 12 ++++++++++++ 5 files changed, 40 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/example/petshopdesktop/api/dto/auth/UserInfoResponse.java b/src/main/java/org/example/petshopdesktop/api/dto/auth/UserInfoResponse.java index 4fc49442..fe83893c 100644 --- a/src/main/java/org/example/petshopdesktop/api/dto/auth/UserInfoResponse.java +++ b/src/main/java/org/example/petshopdesktop/api/dto/auth/UserInfoResponse.java @@ -5,6 +5,7 @@ public class UserInfoResponse { private String username; private String email; private String fullName; + private String phone; private String avatarUrl; private String role; private Long storeId; @@ -45,6 +46,14 @@ public class UserInfoResponse { this.fullName = fullName; } + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + public String getAvatarUrl() { return avatarUrl; } diff --git a/src/main/java/org/example/petshopdesktop/api/dto/user/UserRequest.java b/src/main/java/org/example/petshopdesktop/api/dto/user/UserRequest.java index 6a1884a8..a6c9f669 100644 --- a/src/main/java/org/example/petshopdesktop/api/dto/user/UserRequest.java +++ b/src/main/java/org/example/petshopdesktop/api/dto/user/UserRequest.java @@ -5,6 +5,7 @@ public class UserRequest { private String password; private String fullName; private String email; + private String phone; private String role; private Boolean active; @@ -43,6 +44,14 @@ public class UserRequest { this.email = email; } + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + public String getRole() { return role; } diff --git a/src/main/java/org/example/petshopdesktop/api/dto/user/UserResponse.java b/src/main/java/org/example/petshopdesktop/api/dto/user/UserResponse.java index 32d997a2..3a42f128 100644 --- a/src/main/java/org/example/petshopdesktop/api/dto/user/UserResponse.java +++ b/src/main/java/org/example/petshopdesktop/api/dto/user/UserResponse.java @@ -7,6 +7,7 @@ public class UserResponse { private String username; private String fullName; private String email; + private String phone; private String role; private Boolean active; private LocalDateTime createdAt; @@ -47,6 +48,14 @@ public class UserResponse { this.email = email; } + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + public String getRole() { return role; } diff --git a/src/main/java/org/example/petshopdesktop/controllers/StaffAccountsController.java b/src/main/java/org/example/petshopdesktop/controllers/StaffAccountsController.java index 59cf5dfb..3788b645 100644 --- a/src/main/java/org/example/petshopdesktop/controllers/StaffAccountsController.java +++ b/src/main/java/org/example/petshopdesktop/controllers/StaffAccountsController.java @@ -143,7 +143,7 @@ public class StaffAccountsController { String firstName = names[0]; String lastName = names[1]; String email = user.getEmail() != null ? user.getEmail() : ""; - String phone = ""; + String phone = user.getPhone() != null ? user.getPhone() : ""; boolean active = user.getActive() != null ? user.getActive() : false; Timestamp createdAt = user.getCreatedAt() != null ? Timestamp.from(user.getCreatedAt().atZone(ZoneId.systemDefault()).toInstant()) diff --git a/src/main/java/org/example/petshopdesktop/controllers/dialogcontrollers/StaffRegisterDialogController.java b/src/main/java/org/example/petshopdesktop/controllers/dialogcontrollers/StaffRegisterDialogController.java index ae0d6600..9b480b96 100644 --- a/src/main/java/org/example/petshopdesktop/controllers/dialogcontrollers/StaffRegisterDialogController.java +++ b/src/main/java/org/example/petshopdesktop/controllers/dialogcontrollers/StaffRegisterDialogController.java @@ -11,6 +11,7 @@ import javafx.scene.control.TextField; import javafx.stage.Stage; import org.example.petshopdesktop.api.dto.user.UserRequest; import org.example.petshopdesktop.api.endpoints.UserApi; +import org.example.petshopdesktop.Validator; import org.example.petshopdesktop.util.ActivityLogger; public class StaffRegisterDialogController { @@ -49,6 +50,7 @@ public class StaffRegisterDialogController { String firstName = value(txtFirstName); String lastName = value(txtLastName); String email = value(txtEmail); + String phone = value(txtPhone); String username = value(txtUsername); String password = txtPassword.getText() == null ? "" : txtPassword.getText(); String confirm = txtPasswordConfirm.getText() == null ? "" : txtPasswordConfirm.getText(); @@ -61,6 +63,15 @@ public class StaffRegisterDialogController { lblError.setText("Email is required."); return; } + if (phone.isBlank()) { + lblError.setText("Phone is required."); + return; + } + String phoneError = Validator.isValidPhoneNumber(phone, "Phone"); + if (!phoneError.isEmpty()) { + lblError.setText(phoneError.trim()); + return; + } if (username.isBlank()) { lblError.setText("Username is required."); return; @@ -83,6 +94,7 @@ public class StaffRegisterDialogController { request.setPassword(password); request.setFullName(firstName + " " + lastName); request.setEmail(email); + request.setPhone(phone); request.setRole("STAFF"); request.setActive(true);