Merge pull request #259 from shreyan-naskar/master

Shop Inventory Manager Created
This commit is contained in:
Advaita Saha 2022-10-09 19:01:32 +05:30 committed by GitHub
commit cabddb55c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 194 additions and 0 deletions

View File

@ -0,0 +1,6 @@
# SHOP INVENTORY MANAGEMENT IN PYTHON
- I've created a Shop INventory Management project.
- It has various functions.
- It helps Entry,Extraction and other relevant manipulation methods of stored Data.

View File

@ -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()