From 018555d41ae9843d90ec428fdcfc354da01cf0d8 Mon Sep 17 00:00:00 2001 From: shreyan-naskar Date: Sun, 9 Oct 2022 18:44:11 +0530 Subject: [PATCH] Shop Inventory Manager Created --- scripts/Shop_Inventory/README.md | 10 ++ scripts/Shop_Inventory/main.py | 188 +++++++++++++++++++++++++++++++ 2 files changed, 198 insertions(+) create mode 100644 scripts/Shop_Inventory/README.md create mode 100644 scripts/Shop_Inventory/main.py diff --git a/scripts/Shop_Inventory/README.md b/scripts/Shop_Inventory/README.md new file mode 100644 index 0000000..90e0c64 --- /dev/null +++ b/scripts/Shop_Inventory/README.md @@ -0,0 +1,10 @@ +# SHOP INVENTORY MANAGEMENT IN PYTHON + +- I've imported the rsa package. +- It generates the public and private key. +- It then stores the keys in keys/privkey.pem and keys/publickey.pem. +- The keys are then loaded to the program as publickey and privatekey. +- The inputed text or message is encrypted with the public key. +- Which then is put in the variable ciphertext. +- The private key is used to decrypt the message. +- Here we also verify the signature of the message and the keys, whether they are signified or not. diff --git a/scripts/Shop_Inventory/main.py b/scripts/Shop_Inventory/main.py new file mode 100644 index 0000000..889cf63 --- /dev/null +++ b/scripts/Shop_Inventory/main.py @@ -0,0 +1,188 @@ +import csv + +def check_unique_Product_ID(Product_ID) : + + file = open('ProductRecords.csv','r',newline = '') + Reader_obj = csv.DictReader(file) + count = 0 + + for line in Reader_obj : + if line['Product_ID'] == Product_ID : + count += 1 + + if count == 0: + return Product_ID + + else: + print('The Product_ID already exists..!!') + print() + Product_ID = input('Enter unique Product ID: ') + return check_unique_Product_ID(Product_ID) + + file.close() + + +def Entry(): + Data = [] + Product_ID = (input('Enter the ID of the Product: ')) + Data.append(check_unique_Product_ID(Product_ID)) + + Product_Name = input('Enter the Name of the Product: ') + Product_Price = int(input('Enter the Price of the Product: ')) + Product_Quantity = int(input('Enter the Quantity of the Product: ')) + + Data.extend([Product_Name, Product_Price, Product_Quantity]) + + file = open('ProductRecords.csv', 'a',newline = '') + writer_obj = csv.writer(file) + writer_obj.writerow(Data) + file.close() + print('Entered data has been successfully recorded..!!!') + print() + +def Extract_Data(Product_ID) : + print() + file = open('ProductRecords.csv','r',newline = '') + Reader_obj = csv.DictReader(file) + + for line in Reader_obj: + + if line['Product_ID'] == str(Product_ID): + for i in line.keys() : + + print(i , ':' , line[i]) + + file.close() + print() + + +def Extract_Quantity(Product_ID) : + print() + file = open('ProductRecords.csv','r',newline = '') + Reader_obj = csv.DictReader(file) + for line in Reader_obj: + + if line['Product_ID'] == str(Product_ID): + print('Quantity of', + line['Product_Name'] , + ':', + line['Product_Quantity']) + file.close() + print() + +def Delete_Record(Product_ID) : + file = open ('ProductRecords.csv','r+',newline = '') + Reader_obj = csv.reader(file) + records = [row for row in Reader_obj][1:] + temp_records = [] + + for record in records: + if record != []: + if record[0] != Product_ID and record != [] : + temp_records.append(record) + file.close() + + file = open ('ProductRecords.csv','w+',newline = '') + writer_obj = csv.writer(file) + writer_obj.writerow(['Product_ID','Product_Name','Product_Price','Product_Quantity']) + writer_obj.writerows(temp_records) + print('Record deleted successfully.') + file.close() + + +def Update_Price(Product_ID,New_Price) : + file = open('ProductRecords.csv','r') + Reader_obj = csv.DictReader(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) + + Temp_records = [] + for line in Reader_obj : + Temp_records.append(line) + + file.close() + + for record in Temp_records : + if record['Product_ID'] == Product_ID : + record['Product_Price'] = New_Price + + Temp_records = Temp_records[1:] + file = open('ProductRecords.csv','w+',newline = '') + Writer_obj = csv.DictWriter(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) + Writer_obj.writeheader() + Writer_obj.writerows(Temp_records) + file.close() + print('Price has been Updated successfully !!!') + + +def Update_Quantity(Product_ID,New_Quantity) : + file = open('ProductRecords.csv','r') + Reader_obj = csv.DictReader(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) + + Temp_records = [] + for line in Reader_obj : + Temp_records.append(line) + + file.close() + + for record in Temp_records : + if record['Product_ID'] == Product_ID : + record['Product_Quantity'] = New_Quantity + + Temp_records = Temp_records[1:] + file = open('ProductRecords.csv','w+',newline = '') + Writer_obj = csv.DictWriter(file, fieldnames = ['Product_ID','Product_Name','Product_Price','Product_Quantity']) + Writer_obj.writeheader() + Writer_obj.writerows(Temp_records) + file.close() + print('Quantity has been Updated successfully !!!') + + +while True: + + print() + print('Press 1 to Insert Product Details: ') + print('Press 2 to Fetch Product Details using Product_ID: ') + print('Press 3 to Fetch Quantity of the Product using Product_ID: ') + print('Press 4 to Delete Product Details using Product_ID: ') + print('Press 5 to Update Product Price using Product_ID: ') + print('Press 6 to Update Product Quantity using Product_ID: ') + print('Press 0 to Exit: ') + print() + + Answer = int(input('Press desired number: ')) + + if Answer == 1 : + n = int(input('Enter the number of entries to be entered: ')) + for i in range(n): + Entry() + + elif Answer == 2 : + Product_ID = input('Enter the Product ID: ') + Extract_Data(Product_ID) + + elif Answer == 3 : + Product_ID = input('Enter the Product ID: ') + Extract_Quantity(Product_ID) + + elif Answer == 4 : + Product_ID = input ('Enter the ID of the product to be deleted : ') + Delete_Record(Product_ID) + + elif Answer == 5 : + Product_ID = input('Enter the Product ID: ') + New_Price = int(input('Enter the New Price of the Product: ')) + Update_Price(Product_ID,New_Price) + + elif Answer == 6 : + Product_ID = input('Enter the Product ID: ') + New_Quantity = int(input('Enter the New Quantity of the Product: ')) + Update_Quantity(Product_ID,New_Quantity) + + elif Answer == 0 : + print('Thank You !!') + exit() + + else: + print('No such option exists..!!') + exit() + + \ No newline at end of file