An open API service indexing awesome lists of open source software.

https://github.com/shadowwphoenix/employee-management-system-using-sqlite-and-tkinter

Employee management system project
https://github.com/shadowwphoenix/employee-management-system-using-sqlite-and-tkinter

Last synced: about 1 year ago
JSON representation

Employee management system project

Awesome Lists containing this project

README

          

This Python project implements an Employee Management System using Tkinter for the GUI, SQLite for database management, and matplotlib for data visualization. Here's a breakdown of its functionalities:

Database Management:

It uses SQLite to manage an employee database.
Upon initialization (__init__ method), it connects to the SQLite database and creates the necessary table if it doesn't exist (create_table method).
GUI Creation:

The GUI is created using Tkinter widgets such as labels, entries, comboboxes, buttons, and a treeview for displaying employee data.
Widgets are arranged in a grid layout (create_gui method).
Employee Management Operations:

Adding employees (add_employee method) by inserting data into the SQLite database.
Updating employees (update_employee method) by modifying existing data in the database.
Removing employees (remove_employee method) by deleting their data from the database.
Searching employees (search_employee method) based on name, contact number, gender, or role.
Promoting employees (promote_employee method) by increasing their salary.
Data Visualization:

It includes functions to display data visualization:
Pie chart showing the gender distribution of employees (show_pie_chart method).
Bar chart showing the average salary distribution by role (show_salary_bar_chart method).
Undo and Redo Functionality:

It implements undo and redo functionality for employee management operations (undo and redo methods).
Uses stacks (undo_stack and redo_stack) to keep track of states and transitions.
Sorting and Displaying Employee Data:

Sorting employee data (sort_table method) based on various criteria such as ID, name, age, gender, role, experience, and salary.
Displaying employee data in the treeview widget (show_table method).
Salary Calculation:

Calculates the salary of employees based on their experience (calculate_salary method).

Overall, this project provides a comprehensive interface for managing employee data, including CRUD operations, search functionality, data visualization, and undo/redo capabilities. It offers a robust foundation for building and managing an employee database system within a graphical user interface.