Package com.esprit.controllers.users
Class ModernAdminDashboardController
java.lang.Object
com.esprit.controllers.base.BaseController<User>
com.esprit.controllers.users.ModernAdminDashboardController
Modern enhanced AdminDashboardController using generic base functionality
Significantly reduced boilerplate code while adding modern UI elements
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate javafx.scene.control.TextField
private javafx.scene.control.DatePicker
private javafx.scene.control.TableColumn<User,
javafx.scene.control.DatePicker> private javafx.scene.control.TableColumn<User,
javafx.scene.control.Button> private javafx.scene.control.TextField
private javafx.scene.control.TextField
private javafx.scene.control.TextField
private javafx.scene.control.TextField
private javafx.scene.control.TextField
private javafx.scene.control.TextField
private javafx.scene.control.TableColumn<User,
javafx.scene.layout.HBox> private javafx.scene.image.ImageView
private javafx.scene.control.ComboBox<String>
private final UserService
Fields inherited from class com.esprit.controllers.base.BaseController
filteredItems, imageView, items, logger, searchTextField, sortedItems, tableView, validator
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
Apply modern UI styling and animationsprotected void
Clear all form fieldsprivate void
Create modern action buttonscreateSearchPredicate
(String searchText) Create search predicate for filteringprotected void
deleteItem
(User user) Delete itemvoid
Generate PDF report with modern stylingprotected void
Initialize the controller with common setupprotected void
loadData()
Load data into the tableprivate void
populateForm
(User user) Populate form with user data for editingprotected void
saveItem()
Save/Create new itemprotected void
Setup cell edit commit handlersprotected void
Setup cell factories for table columnsprotected void
Setup cell value factories for table columnsprivate void
Setup role ComboBox with predefined valuesprotected void
Setup table columns - to be implemented by subclassesprotected void
Setup validation for form fieldsvoid
signOut
(javafx.event.ActionEvent event) Sign out with modern animationvoid
Toggle between light and dark themesprotected void
updateItem
(User user) Update existing itemprotected boolean
Validate form fields before save/updateMethods inherited from class com.esprit.controllers.base.BaseController
addValidationListener, createDeleteColumn, createTextFieldCellFactory, getSelectedItem, importImage, refreshTable, selectItem, setupSearch, setupTableView, showConfirmationDialog, showErrorAlert, showInfoAlert
-
Field Details
-
roleTableColumn
-
photoTableColumn
-
lastNameTableColumn
-
passwordTableColumn
-
phoneTableColumn
-
firstNameTableColumn
-
birthDateTableColumn
-
addressTableColumn
-
emailTableColumn
-
deleteTableColumn
-
addressTextField
private javafx.scene.control.TextField addressTextField -
birthDatePicker
private javafx.scene.control.DatePicker birthDatePicker -
emailTextField
private javafx.scene.control.TextField emailTextField -
idTextField
private javafx.scene.control.TextField idTextField -
firstNameTextField
private javafx.scene.control.TextField firstNameTextField -
phoneTextField
private javafx.scene.control.TextField phoneTextField -
passwordTextField
private javafx.scene.control.TextField passwordTextField -
profileImageView
private javafx.scene.image.ImageView profileImageView -
lastNameTextField
private javafx.scene.control.TextField lastNameTextField -
roleComboBox
-
userService
-
-
Constructor Details
-
ModernAdminDashboardController
public ModernAdminDashboardController()
-
-
Method Details
-
initialize
protected void initialize()Description copied from class:BaseController
Initialize the controller with common setup- Overrides:
initialize
in classBaseController<User>
-
applyModernStyling
private void applyModernStyling()Apply modern UI styling and animations -
setupRoleComboBox
private void setupRoleComboBox()Setup role ComboBox with predefined values -
setupValidation
protected void setupValidation()Description copied from class:BaseController
Setup validation for form fields- Specified by:
setupValidation
in classBaseController<User>
-
setupTableColumns
protected void setupTableColumns()Description copied from class:BaseController
Setup table columns - to be implemented by subclasses- Specified by:
setupTableColumns
in classBaseController<User>
-
setupCellFactories
protected void setupCellFactories()Description copied from class:BaseController
Setup cell factories for table columns- Specified by:
setupCellFactories
in classBaseController<User>
-
setupCellValueFactories
protected void setupCellValueFactories()Description copied from class:BaseController
Setup cell value factories for table columns- Specified by:
setupCellValueFactories
in classBaseController<User>
-
setupCellEditCommit
protected void setupCellEditCommit()Description copied from class:BaseController
Setup cell edit commit handlers- Specified by:
setupCellEditCommit
in classBaseController<User>
-
createSearchPredicate
Description copied from class:BaseController
Create search predicate for filtering- Specified by:
createSearchPredicate
in classBaseController<User>
-
loadData
protected void loadData()Description copied from class:BaseController
Load data into the table- Specified by:
loadData
in classBaseController<User>
-
clearFields
protected void clearFields()Description copied from class:BaseController
Clear all form fields- Specified by:
clearFields
in classBaseController<User>
-
saveItem
protected void saveItem()Description copied from class:BaseController
Save/Create new item- Specified by:
saveItem
in classBaseController<User>
-
updateItem
Description copied from class:BaseController
Update existing item- Specified by:
updateItem
in classBaseController<User>
-
deleteItem
Description copied from class:BaseController
Delete item- Specified by:
deleteItem
in classBaseController<User>
-
validateForm
protected boolean validateForm()Description copied from class:BaseController
Validate form fields before save/update- Specified by:
validateForm
in classBaseController<User>
-
generatePDF
public void generatePDF()Generate PDF report with modern styling -
signOut
public void signOut(javafx.event.ActionEvent event) Sign out with modern animation -
toggleTheme
public void toggleTheme()Toggle between light and dark themes -
createModernButtons
private void createModernButtons()Create modern action buttons -
populateForm
Populate form with user data for editing
-