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
- Host: GitHub
- URL: https://github.com/shadowwphoenix/employee-management-system-using-sqlite-and-tkinter
- Owner: ShadowwPhoenix
- Created: 2024-01-30T11:00:17.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-01-30T11:03:34.000Z (over 2 years ago)
- Last Synced: 2025-02-17T23:42:50.134Z (over 1 year ago)
- Language: Python
- Homepage:
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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.