How snehithraj-1/employee-payroll-management works
This is a JavaFX employee-payroll desktop application backed by MySQL. Users manage employee records, run monthly payroll to generate payslips, and view or export payroll reports. The graph covers the startup wiring and principal UI/service/model/persistence path, plus report generation. Several UI and DAO implementations are only represented by source-index references; their detailed internal calls are therefore not expanded beyond relationships shown by those references or excerpts.
Main entry points: App.java Application startup · EmployeeTab.java Employee management · PayrollService.java Payroll service · Employee.java Employee pay models
Components 22
Desktop UI
- Application startup
payroll/src/main/java/com/payroll/App.java - Employee management
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Employee editor
payroll/src/main/java/com/payroll/ui/EmployeeFormDialog.java - Payroll screen
payroll/src/main/java/com/payroll/ui/PayrollTab.java - Reports screen
payroll/src/main/java/com/payroll/ui/ReportsTab.java - Alerts and dialogs
payroll/src/main/java/com/payroll/ui/Alerts.java - Async UI tasks
payroll/src/main/java/com/payroll/ui/Async.java
Payroll Domain
- Payroll service
payroll/src/main/java/com/payroll/service/PayrollService.java - Employee pay models
payroll/src/main/java/com/payroll/model/Employee.java - Employee categories
payroll/src/main/java/com/payroll/model/EmployeeType.java - Pay details
payroll/src/main/java/com/payroll/model/PayDetails.java - Payslip model
payroll/src/main/java/com/payroll/model/Payslip.java - Input validation
payroll/src/main/java/com/payroll/util/InputValidator.java - Money calculations
payroll/src/main/java/com/payroll/util/Money.java - Tax rules
payroll/src/main/java/com/payroll/util/TaxRules.java
Persistence
- Employee data access
payroll/src/main/java/com/payroll/dao/EmployeeDAOImpl.java - Payslip data access
payroll/src/main/java/com/payroll/dao/PayslipDAO.java - Database connection
payroll/src/main/java/com/payroll/dao/DBConnection.java - MySQL database
Reports and Export
- Report generation
payroll/src/main/java/com/payroll/report/ReportGenerator.java - CSV or text file
Other components
- Payroll operator
Connections 35
- Payroll operator → Application startup: starts
payroll/src/main/java/com/payroll/App.java - Application startup → Database connection: tests connection
payroll/src/main/java/com/payroll/App.java - Application startup → Payroll service: creates
payroll/src/main/java/com/payroll/App.java - Application startup → Employee management: opens
payroll/src/main/java/com/payroll/App.java - Application startup → Payroll screen: opens
payroll/src/main/java/com/payroll/App.java - Application startup → Reports screen: opens
payroll/src/main/java/com/payroll/App.java - Payroll operator → Employee management: manages employees
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Employee management → Employee editor: opens editor
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Employee management → Payroll service: requests employee actions
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Employee editor → Employee pay models: creates employee
payroll/src/main/java/com/payroll/ui/EmployeeFormDialog.java - Employee management → Async UI tasks: runs tasks
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Payroll screen → Payroll service: runs payroll
payroll/src/main/java/com/payroll/ui/PayrollTab.java - Payroll screen → Async UI tasks: runs tasks
payroll/src/main/java/com/payroll/ui/PayrollTab.java - Reports screen → Payroll service: loads report data
payroll/src/main/java/com/payroll/ui/ReportsTab.java - Reports screen → Async UI tasks: runs tasks
payroll/src/main/java/com/payroll/ui/ReportsTab.java - Application startup → Reports screen: refreshes on selection
payroll/src/main/java/com/payroll/App.java - Employee management → Alerts and dialogs: reports errors
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Payroll screen → Alerts and dialogs: reports errors
payroll/src/main/java/com/payroll/ui/PayrollTab.java - Reports screen → Alerts and dialogs: reports errors
payroll/src/main/java/com/payroll/ui/ReportsTab.java - Payroll service → Employee data access: delegates employee data
payroll/src/main/java/com/payroll/service/PayrollService.java - Payroll service → Payslip data access: saves and loads slips
payroll/src/main/java/com/payroll/service/PayrollService.java - Payroll service → Employee pay models: validates and calculates
payroll/src/main/java/com/payroll/service/PayrollService.java - Employee pay models → Input validation: checks input
payroll/src/main/java/com/payroll/model/Employee.java - Employee pay models → Money calculations: rounds amounts
payroll/src/main/java/com/payroll/model/Employee.java - Employee categories → Employee pay models: categorizes
payroll/src/main/java/com/payroll/model/EmployeeType.java - Employee pay models → Payslip model: generates
payroll/src/main/java/com/payroll/model/Employee.java - Employee data access → Database connection: uses connection
payroll/src/main/java/com/payroll/dao/EmployeeDAOImpl.java - Payslip data access → Database connection: uses connection
payroll/src/main/java/com/payroll/dao/PayslipDAO.java - Database connection → MySQL database: connects
- Payroll screen → Report generation: formats payslips
payroll/src/main/java/com/payroll/ui/PayrollTab.java - Employee management → Report generation: formats summaries
payroll/src/main/java/com/payroll/ui/EmployeeTab.java - Reports screen → Report generation: generates reports
payroll/src/main/java/com/payroll/ui/ReportsTab.java - Report generation → CSV or text file: exports text or CSV
payroll/src/main/java/com/payroll/report/ReportGenerator.java - Tax rules → Money calculations: uses calculations
payroll/src/main/java/com/payroll/util/TaxRules.java - Pay details → Employee pay models: describes pay data
payroll/src/main/java/com/payroll/model/PayDetails.java