Skip to content

Low Level Design project for implementing a console based inventory management system

Notifications You must be signed in to change notification settings

TinTurtle/lld-ims

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Inventory Management System (IMS) – Java Console Project

πŸ“Œ Overview

This is a console-based Inventory Management System implemented in Java. It allows users to manage products, track stock, create customer orders, and view sales history.

The project demonstrates Object-Oriented Programming (OOP) concepts, Low-Level Design (LLD), and clean modular code organization.


βš™οΈ Features

πŸ”Ή Product Management

  • Add new products with ID, name, price, quantity, and category
  • Search products by name, partial name, category, or price range
  • List all products
  • Sort products (by price or quantity in ascending/descending order)
  • Group products by category
  • View only available products (quantity > 0)
  • Check for low stock items with a custom threshold

πŸ”Ή Stock Management

  • Increase or decrease stock of existing products
  • Error handling for invalid stock operations (e.g., decreasing below 0)

πŸ”Ή Order Management

  • Create a new order
  • Add items (with quantity check)
  • Confirm an order (updates inventory automatically)
  • View all orders with order details and total price

πŸ”Ή Robust User Input Handling

  • Uses try-catch for input mismatches
  • Clear error messages for invalid operations

πŸ“‚ Package Structure

com.ims
│── Main.java                # Entry point with menu-driven UI
β”‚
β”œβ”€β”€ model
β”‚   └── Product.java          # Product entity
|
β”œβ”€β”€ observer                  # Observer pattern for Alerts
|   └── ConsoleAlertService.java
|   └── EmailAlertService.java
|   └── StockObserver.java
β”‚
β”œβ”€β”€ service
β”‚   └── Inventory.java        # Singleton inventory manager
β”‚
└── order
    β”œβ”€β”€ Order.java            # Handles customer orders
    └── OrderItem.java        # Represents product + quantity in an order

About

Low Level Design project for implementing a console based inventory management system

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages