You are on page 1of 8

import tkinter as tk

class BakeryApp:
def __init__(self, master):
self.master = master
self.total_cost = 0
self.items = []

# Set background color


master.configure(bg='white')

# Create widgets
self.label = tk.Label(master,text='Bakery Management System',
font=('Helvetica', 20),bg='black',fg='#F7CD2E',width='22')
self.label.place(x = 0,y = 170)
self.label = tk.Label(master, text='Breads', font=('Helvetica',
18),bg='lightblue',fg='black')
self.label.place(x = 50,y = 245)
self.label = tk.Label(master, text='Cold Drinks', font=('Helvetica',
18),bg='lightblue',fg='black')
self.label.place(x = 50,y = 315)
self.label = tk.Label(master, text='Butter & Spreads', font=('Helvetica',
18) ,bg='lightblue',fg='black')
self.label.place(x = 50,y = 385)
self.label = tk.Label( master, text='Milks', font=('Helvetica',
18) ,bg='lightblue',fg='black')
self.label.place(x = 50,y = 455)
self.label = tk.Label( master, text='Cookies', font=('Helvetica',
18) ,bg='lightblue',fg='black')
self.label.place(x = 50,y = 525)
self.var_dawn_bread = tk.IntVar()
self.check_dawn_bread = tk.Checkbutton(master, text='Dawn Bread',
font=('Helvetica', 16), bg='lightgreen',fg='red', variable=self.var_dawn_bread,
command=self.add_dawn_bread)
self.check_dawn_bread.place(x = 350,y = 245)

self.var_brady_bread = tk.IntVar()
self.check_brady_bread = tk.Checkbutton(master, text='Brady\'s Bread',
font=('Helvetica', 16), bg='lightgreen',fg='red', variable=self.var_brady_bread,
command=self.add_brady_bread)
self.check_brady_bread.place(x = 550,y = 245)

self.var_bakery_bread = tk.IntVar()
self.check_bakery_bread = tk.Checkbutton(master, text='Bakery\'s Bread',
font=('Helvetica', 16), bg='lightgreen',fg='red', variable=self.var_bakery_bread,
command=self.add_bakery_bread)
self.check_bakery_bread.place(x = 750,y = 245)

self.var_Pepsi = tk.IntVar()
self.check_Pepsi = tk.Checkbutton(master, text='Pepsi', font=('Helvetica',
16), bg='lightyellow',fg='red', variable=self.var_Pepsi, command=self.add_Pepsi)
self.check_Pepsi.place(x = 350,y = 315)

self.var_SevenUp = tk.IntVar()
self.check_SevenUp = tk.Checkbutton(master, text='7up', font=('Helvetica',
16), bg='lightyellow',fg='red', variable=self.var_SevenUp,
command=self.add_SevenUp)
self.check_SevenUp.place(x = 550,y = 315)
self.var_Dew = tk.IntVar()
self.check_Dew = tk.Checkbutton(master, text='Dew', font=('Helvetica', 16),
bg='lightyellow',fg='red', variable=self.var_Dew, command=self.add_Dew)
self.check_Dew.place(x = 750,y = 315)

self.var_Sprite = tk.IntVar()
self.check_Sprite = tk.Checkbutton(master, text='Sprite',
font=('Helvetica', 16), bg='lightyellow',fg='red', variable=self.var_Sprite,
command=self.add_Sprite)
self.check_Sprite.place(x = 950,y = 315)

self.var_Coke = tk.IntVar()
self.check_Coke = tk.Checkbutton(master, text='Coke', font=('Helvetica',
16), bg='lightyellow',fg='red', variable=self.var_Coke, command=self.add_Coke)
self.check_Coke.place(x = 1150,y = 315)

self.var_BlueBand = tk.IntVar()
self.check_BlueBand = tk.Checkbutton(master, text='Blue Band',
font=('Helvetica', 16), bg='#F7CD2E',fg='red', variable=self.var_BlueBand,
command=self.add_BlueBand)
self.check_BlueBand.place(x = 350,y = 385)

self.var_Mumtaz = tk.IntVar()
self.check_Mumtaz = tk.Checkbutton(master, text='Mumtaz',
font=('Helvetica', 16), bg='#F7CD2E',fg='red', variable=self.var_Mumtaz,
command=self.add_Mumtaz)
self.check_Mumtaz.place(x = 550,y = 385)

self.var_ChickenSpread = tk.IntVar()
self.check_ChickenSpread = tk.Checkbutton(master, text='Chicken Spread',
font=('Helvetica', 16), bg='#F7CD2E',fg='red', variable=self.var_ChickenSpread,
command=self.add_ChickenSpread)
self.check_ChickenSpread.place(x = 750,y = 385)

self.var_Nutella = tk.IntVar()
self.check_Nutella = tk.Checkbutton(master,text='Nutella',
font=('Helvetica', 16), bg='#F7CD2E',fg='red', variable=self.var_Nutella,
command=self.add_Nutella)
self.check_Nutella.place(x = 970,y = 385)

self.var_Olpers = tk.IntVar()
self.check_Olpers = tk.Checkbutton(master, text='Olpers',
font=('Helvetica', 16), bg='#82FC0F',fg='red', variable=self.var_Olpers,
command=self.add_Olpers)
self.check_Olpers.place(x = 350,y = 455)

self.var_MilkPak = tk.IntVar()
self.check_MilkPak = tk.Checkbutton(master,text='Milk Pak',
font=('Helvetica', 16), bg='#82FC0F',fg='red', variable=self.var_MilkPak,
command=self.add_MilkPak)
self.check_MilkPak.place(x = 550,y = 455)

self.var_Omung = tk.IntVar()
self.check_Omung = tk.Checkbutton(master,text='Omung', font=('Helvetica',
16), bg='#82FC0F',fg='red', variable=self.var_Omung, command=self.add_Omung)
self.check_Omung.place(x = 750,y = 455)

self.var_BakeryMilk = tk.IntVar()
self.check_BakeryMilk = tk.Checkbutton(master,text="Bakery's Milk",
font=('Helvetica', 16), bg='#82FC0F',fg='red', variable=self.var_BakeryMilk,
command=self.add_BakeryMilk)
self.check_BakeryMilk.place(x = 950,y = 455)

self.var_Prince = tk.IntVar()
self.check_Prince = tk.Checkbutton(master, text='Prince',
font=('Helvetica', 16), bg='#82FC0F',fg='red', variable=self.var_Prince,
command=self.add_Prince)
self.check_Prince.place(x = 350,y = 525)

self.var_Sooper = tk.IntVar()
self.check_Sooper = tk.Checkbutton(master,text='Sooper', font=('Helvetica',
16), bg='#82FC0F',fg='red', variable=self.var_Sooper, command=self.add_Sooper)
self.check_Sooper.place(x = 530,y = 525)

self.var_Rio = tk.IntVar()
self.check_Rio = tk.Checkbutton(master, text='Rio', font=('Helvetica', 16),
bg='#82FC0F',fg='red', variable=self.var_Rio, command=self.add_Rio)
self.check_Rio.place(x = 730,y = 525)

self.var_Tuc = tk.IntVar()
self.check_Tuc = tk.Checkbutton(master,text='Tuc', font=('Helvetica', 16),
bg='#82FC0F',fg='red', variable=self.var_Tuc, command=self.add_Tuc)
self.check_Tuc.place(x = 930,y = 525)

self.var_Chocolatto = tk.IntVar()
self.check_Chocolatto = tk.Checkbutton(master, text='Chocolatto',
font=('Helvetica', 16), fg='red', bg='#82FC0F', variable=self.var_Chocolatto,
command=self.add_Chocolatto)
self.check_Chocolatto.place(x = 1130,y = 525)

# Buttons
self.calculate_total_button = tk.Button(master, text='Calculate Total',
font=('Helvetica', 16), bg='lightblue', command=self.calculate_total)
self.calculate_total_button.place(x = 1020,y = 635)

self.generate_receipt_button = tk.Button(master, text='Generate Receipt',


font=('Helvetica', 16), bg='lightgreen', command=self.generate_receipt)
self.generate_receipt_button.place(x = 1020,y = 705)

self.save_button = tk.Button(master, text='Save', font=('Helvetica', 16),


bg='lightgreen', command=self.save)
self.save_button.place(x = 1020,y = 775)

self.reset_button = tk.Button(master, text='Reset', font=('Helvetica', 16),


bg='lightcoral', command=self.reset)
self.reset_button.place(x = 1020,y = 855)

# Create a text widget


self.receipt_text = tk.Text(master,font=('Helvetica', 16),
bg='white',width=50,height=12 , background='black', fg='white')
self.receipt_text.place(x=0,y=669)

# Set the scrollbar to the text widget

def add_dawn_bread(self):
if self.var_dawn_bread.get() == 1:
self.total_cost += int(self.var_dawn_bread.get())
self.items.append('Dawn Bread')
else:
self.total_cost -= int(self.var_dawn_bread.get())
self.items.remove('Dawn Bread')

def add_brady_bread(self):
if self.var_brady_bread.get() == 1:
self.total_cost += int(self.var_brady_bread.get())
self.items.append('Bradys Bread')
else:
self.total_cost-= int(self.var_brady_bread.get())
self.items.remove('Bradys Bread')
def add_bakery_bread(self):
if self.var_bakery_bread.get() == 1:
self.total_cost += int(self.var_bakery_bread.get())
self.items.append('Bakerys Bread')
else:
self.total_cost -= int(self.var_bakery_bread.get())
self.items.remove('Bakerys Bread')

def add_Pepsi(self):
if self.var_Pepsi.get() == 1:
self.total_cost += int(self.var_Pepsi.get())
self.items.append('Pepsi')
else:
self.total_cost -= int(self.var_Pepsi.get())
self.items.remove('Pepsi')

def add_SevenUp(self):
if self.var_SevenUp.get() == 1:
self.total_cost += int(self.var_SevenUp.get())
self.items.append('7up')
else:
self.total_cost -= int(self.var_SevenUp.get())
self.items.remove('7up')

def add_Dew(self):
if self.var_Dew.get() == 1:
self.total_cost += int(self.var_Dew.get())
self.items.append('Dew')
else:
self.total_cost -= int(self.var_Dew.get())
self.items.remove('Dew')
def add_Sprite(self):
if self.var_Sprite.get() == 1:
self.total_cost += int(self.var_Sprite())
self.items.append('Sprite')
else:
self.total_cost -= int(self.var_Sprite())
self.items.remove('Sprite')

def add_Coke(self):
if self.var_Coke.get() == 1:
self.total_cost += int(self.var_Coke.get())
self.items.append('Coke')
else:
self.total_cost -= int(self.var_Coke.get())
self.items.remove('Coke')

def add_BlueBand(self):
if self.var_BlueBand.get() == 1:
self.total_cost += int(self.var_BlueBand.get())
self.items.append('Blue Band')
else:
self.total_cost -= int(self.var_BlueBand.get())
self.items.remove('Blue Band')
def add_Mumtaz(self):
if self.var_Mumtaz.get() == 1:
self.total_cost += int(self.var_Mumtaz.get())
self.items.append('Mumtaz')
else:
self.total_cost -= int(self.var_Mumtaz.get())
self.items.remove('Mumtaz')

def add_ChickenSpread(self):
if self.var_ChickenSpread.get() == 1:
self.total_cost += int(self.var_ChickenSpread.get())
self.items.append('Chicken Spread')
else:
self.total_cost -= int(self.var_ChickenSpread.get())
self.items.remove('Chicken Spread')

def add_Nutella(self):
if self.var_Nutella.get() == 1:
self.total_cost += int(self.var_Nutella.get())
self.items.append('Nutella')
else:
self.total_cost -= int(self.var_Nutella.get())
self.items.remove('Nutella')

def add_Olpers(self):
if self.var_Olpers.get() == 1:
self.total_cost += int(self.var_Olpers.get())
self.items.append('Olpers')
else:
self.total_cost -= int(self.var_Olpers.get())
self.items.remove('Olpers')
def add_Prince(self):
if self.var_Prince.get() == 1:
self.total_cost += int(self.var_Prince.get())
self.items.append('Prince')
else:
self.total_cost -= int(self.var_Prince.get())
self.items.remove('Prince')

def add_Sooper(self):
if self.var_Sooper.get() == 1:
self.total_cost += int(self.var_Sooper.get())
self.items.append('Sooper')
else:
self.total_cost -= int(self.var_Sooper.get())
self.items.remove('Sooper')

def add_Rio(self):
if self.var_Rio.get() == 1:
self.total_cost += int(self.var_Rio.get())
self.items.append('Rio')
else:
self.total_cost -= int(self.var_Rio.get())
self.items.remove('Rio')

def add_Tuc(self):
if self.var_Tuc.get() == 1:
self.total_cost += int(self.var_Tuc.get())
self.items.append('Tuc')
else:
self.total_cost -= int(self.var_Tuc.get())
self.items.remove('Tuc')

def add_Chocolatto(self):
if self.var_Chocolatto.get() == 1:
self.total_cost += int(self.var_Chocolatto.get())
self.items.append('Chocolatto')
else:
self.total_cost -= int(self.var_Chocolatto.get())
self.items.remove('Chocolatto')

def add_MilkPak(self):
if self.var_MilkPak.get() == 1:
self.total_cost += int(self.var_MilkPak.get())
self.items.append('Milk Pak')
else:
self.total_cost -= int(self.var_MilkPak.get())
self.items.remove('Milk Pak')
def add_Omung(self):
if self.var_Omung.get() == 1:
self.total_cost += int(self.var_Omung.get())
self.items.append('Omung')
else:
self.total_cost -= int(self.var_Omung.get())
self.items.remove('Omung')
def add_BakeryMilk(self):
if self.var_BakeryMilk.get() == 1:
self.total_cost += int(self.var_BakeryMilk.get())
self.items.append("Bakery's Milk")
else:
self.total_cost -= int(self.var_BakeryMilk.get())
self.items.remove("Bakery's Milk")

def calculate_total(self):
self.total_label.configure(text='Total: $' + str(self.total_cost))

def generate_receipt(self):
self.receipt_text.delete('1.0', tk.END)
self.receipt_text.insert(tk.END, 'Receipt\n\n')
self.receipt_text.insert(tk.END, 'Items: ' + ', '.join(self.items) + '\n')
self.receipt_text.insert(tk.END, 'Total: $' + str(self.total_cost) + '\n')
def save(self):
with open('receipt.txt', 'w') as f:
f.write('Receipt\n\n')
f.write('Items: ' + ', '.join(self.items) + '\n')
f.write('Total: $' + str(self.total_cost) + '\n')
def reset(self):
self.var_dawn_bread.set(0)
self.var_brady_bread.set(0)
self.var_bakery_bread.set(0)
self.var_Pepsi.set(0)
self.var_SevenUp.set(0)
self.var_Dew.set(0)
self.var_Sprite.set(0)
self.var_Coke.set(0)
self.var_BlueBand.set(0)
self.var_Mumtaz.set(0)
self.var_ChickenSpread.set(0)
self.var_Nutella.set(0)
self.var_Olpers.set(0)
self.var_Prince.set(0)
self.var_Sooper.set(0)
self.var_Rio.set(0)
self.var_Tuc.set(0)
self.var_Chocolatto.set(0)
self.var_MilkPak.set(0)
self.var_Omung.set(0)
self.var_BakeryMilk.set(0)
self.total_cost = 0
self.items = []
self.var_dawn_bread.delete(0, tk.END)
self.var_brady_bread.delete(0, tk.END)
self.var_bakery_bread.delete(0, tk.END)
self.var_Pepsi.delete(0, tk.END)
self.var_SevenUp.delete(0, tk.END)
self.var_Dew.delete(0, tk.END)
self.var_Sprite.delete(0, tk.END)
self.var_Coke.delete(0, tk.END)
self.var_BlueBand.delete(0, tk.END)
self.var_Mumtaz.delete(0, tk.END)
self.var_ChickenSpread.delete(0, tk.END)
self.var_Nutella.delete(0, tk.END)
self.var_Olpers.delete(0, tk.END)
self.var_Prince.delete(0, tk.END)
self.var_Sooper.delete(0, tk.END)
self.var_Rio.delete(0, tk.END)
self.var_Tuc.delete(0, tk.END)
self.var_Chocolatto.delete(0, tk.END)
self.var_MilkPak.delete(0, tk.END)
self.var_Omung.delete(0, tk.END)
self.var_BakeryMilk.delete(0, tk.END)
self.total_label.configure(text='')
self.receipt_text.delete('1.0', tk.END)

# Pack the button into the GUI

root = tk.Tk()
my_gui = BakeryApp(root)
frame = tk.Frame(root, height=7, width=1300, bg="black")

# Pack the frame to the window


frame.place(x=0,y=208)
root.config(bg="#23C4ED")
root.title('Bakery Management System')
image = tk.PhotoImage(file="212.png",width='300',height='170')
root.iconbitmap("22.ico")
# Create a label to display the image
label = tk.Label(image=image)
label.place(x=0,y=0)
root.iconbitmap("22.ico")
root.mainloop()

You might also like