Pharmaceutical Inventory Management System
A Java Swingβbased CROSS-Platform Desktop Application
This application is designed to manage pharmacy inventory efficiently. It allows users to track stock levels, products, suppliers, GRNs, invoices, and more. The system is built to support admin and cashier roles with features to streamline day-to-day pharmacy operations.
SQL is used to interact with the database, performing CRUD operations (Create, Read, Update, Delete) and join queries to manage and retrieve data efficiently. All database tables are interconnected to ensure data integrity and consistency.
π― Key Features
- Add, update, and delete inventory items
- Efficient stock quantity management
- Generate professional reports using JasperReports
- Calendar-based date selection using JCalendar
- Modern UI with FlatLaf themes
- Real-time alert notifications using Swing Toast Notifications
π₯ Roles
- Admin: Full access to manage inventory, users, suppliers, and reports
- Cashier: Access to perform sales, manage invoices, and view stock
π οΈ Technologies & Tools Used
- Programming Language: Java
- JDK Version: 11
- IDE: NetBeans
- Operating System: Windows
- UI Framework: Java Swing
- Themes: FlatLaf
- Reporting: JasperStudio (JasperReports)
- Libraries:
- JCalendar
- Swing Toast Notifications
- JCalendar
π How to Run the Project
- Install JDK 11
- Install NetBeans IDE
- Clone the repository:
```bash git clone https://github.com/yourusername/inventory-management-system.git
Open NetBeans β Open Project β Select the project folder
Build and run the project
π Project Structure
Medicom_Pharmacy/
β
βββ src/ # Java source code
β βββ lk.jiat.medicom/
β βββ component/ # UI components
β βββ connection/ # Database connection
β βββ dialog/ # Dialog windows
β βββ gui/ # Main UI classes
β βββ icons/ # Icons used in the UI
β βββ images/ # Image assets
β βββ modal/ # Modal windows
β βββ panels/ # Panel layouts
β βββ reports/ # JasperReports templates
β βββ validation/ # Input validation classes
βββ lib/ # External libraries / JARs
βββ build.xml # Ant build file
βββ README.md
βββ .gitignore # Exclude IDE and build files
ποΈ Database
πΈ Few Screenshots
π Notes
Make sure all libraries in the lib/ folder are included in the project build path.
The system is optimized for Windows OS but Java Swing allows it to run on any OS with JDK 11 installed.
Reports require JasperReports templates located in src/lk/jiat/medicom/reports/.
ENJOYYYYYYYYYYY πΏ
