Skip to content

A lightweight Java Swing app to track, receive, distribute, and report on PPE inventory. Data is stored in simple CSV-style text files—no external database required.

Notifications You must be signed in to change notification settings

Alsecerc/IMS-Inventory-Management-System-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inventory Management System (IMS)

A lightweight Java Swing app to track, receive, distribute, and report on PPE inventory. Data is stored in simple CSV-style text files—no external database required.

Features

  • Inventory: quantities, unit cost, and auto-calculated total value
  • Transactions: Receive from suppliers, Distribute to hospitals (with stock checks)
  • Users: Admin and regular roles, activity logging
  • Reporting: Inventory status, transaction history, activity log with export
  • Robust validation and error handling

Tech Stack

  • Java 17+
  • Swing (JFrame, JTable, dialogs, listeners)
  • Java I/O (BufferedReader/Writer), Collections, Date/Time

Data Files (CSV-style)

  • ppe.txt – items and quantities
  • transactions.txt – receive/distribute history
  • history.txt – activity/audit log
  • users.txt, suppliers.txt, hospitals.txt – reference data

Quick Start

  1. Install JDK 17+
  2. Open the project in your IDE (VS Code/Eclipse/IntelliJ)
  3. Build the project
  4. Run the GUI entry point: src/main/java/GUI/MainMenu.java (or Main.java if present)

Basic Usage

  • Login: default admin → Username: Administrator, Password: admin123
  • Receive: choose supplier + item, enter quantity → inventory and transactions update
  • Distribute: choose hospital + item, enter quantity → validates stock, records transaction
  • Reports: filter by date/item/supplier/hospital and export

Project Structure (high level)

  • src/main/java/GUI/ – UI (LoginPage, MainMenu, ContentManager, ReportGeneratorPage)
  • src/main/utils/ – utilities (FileManager, CurrentDateTime, InventoryManager, RecordActivity)
  • src/main/data/ or data/ – text files (ppe, transactions, users, suppliers, hospitals, history)

Notes

  • Files use comma-separated values; totals are recalculated from quantity × unit cost
  • The app follows an MVC-inspired structure and uses simple design patterns (Singleton for FileManager, factory-style UI helpers)

About

A lightweight Java Swing app to track, receive, distribute, and report on PPE inventory. Data is stored in simple CSV-style text files—no external database required.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published