In this project, I have build a simple inventory management system (IMS) for a grocery store using json (NoSQL db) file. It provides an easy way to keep a track of the products, customers and orders/transactions information. It also prints a bill invoice for every transaction done and update the inventory after every operation which involves any data manipulation of product's details.
Backend - Python
record.json contains the product details of all the products present in the inventory.
sales.json contains the order details of every transactions done.
Product
- Number of attributes : 10
- product id, product name, purchase price, sale price, quantity, food category, expiry date, size, brand name, and weight
- Features
- Add new products,
- Delete existing products,
- Update features (like sale price, quantity or purchase price) of any product, and
- Check stock availability.
Order
- Number of attributes : 10
- order id, customer name, mobile number, product id, time of purchase, mode of payment, quantity purchased, billing amount, and profit made
- Features
- Total number of sales done,
- Profit we made in an entire day, and
- Total billing amount of sales done.
Functionalities in the User Interface:
- Display the different kinds (such as beverages, snacks, etc.) of products
- Display different products belonging to a particular category
- Display different features (such as brand name, unit price) of a product
- Place an order
- Add new products into the inventory
- Update any feature of a product
- Delete any existing product from the inventory
- Check stock availability
Note :
- Since order() in inv_mgmt_sys.ipynb allows any user to purchase only one kind of product at a time, I have overcome this limitation in ims_omp.ipynb.
- ord_multiple_prod() function in ims_omp.ipynb - allows user to order multiple products at a time.
- ims_omp.ipynb uses prod_record_mp.json as database file and yields sales_mp.json as the output file containing all the transaction details.
- inv_mgmt_sys.ipynb uses record.json as database file and yields sales.json as the desired output file.
- Added a new attribute as unit_price of purchased product to order and a new functionality as check_stock_available() to check available stocks in ims_omp.ipynb notebook.