PayXpert is a comprehensive Payroll Management System implemented in Java. It is designed to handle Employee Management, Payroll Processing, Tax Calculation, and Financial Reporting. The application follows object-oriented principles, utilizes SQL for data storage, and provides a menu-driven interface for users.
- src
- entity/model
- Employee.java
- Payroll.java
- Tax.java
- FinancialRecord.java
- dao
- IEmployeeService.java
- EmployeeService.java
- IPayrollService.java
- PayrollService.java
- ITaxService.java
- TaxService.java
- IFinancialRecordService.java
- FinancialRecordService.java
- DatabaseContext.java
- exception
- EmployeeNotFoundException.java
- PayrollGenerationException.java
- TaxCalculationException.java
- FinancialRecordException.java
- InvalidInputException.java
- DatabaseConnectionException.java
- util
- DBPropertyUtil.java
- DBConnUtil.java
- main
- MainModule.java
- tests
- CalculateGrossSalaryTest.java
- CalculateNetSalaryTest.java
- VerifyTaxCalculationTest.java
- ProcessPayrollTest.java
- VerifyErrorHandlingTest.java
- entity/model
- Properties: EmployeeID, FirstName, LastName, DateOfBirth, Gender, Email, PhoneNumber, Address, Position, JoiningDate, TerminationDate
- Methods: CalculateAge()
- Properties: PayrollID, EmployeeID, PayPeriodStartDate, PayPeriodEndDate, BasicSalary, OvertimePay, Deductions, NetSalary
- Properties: TaxID, EmployeeID, TaxYear, TaxableIncome, TaxAmount
- Properties: RecordID, EmployeeID, RecordDate, Description, Amount, RecordType
- Methods: GetEmployeeById, GetAllEmployees, AddEmployee, UpdateEmployee, RemoveEmployee
- Methods: GeneratePayroll, GetPayrollById, GetPayrollsForEmployee, GetPayrollsForPeriod
- Methods: CalculateTax, GetTaxById, GetTaxesForEmployee, GetTaxesForYear
- Methods: AddFinancialRecord, GetFinancialRecordById, GetFinancialRecordsForEmployee, GetFinancialRecordsForDate
- Create a connection string using DBPropertyUtil.
- Use DBConnUtil to establish a connection to the SQL Server database.
- SqlCommand class is used to execute SQL queries.
- EmployeeNotFoundException
- PayrollGenerationException
- TaxCalculationException
- FinancialRecordException
- InvalidInputException
- DatabaseConnectionException
- NUnit tests are provided to ensure the correctness and reliability of the system.
- Test cases include calculating gross salary, net salary after deductions, verifying tax calculation for high-income employees, processing payroll for multiple employees, and handling invalid input data gracefully.
- Compile the Java files.
- Run MainModule.java.
- Follow the menu-driven interface to demonstrate various functionalities.
- Java 8 or higher
- SQL Server
- Your Name
- Any other contributors