Pharmaceutical Inventory Management System

A Java Swing–based CROSS-Platform Desktop Application

Pharmaceutical Inventory Management System Screenshot

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

πŸš€ How to Run the Project

  1. Install JDK 11
  2. Install NetBeans IDE
  3. 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

Database Screenshot


πŸ“Έ Few Screenshots

Screenshot 2024-08-18 082515 Screenshot 2024-08-18 091233 image image


πŸ“Œ 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 🌿

Built With

Share this project:

Updates