Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
16 views37 pages

Akshat Sethi Projectmanagment

The document outlines a Computer Science project on a Boutique Management System completed by Akshat Sethi for the academic year 2024-25. It details the project's objectives, features, and the implementation using MySQL for database management and Python for coding, showcasing the ability to manage products, customers, and sales efficiently. The project includes acknowledgments, a certificate of completion, and a structured approach to managing boutique operations, enhancing customer experience and operational efficiency.

Uploaded by

manu pro gaming
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views37 pages

Akshat Sethi Projectmanagment

The document outlines a Computer Science project on a Boutique Management System completed by Akshat Sethi for the academic year 2024-25. It details the project's objectives, features, and the implementation using MySQL for database management and Python for coding, showcasing the ability to manage products, customers, and sales efficiently. The project includes acknowledgments, a certificate of completion, and a structured approach to managing boutique operations, enhancing customer experience and operational efficiency.

Uploaded by

manu pro gaming
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

Vivekanand Public School

Computer Science
Project on
BOUTIQUE MANAGEMENT SYSTEM
Session: 2024-25
BY Akshat Sethi

Name: Akshat Sethi


Class: XII-B
Topic: BOUTIQUE MANAGEMENT SYSTEM
Roll No:
Academic Year: 2024-25
CERTIFICATE

This is to certify that Akshat Sethi, a diligent student of class 12th


– B, has successfully completed the Computer Science project on
the topic: Boutique Management System. This project
showcases his understanding and application of various
programming concepts, as well as his ability to implement a real-
world solution.

Under the guidance of Mrs. Anshu Sharma, Akshat has


demonstrated exceptional skills and dedication throughout the
academic year 2024-25. His work reflects a thorough
understanding of the subject matter and a commitment to
excellence.

We commend Akshat for his hard work and effort in completing


this project.

Signature of Signature of

Internal Examiner: External Examiner

__________________ __________________
Acknowledgment
I would like to express my sincere thanks to everyone who played
a significant role in the completion of my computer science
project on the topic: Boutique Management System.

Firstly, I wish to thank my computer teacher, Mrs. Anshu Sharma,


whose continuous support and guidance were instrumental in
making this project a success. Her theoretical knowledge and
valuable insights helped me grasp complex concepts, and I am
grateful for her encouragement throughout the process.

I want to express my gratitude to our honourable principal, Mrs.


Nancy Khanna, for providing us with the opportunity to explore
technology education. I also appreciate the faculty members who
contributed significantly to making the theoretical aspects
understandable.

I am also indebted to my family for their unwavering support.


From providing the necessary resources and facilities to
encouraging me every step of the way, their cooperation has been
invaluable. Without their support, this project would not have
been completed.

Finally, I would like to acknowledge my friends, who not only


supported me throughout this journey but also shared their
insights and provided valuable samples. Their guidance and
encouragement were crucial in refining the project at various
stages.
Contents

1. Introduction of the Project.

2. FILES IMPORTED IN PROJECT.

3. Tables created in the MySQL

4. Python Coding.

5. Outputs of the Project.

6. Bibliography
Introduction
The Boutique Management System project is designed to
efficiently manage various aspects of boutique operations,
focusing on enhancing the overall customer experience. This
system utilizes a MySQL database to keep track of essential
information related to product management, customer details,
sales records, and billing processes.

Key Features:
Database Structure:
Products Table: This table stores information about the
boutique's products, including product ID, name, category
(Clothing, Accessories, and Footwear), price, stock quantity, and
description.
Customer Table: This table keeps records of customer details such
as customer ID, name, contact information, address, phone
number, and gender.
Sales Table: This table records sales transactions, including the
customer’s ID, product IDs, quantity sold, total amount, and date
of sale. It also links to the products table via a foreign key to
ensure referential integrity.
Bill Table: This table logs bill details, including bill ID, customer
ID, total amount, date of transaction, and the employee handling
the sale. This ensures an organized record of all billing activities.
Administrator Capabilities:
Product Management: Administrators can create new product
records, update existing product details, view all products, and
check stock levels.
Customer Management: Administrators can add new customer
details, view all customers, and maintain customer records.
Sales Management: Administrators can process sales for
customers, view all sales records, generate invoices, and create
billing records accordingly.
Reporting: The system provides functionality to display lists of all
products, current stock levels, customer details, sales records, and
billing summaries.
Purpose:
The purpose of this project is to streamline boutique operations,
making it easier to manage product inventories, sales
transactions, customer information, and billing processes. It aims
to provide a user-friendly interface for administrators to handle
day-to-day tasks efficiently, ensuring smooth operation and
management of boutique resources.

This project provides a comprehensive solution for boutique


management, improving operational efficiency and enhancing the
customer experience by keeping accurate and up-to-date records.
The bill generation feature further enhances transparency and
facilitates better tracking of sales activities, ensuring that all
transactions are recorded systematically.
FILES IMPORTED IN PROJECT

1. Import MySQL connector for database connectivity

FUNCTIONS USED IN PROJECT

1. connect () - for establishing a connection to the database and


creating tables.
2. cursor () - to execute MySQL queries.
3. fetchall () - to fetch all the rows from a query result.
4. commit () - to execute (commit) the current transaction.
5. fetchone() - to fetch a single row according to the specified query.
Tables created in the MySQL
Database: boutique_management_by_akshat_sethi

TABLE: CUSTOMER

TABLE: EMPLOYEE

TABLE: PRODUCTS
Python Source code:
import mysql.connector as mycon

# Global connection variable

con = None

# Establishing the database connection

def connect():

global con

try:

con = mycon.connect(

host="localhost",

user="root",

password="aksh9906",

database="boutique_management_by_akshat_sethi" # Database name

print("Connection successful!")

except mycon.Error as err:

print(f"Error: {err}")

con = None

def setup_database():

global con

try:

# Connect without specifying a database to create one

con_no_db = mycon.connect(
host="localhost",

user="root",

password="aksh9906"

cursor = con_no_db.cursor()

# Drop database if exists

cursor.execute("DROP DATABASE IF EXISTS


`boutique_management_by_akshat_sethi`")

# Create database

cursor.execute("CREATE DATABASE `boutique_management_by_akshat_sethi`")

cursor.execute("USE `boutique_management_by_akshat_sethi`")

# Create customer table

cursor.execute("""CREATE TABLE customer (

cust_id INT PRIMARY KEY,

c_nam VARCHAR(50),

c_lnam VARCHAR(50),

c_phno VARCHAR(15),

c_adrs VARCHAR(255),

bkd_pro TEXT

)""")

# Create products table

cursor.execute("""CREATE TABLE products (

pro_name VARCHAR(100),

pro_id VARCHAR(50) PRIMARY KEY,


price DECIMAL(10, 2),

stock INT

)""")

# Create employee table

cursor.execute("""CREATE TABLE employee (

emp_id INT PRIMARY KEY,

emp_nam VARCHAR(50),

emp_lnam VARCHAR(50),

emp_phno VARCHAR(15),

emp_adrs VARCHAR(255)

)""")

con_no_db.commit()

print("Database and tables created successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:

if con_no_db.is_connected():

cursor.close()

con_no_db.close()

# Call setup_database to initialize the database

setup_database()

# Establish the database connection with the created database

connect()
def insert_customers():

customers = [

(1, 'Akshat', 'Sethi', '9734456342', 'Sharda Mandir, Jabalpur, Madhya Pradesh',


'Shoes, Shirts, Trousers'),

(2, 'Chirag', 'Aggarwal', '9812345678', '123, Anand Vihar, Delhi', 'Very Expensive
Glasses, A Pair of Gloves'),

(3, 'Karthik', 'Gupta', '9876543210', '45, Ashok Nagar, Ghaziabad, Uttar Pradesh',
'Antique Furniture'),

(4, 'Bhavya', 'Jain', '9988776655', '678, Sector 15, Noida, Uttar Pradesh', 'Vintage
Jewelry, Antique Brooch, Old Watches'),

(5, 'Ansh', 'Tyagi', '1234567890', '89, Dwarka, Delhi', 'Very Expensive Suit')

q = "INSERT INTO customer (cust_id, c_nam, c_lnam, c_phno, c_adrs, bkd_pro) VALUES
(%s, %s, %s, %s, %s, %s)"

cursor = con.cursor()

try:

cursor.executemany(q, customers)

con.commit()

print("--- Customers added successfully ---")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

# Insert customers into the table

insert_customers()
def insert_products():

products = [

('Shoes', 'P001', 1500.00, 50),

('Shirts', 'P002', 1200.00, 100),

('Trousers', 'P003', 1300.00, 80),

('Very Expensive Glasses', 'P004', 50000.00, 10),

('A Pair of Gloves', 'P005', 500.00, 200),

('Antique Furniture', 'P006', 100000.00, 5),

('Vintage Jewelry', 'P007', 25000.00, 15),

('Antique Brooch', 'P008', 30000.00, 8),

('Old Watches', 'P009', 40000.00, 12),

('Very Expensive Suit', 'P010', 100000.00, 7)

q = "INSERT INTO products (pro_name, pro_id, price, stock) VALUES (%s, %s, %s,
%s)"

cursor = con.cursor()

try:

cursor.executemany(q, products)

con.commit()

print("--- Products added successfully ---")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()
# Insert products into the table

insert_products()

def insert_employees():

employees = [

(101, 'Aarav', 'Sharma', '9876543210', '45, Rose Garden, New Delhi, 110001'),

(102, 'Priya', 'Patel', '9123456789', '22, Shivaji Nagar, Pune, 411005'),

(103, 'Rohan', 'Verma', '9988776655', '18, Gurudev Colony, Bangalore, 560034'),

(104, 'Sneha', 'Desai', '9876543211', '12, Neelkanth Apartment, Mumbai, 400018'),

(105, 'Vikram', 'Singh', '1234567891', '78, Sai Enclave, Ahmedabad, 380013')

q = "INSERT INTO employee (emp_id, emp_nam, emp_lnam, emp_phno, emp_adrs)


VALUES (%s, %s, %s, %s, %s)"

cursor = con.cursor()

try:

cursor.executemany(q, employees)

con.commit()

print("--- Employees added successfully ---")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

# Insert employees into the table

insert_employees()
def generate_bill():

try:

cust_id = int(input("Enter Customer ID for Bill Generation: "))

# Fetch customer details

q_customer = "SELECT * FROM customer WHERE cust_id = %s"

cursor = con.cursor()

cursor.execute(q_customer, (cust_id,))

customer = cursor.fetchone()

if not customer:

print("Customer not found!")

return

print(f"Customer Details: {customer[1]} {customer[2]} ({customer[3]})")

print(f"Address: {customer[4]}")

print(f"Booked Products: {customer[5]}")

# Split the booked products (assuming they are separated by commas)

booked_products = customer[5].split(", ")

total_bill = 0

print("\n--- Bill Details ---")

print("{:<20} {:<10} {:<10}".format("Product", "Quantity", "Price"))

print("-" * 40)
# Fetch product details and calculate total price

for product_name in booked_products:

q_product = "SELECT * FROM products WHERE pro_name = %s"

cursor.execute(q_product, (product_name,))

product = cursor.fetchone()

if product:

product_price = product[2]

total_bill += product_price

print("{:<20} {:<10} {:<10}".format(product[0], 1, product_price))

else:

print(f"Product '{product_name}' not found in the inventory!")

print("-" * 40)

print(f"Total Bill: {total_bill}")

# Fetch employee handling the customer (Optional)

emp_id = int(input("\nEnter Employee ID who handled the order: "))

q_employee = "SELECT * FROM employee WHERE emp_id = %s"

cursor.execute(q_employee, (emp_id,))

employee = cursor.fetchone()

if employee:

print(f"Handled by Employee: {employee[1]} {employee[2]} ({employee[3]})")

else:

print("Employee not found!")


except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

# Menu to handle various options

def show_menu():

while True:

print("@" * 60)

print("---- Welcome to Boutique Management System By Akshat Sethi ----")

print("@" * 60)

print("Press 1 - Add Customer")

print("Press 2 - Show Customers")

print("Press 3 - Delete Customer")

print("Press 4 - Add Product")

print("Press 5 - Show Products")

print("Press 6 - Delete Product")

print("Press 7 - Add Employee")

print("Press 8 - Show Employees")

print("Press 9 - Delete Employee")

print("Press 10 - Generate Bill")

print("Press 11 - Exit")

choice = input("Enter your choice: ")

if choice == '1':

add_customer()
elif choice == '2':

show_customers()

elif choice == '3':

delete_customer()

elif choice == '4':

add_product()

elif choice == '5':

show_products()

elif choice == '6':

delete_product()

elif choice == '7':

add_employee()

elif choice == '8':

show_employees()

elif choice == '9':

delete_employee()

elif choice == '10':

generate_bill()

elif choice == '11':

print("Exiting...")

break

else:

print("Invalid choice! Please try again.")

def add_customer():

cursor = con.cursor()

try:
cust_id = int(input("Enter Customer ID: "))

c_nam = input("Enter Customer First Name: ")

c_lnam = input("Enter Customer Last Name: ")

c_phno = input("Enter Customer Phone Number: ")

c_adrs = input("Enter Customer Address: ")

bkd_pro = input("Enter Booked Products (comma-separated): ")

q = "INSERT INTO customer (cust_id, c_nam, c_lnam, c_phno, c_adrs, bkd_pro)


VALUES (%s, %s, %s, %s, %s, %s)"

cursor.execute(q, (cust_id, c_nam, c_lnam, c_phno, c_adrs, bkd_pro))

con.commit()

print("Customer added successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

def delete_customer():

cursor = con.cursor()

try:

cust_id = int(input("Enter Customer ID to delete: "))

cursor.execute("DELETE FROM customer WHERE cust_id = %s", (cust_id,))

con.commit()

print("Customer deleted successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:
cursor.close()

def show_customers():

cursor = con.cursor()

try:

cursor.execute("SELECT * FROM customer")

customers = cursor.fetchall()

print("\n--- Customer List ---")

for customer in customers:

print(customer)

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

def add_product():

cursor = con.cursor()

try:

pro_name = input("Enter Product Name: ")

pro_id = input("Enter Product ID: ")

price = float(input("Enter Product Price: "))

stock = int(input("Enter Product Stock: "))

q = "INSERT INTO products (pro_name, pro_id, price, stock) VALUES (%s, %s, %s,
%s)"

cursor.execute(q, (pro_name, pro_id, price, stock))

con.commit()
print("Product added successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

def delete_product():

cursor = con.cursor()

try:

pro_id = input("Enter Product ID to delete: ")

cursor.execute("DELETE FROM products WHERE pro_id = %s", (pro_id,))

con.commit()

print("Product deleted successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

def show_products():

cursor = con.cursor()

try:

cursor.execute("SELECT * FROM products")

products = cursor.fetchall()

print("\n--- Product List ---")

for product in products:

print(product)

except mycon.Error as err:


print(f"Error: {err}")

finally:

cursor.close()

def add_employee():

cursor = con.cursor()

try:

emp_id = int(input("Enter Employee ID: "))

emp_nam = input("Enter Employee First Name: ")

emp_lnam = input("Enter Employee Last Name: ")

emp_phno = input("Enter Employee Phone Number: ")

emp_adrs = input("Enter Employee Address: ")

q = "INSERT INTO employee (emp_id, emp_nam, emp_lnam, emp_phno, emp_adrs)


VALUES (%s, %s, %s, %s, %s)"

cursor.execute(q, (emp_id, emp_nam, emp_lnam, emp_phno, emp_adrs))

con.commit()

print("Employee added successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

def delete_employee():

cursor = con.cursor()

try:

emp_id = int(input("Enter Employee ID to delete: "))


cursor.execute("DELETE FROM employee WHERE emp_id = %s", (emp_id,))

con.commit()

print("Employee deleted successfully!")

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

def show_employees():

cursor = con.cursor()

try:

cursor.execute("SELECT * FROM employee")

employees = cursor.fetchall()

print("\n--- Employee List ---")

for employee in employees:

print(employee)

except mycon.Error as err:

print(f"Error: {err}")

finally:

cursor.close()

# Start the menu

show_menu()

# Close the connection when done

if con.is_connected():

con.close()
Outputs:
Finally, I conclude my work and present the results of the project.
MY PYTHON OUTPUTS:
MAIN SCREEN:
ADDING NEW CUSTOMER:
SHOWING All CUSTOMERS:
DELETING A CUSTOMER:
Adding A Product:
Showing All Products:
Deleting a Product:
Adding an Employee:
Showing All Employees:
Deleting an Employee:
Generating the Bill
Exiting the Program:
MySQL:

DATA GENERATED TABLE IN THE TABLE: Customer

DATA GENERATED TABLE IN THE TABLE: Product

DATA GENERATED TABLE IN THE TABLE: Employee


Bibliography
Sources:
 Python Software Foundation. Python Documentation. Available at:
www.python.org
 Learn Python Interactive Tutorial. Available at: LearnPython.org
 Tutorials Point. Python Tutorials. Available at: tutorialspoint.com

Software:
 Oracle Corporation. MySQL. Available at: https://www.mysql.com
 Python Software Foundation. Python IDLE. Available at:
https://www.python.org/downloads

Books:
 Preeti Arora. Computer Science with Python for Class 11th & 12th. Sultan
Chand & Sons.

You might also like