The task is to build a payroll app that can generate and display employee monthly payslip, pay employee salary and update records so that are no redundant payments. This app can also display the overall payroll record for the current month.
- Ensure Python 3 is installed.
- Clone this repository:
git clone https:://github.com/farahsamat/payroll.git
On the terminal, run: python -m unittest
We mainly test for the income tax calculation module, ensuring it returns the right figure according to the income brackets.
Run python main_app.py
on CLI.
When the app is run, the app main menu will be displayed on the terminal.
To generate and view employee payslip, choose option 2.
The input is stored in the monthly payroll record. Choose option 1 to view the record.
To pay a salary, choose option 3. User will be asked to enter the respective employee ID
and confirm payment action (Y/N
).
To verify the payment, choose option 1. The pay_status
for Jane Doe
has now been updated to 'paid'
- Ideally we want to have an automatic unique employee ID generator, but for the project demo purposes we generate unique employee IDs manually.
- We would like build the app using a different framework instead of Python.
- We assume there are no typos in salary/super input which could cause error in calculations.