Skip to content

Manu3lde/Payroll-Management-System

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Payroll Management System

A collaborative C++ project to develop a comprehensive Payroll Management System that calculates weekly pay for employees based on their employment type, generates detailed reports,update ,delete, and provides a search feature for specific records.

Overall Structure

The main.cpp file forms the core of the Payroll Management System. It is modularly designed with functions handling different functionalities and a well-organized structure to manage employee data. The code begins with global constants and variables to define the maximum number of employees and store their data. Key function prototypes and utility functions, such as clearing input buffers and converting strings to lowercase, ensure smooth operation. The main program includes a menu-driven interface that allows users to interact with various features such as adding, viewing, searching, updating, deleting employees, and generating summary reports.

Main Functionalities Add Employee: Adds a new employee's details, including name, gender, ID, employment type, and salary. Input validation ensures accurate data entry and prevents duplicate IDs.

View Employee: Displays all employee records in a formatted tabular layout, including name, ID, gender, type, and salary.

Search Employee: Allows users to search for employees by name, gender, or salary. It provides results in a structured format for clarity.

Update Employee: Updates an existing employee's details, including their ID, name, gender, employment type, or salary. It validates new entries for accuracy and consistency.

Delete Employee: Deletes an employee record after confirmation, adjusting the data arrays to maintain integrity.

Summary Report: Generates a report summarizing the number of employees by gender and type, total salaries paid, and statistics like maximum, minimum, and average salaries.

Key Global Variables and Constants Constants: max_employees defines the maximum number of employees (100). Global Variables: onames[], gender[], employee_type[]: Arrays to store employee details. ohoursWorked[], salary[]: Arrays to track hours worked and salaries. oworker_count: Tracks the current number of employees. oworker_id[]: Stores unique IDs for each employee. This structured approach ensures scalability, ease of maintenance, and efficient handling of employee data.

Contributions

This project is a team effort developed by:

Contributor 1: Ahlam Ahmed(ETS 0115/16) role- implementting the search functionality

Contributor 2: Alehegne Geta(ETS 0130/16) role-implementing the summary report functionality

Contributor 3: Amanawit Behailu(ETS 0135/16) role-implementing the delete employee functionality

Contributor 4: Amanuel Ayele(ETS 0140/16) role-implementing the update employee functionality

contributor 5:Amanuel Getachewu(ETS 0147/16) role-implementing the view employees functionality

contributor 6:Amanuel Habtamu(ETS 0148/16) role-implementing the add employee functionality

About

Fop assignment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 100.0%