├── README.md └── super.py /README.md: -------------------------------------------------------------------------------- 1 | # supermarcket-python 2 | مشروع سوبر ماركيت مع الفواتير وحفظها 3 | - 👋 Hi, I’m @Rakwan007 (Rakwan Ali) 4 | - 👀 I’m interested in ... 5 | - 🌱 I’m currently learning ... 6 | - 💞️ I’m looking to collaborate on ... 7 | - 📫 How to reach me ... 8 | 9 | - My Channal on youtube : 10 | https://www.youtube.com/@Rakwan 11 | - My Account on Facebook : 12 | https://www.facebook.com/rakwan.ali.77 13 | - My Account on telegram : 14 | https://t.me/RAKWANO 15 | - My Account on Instegram : 16 | https://www.instagram.com/rakwan47 17 | 21 | -------------------------------------------------------------------------------- /super.py: -------------------------------------------------------------------------------- 1 | from tkinter import * 2 | import math , random , os 3 | from tkinter import messagebox 4 | class Super: 5 | def __init__(self,root): 6 | self.root=root 7 | self.root.geometry('1300x700+30+10') 8 | self.root.title('Super-Market: سوبر ماركت') 9 | self.root.resizable(False,False) 10 | #self.root.iconbitmap('D:\\icone.ico') 11 | title = Label(self.root , text='ادارة المشاريع : سوبر ماركت',fg='white',bg='#0B2F3A',font=('tajawal',15)) 12 | title.pack(fill=X) 13 | # ========= Variable ================ 14 | self.q1=IntVar() 15 | self.q2=IntVar() 16 | self.q3=IntVar() 17 | self.q4=IntVar() 18 | self.q5=IntVar() 19 | self.q6=IntVar() 20 | self.q7=IntVar() 21 | self.q8=IntVar() 22 | self.q9=IntVar() 23 | self.q10=IntVar() 24 | self.q11=IntVar() 25 | self.q12=IntVar() 26 | self.q13=IntVar() 27 | self.q14=IntVar() 28 | self.q15=IntVar() 29 | self.q16=IntVar() 30 | self.q17=IntVar() 31 | self.q18=IntVar() 32 | self.qq1=IntVar() 33 | self.qq2=IntVar() 34 | self.qq3=IntVar() 35 | self.qq4=IntVar() 36 | self.qq5=IntVar() 37 | self.qq6=IntVar() 38 | self.qq7=IntVar() 39 | self.qq8=IntVar() 40 | self.qq9=IntVar() 41 | self.qq10=IntVar() 42 | self.qq11=IntVar() 43 | self.qq12=IntVar() 44 | self.qq13=IntVar() 45 | self.qq14=IntVar() 46 | self.qq15=IntVar() 47 | self.qq16=IntVar() 48 | self.qq17=IntVar() 49 | self.qq18=IntVar() 50 | self.qqq1=IntVar() 51 | self.qqq2=IntVar() 52 | self.qqq3=IntVar() 53 | self.qqq4=IntVar() 54 | self.qqq5=IntVar() 55 | self.qqq6=IntVar() 56 | self.qqq7=IntVar() 57 | self.qqq8=IntVar() 58 | self.qqq9=IntVar() 59 | self.qqq10=IntVar() 60 | self.qqq11=IntVar() 61 | self.qqq12=IntVar() 62 | self.qqq13=IntVar() 63 | self.qqq14=IntVar() 64 | self.qqq15=IntVar() 65 | 66 | self.bacoliat=StringVar() 67 | self.adoat=StringVar() 68 | self.kahraba=StringVar() 69 | 70 | self.nemo=StringVar() 71 | self.phono=StringVar() 72 | self.fatora=StringVar() 73 | x=random.randint(1000,9999) 74 | self.fatora.set(str(x)) 75 | self.searcho=StringVar() 76 | # ========= Customer DATA ========== 77 | F1 = Frame(root,bd=2,width=338,height=170,bg='#0B4C5F') 78 | F1.place(x=961,y=35) 79 | tit = Label(F1,text=': بيانات المشتري ',font=('tajawal',13,'bold'),bg='#0B4C5F',fg='tomato') 80 | tit.place(x=185,y=0) 81 | his_name = Label(F1,text='اسم المشتري',font=('tajawal',10),bg='#0B4C5F',fg='white') 82 | his_name.place(x=230,y=40) 83 | his_phone = Label(F1,text='رقم المشتري',font=('tajawal',10),bg='#0B4C5F',fg='white') 84 | his_phone.place(x=235,y=70) 85 | bill_num = Label(F1,text='رقم الفاتورة',font=('tajawal',10),bg='#0B4C5F',fg='white') 86 | bill_num.place(x=242,y=100) 87 | Ent_name=Entry(F1,justify='center',textvariable=self.nemo) 88 | Ent_name.place(x=90,y=42) 89 | Ent_phone=Entry(F1,justify='center',textvariable=self.phono) 90 | Ent_phone.place(x=90,y=72) 91 | Ent_bill=Entry(F1,justify='center',textvariable=self.fatora) 92 | Ent_bill.place(x=90,y=102) 93 | btn_customer = Button(F1, text='بحث',font=('tajawal',10),width=10,height=4,bg='white',command=self.find) 94 | btn_customer.place(x=3,y=40) 95 | titdd = Label(F1,text='[ الفواتير ]',font=('tajawal',13,'bold'),bg='#0B4C5F',fg='gold') 96 | titdd.place(x=125,y=135) 97 | 98 | #======== Bill info ========= 99 | F3 = Frame(root,bd=2,width=338,height=399,bg='white') 100 | F3.place(x=955,y=205) 101 | scrol_y= Scrollbar(F3,orient=VERTICAL) 102 | self.txtarea=Text(F3,yscrollcommand=scrol_y.set) 103 | scrol_y.pack(side=LEFT,fill=Y) 104 | scrol_y.config(command=self.txtarea.yview) 105 | self.txtarea.pack(fill=BOTH,expand=1) 106 | #======== Price ============= 107 | F4 = Frame(root,bd=2,width=657,height=112,bg='#0B4C5F') 108 | F4.place(x=641,y=587) 109 | hesab=Button(F4,text='الحساب',width=13,height=1,font='tajawal',bg='#DBA901',command=self.total) 110 | hesab.place(x=537,y=10) 111 | fatora=Button(F4,text='تصدير فاتورة',width=13,height=1,font='tajawal',bg='#DBA901',command=self.billing) 112 | fatora.place(x=537,y=55) 113 | clear=Button(F4,text='افراغ الحقول',width=13,height=1,font='tajawal',bg='#DBA901',command=self.clear) 114 | clear.place(x=417,y=10) 115 | exite=Button(F4,text='اغلاق البرنامج',width=13,height=1,font='tajawal',bg='#DBA901') 116 | exite.place(x=417,y=55) 117 | lblo1=Label(F4,text='حساب الكلي البقوليات',font=('tajawal',10,'bold'),bg='#0B4C5F',fg='gold') 118 | lblo1.place(x=220,y=10) 119 | lblo2=Label(F4,text='حساب اللوزام المنزلية',font=('tajawal',10,'bold'),bg='#0B4C5F',fg='gold') 120 | lblo2.place(x=220,y=40) 121 | lblo3=Label(F4,text='حسـاب ادوات الـكهرباء',font=('tajawal',10,'bold'),bg='#0B4C5F',fg='gold') 122 | lblo3.place(x=220,y=70) 123 | ento1=Entry(F4,width=24,textvariable=self.bacoliat) 124 | ento1.place(x=40,y=12) 125 | ento2=Entry(F4,width=24,textvariable=self.adoat) 126 | ento2.place(x=40,y=42) 127 | ento3=Entry(F4,width=24,textvariable=self.kahraba) 128 | ento3.place(x=40,y=72) 129 | #======== Tools[1] ============ 130 | FF1 = Frame(root,bd=2,width=318,height=664,bg='#0B4C5F') 131 | FF1.place(x=1,y=35) 132 | t = Label(FF1,text='الـبقوليات',font=('tajawal',13,'bold'),bg='#0B4C5F',fg='gold') 133 | t.place(x=120,y=0) 134 | bq1=Label(FF1,text='الرز',font=('tajawal',11),bg='#0B4C5F',fg='white') 135 | bq1.place(x=250,y=50) 136 | bq2=Label(FF1,text='برغل',font=('tajawal',11),bg='#0B4C5F',fg='white') 137 | bq2.place(x=240,y=80) 138 | bq3=Label(FF1,text='فاصولياء',font=('tajawal',11),bg='#0B4C5F',fg='white') 139 | bq3.place(x=210,y=110) 140 | bq4=Label(FF1,text='عدس',font=('tajawal',11),bg='#0B4C5F',fg='white') 141 | bq4.place(x=232,y=140) 142 | bq5=Label(FF1,text='معكرونة',font=('tajawal',11),bg='#0B4C5F',fg='white') 143 | bq5.place(x=213,y=170) 144 | bq6=Label(FF1,text='فريكة',font=('tajawal',11),bg='#0B4C5F',fg='white') 145 | bq6.place(x=233,y=200) 146 | bq7=Label(FF1,text='حمص',font=('tajawal',11),bg='#0B4C5F',fg='white') 147 | bq7.place(x=228,y=230) 148 | bq8=Label(FF1,text='فول',font=('tajawal',11),bg='#0B4C5F',fg='white') 149 | bq8.place(x=240,y=270) 150 | bq9=Label(FF1,text='الملح',font=('tajawal',11),bg='#0B4C5F',fg='white') 151 | bq9.place(x=230,y=300) 152 | bq10=Label(FF1,text='سكر',font=('tajawal',11),bg='#0B4C5F',fg='white') 153 | bq10.place(x=233,y=330) 154 | bq11=Label(FF1,text='فلفل اسود',font=('tajawal',11),bg='#0B4C5F',fg='white') 155 | bq11.place(x=200,y=370) 156 | bq12=Label(FF1,text='فلفل احمر',font=('tajawal',11),bg='#0B4C5F',fg='white') 157 | bq12.place(x=200,y=400) 158 | bq13=Label(FF1,text='اللوبيا ',font=('tajawal',11),bg='#0B4C5F',fg='white') 159 | bq13.place(x=230,y=430) 160 | bq14=Label(FF1,text=' الادمامي',font=('tajawal',11),bg='#0B4C5F',fg='white') 161 | bq14.place(x=210,y=470) 162 | bq15=Label(FF1,text='القمح ',font=('tajawal',11),bg='#0B4C5F',fg='white') 163 | bq15.place(x=230,y=500) 164 | bq16=Label(FF1,text='الشعير ',font=('tajawal',11),bg='#0B4C5F',fg='white') 165 | bq16.place(x=220,y=530) 166 | bq17=Label(FF1,text='الشوفان ',font=('tajawal',11),bg='#0B4C5F',fg='white') 167 | bq17.place(x=210,y=570) 168 | bq18=Label(FF1,text=' الذرة',font=('tajawal',11),bg='#0B4C5F',fg='white') 169 | bq18.place(x=230,y=600) 170 | bqent1=Entry(FF1,width=12,textvariable=self.q1) 171 | bqent1.place(x=70,y=50) 172 | bqent2=Entry(FF1,width=12,textvariable=self.q2) 173 | bqent2.place(x=70,y=80) 174 | bqent3=Entry(FF1,width=12,textvariable=self.q3) 175 | bqent3.place(x=70,y=110) 176 | bqent4=Entry(FF1,width=12,textvariable=self.q4) 177 | bqent4.place(x=70,y=140) 178 | bqent5=Entry(FF1,width=12,textvariable=self.q5) 179 | bqent5.place(x=70,y=170) 180 | bqent6=Entry(FF1,width=12,textvariable=self.q6) 181 | bqent6.place(x=70,y=200) 182 | bqent7=Entry(FF1,width=12,textvariable=self.q7) 183 | bqent7.place(x=70,y=230) 184 | bqent8=Entry(FF1,width=12,textvariable=self.q8) 185 | bqent8.place(x=70,y=270) 186 | bqent9=Entry(FF1,width=12,textvariable=self.q9) 187 | bqent9.place(x=70,y=300) 188 | bqent10=Entry(FF1,width=12,textvariable=self.q10) 189 | bqent10.place(x=70,y=330) 190 | bqent11=Entry(FF1,width=12,textvariable=self.q11) 191 | bqent11.place(x=70,y=370) 192 | bqent12=Entry(FF1,width=12,textvariable=self.q12) 193 | bqent12.place(x=70,y=400) 194 | bqent13=Entry(FF1,width=12,textvariable=self.q13) 195 | bqent13.place(x=70,y=430) 196 | bqent14=Entry(FF1,width=12,textvariable=self.q14) 197 | bqent14.place(x=70,y=480) 198 | bqent15=Entry(FF1,width=12,textvariable=self.q15) 199 | bqent15.place(x=70,y=510) 200 | bqent16=Entry(FF1,width=12,textvariable=self.q16) 201 | bqent16.place(x=70,y=540) 202 | bqent17=Entry(FF1,width=12,textvariable=self.q17) 203 | bqent17.place(x=70,y=570) 204 | bqent18=Entry(FF1,width=12,textvariable=self.q18) 205 | bqent18.place(x=70,y=600) 206 | 207 | 208 | #========== Tools[2] =============== 209 | FF2 = Frame(root,bd=2,width=318,height=664,bg='#0B4C5F') 210 | FF2.place(x=321,y=35) 211 | tt = Label(FF2,text='اللوازم المنزلية',font=('tajawal',13,'bold'),bg='#0B4C5F',fg='gold') 212 | tt.place(x=120,y=0) 213 | bqr1=Label(FF2,text='مصفاة',font=('tajawal',12),bg='#0B4C5F',fg='white') 214 | bqr1.place(x=228,y=50) 215 | bqr2=Label(FF2,text='صحن',font=('tajawal',12),bg='#0B4C5F',fg='white') 216 | bqr2.place(x=233,y=80) 217 | bqr3=Label(FF2,text='كأس',font=('tajawal',12),bg='#0B4C5F',fg='white') 218 | bqr3.place(x=234,y=110) 219 | bqr4=Label(FF2,text='ابريق',font=('tajawal',12),bg='#0B4C5F',fg='white') 220 | bqr4.place(x=237,y=140) 221 | bqr5=Label(FF2,text='سكين',font=('tajawal',12),bg='#0B4C5F',fg='white') 222 | bqr5.place(x=226,y=170) 223 | bqr6=Label(FF2,text='شوك',font=('tajawal',12),bg='#0B4C5F',fg='white') 224 | bqr6.place(x=233,y=200) 225 | bqr7=Label(FF2,text='طنجرة',font=('tajawal',12),bg='#0B4C5F',fg='white') 226 | bqr7.place(x=228,y=230) 227 | bqr8=Label(FF2,text='سلة',font=('tajawal',12),bg='#0B4C5F',fg='white') 228 | bqr8.place(x=240,y=270) 229 | bqr9=Label(FF2,text='ملاعق',font=('tajawal',12),bg='#0B4C5F',fg='white') 230 | bqr9.place(x=230,y=300) 231 | bqr10=Label(FF2,text='صينية',font=('tajawal',12),bg='#0B4C5F',fg='white') 232 | bqr10.place(x=233,y=330) 233 | bqr11=Label(FF2,text='وعاء الخلط',font=('tajawal',12),bg='#0B4C5F',fg='white') 234 | bqr11.place(x=200,y=370) 235 | bqr12=Label(FF2,text='فتاحة علب',font=('tajawal',12),bg='#0B4C5F',fg='white') 236 | bqr12.place(x=200,y=400) 237 | bqr13=Label(FF2,text='مقشرة',font=('tajawal',12),bg='#0B4C5F',fg='white') 238 | bqr13.place(x=220,y=430) 239 | bqr14=Label(FF2,text='لوح التقطيع',font=('tajawal',12),bg='#0B4C5F',fg='white') 240 | bqr14.place(x=190,y=470) 241 | bqr15=Label(FF2,text='حفارة',font=('tajawal',12),bg='#0B4C5F',fg='white') 242 | bqr15.place(x=230,y=500) 243 | bqr16=Label(FF2,text='سلة قمامة',font=('tajawal',12),bg='#0B4C5F',fg='white') 244 | bqr16.place(x=196,y=530) 245 | bqr17=Label(FF2,text='منفضة',font=('tajawal',12),bg='#0B4C5F',fg='white') 246 | bqr17.place(x=219,y=570) 247 | bqr18=Label(FF2,text='اكياس',font=('tajawal',12),bg='#0B4C5F',fg='white') 248 | bqr18.place(x=225,y=600) 249 | bqrnt1=Entry(FF2,width=12,textvariable=self.qq1) 250 | bqrnt1.place(x=70,y=50) 251 | bqrnt2=Entry(FF2,width=12,textvariable=self.qq2) 252 | bqrnt2.place(x=70,y=80) 253 | bqrnt3=Entry(FF2,width=12,textvariable=self.qq3) 254 | bqrnt3.place(x=70,y=110) 255 | bqrnt4=Entry(FF2,width=12,textvariable=self.qq4) 256 | bqrnt4.place(x=70,y=140) 257 | bqrnt5=Entry(FF2,width=12,textvariable=self.qq5) 258 | bqrnt5.place(x=70,y=170) 259 | bqrnt6=Entry(FF2,width=12,textvariable=self.qq6) 260 | bqrnt6.place(x=70,y=200) 261 | bqrnt7=Entry(FF2,width=12,textvariable=self.qq7) 262 | bqrnt7.place(x=70,y=230) 263 | bqrnt8=Entry(FF2,width=12,textvariable=self.qq8) 264 | bqrnt8.place(x=70,y=270) 265 | bqrnt9=Entry(FF2,width=12,textvariable=self.qq9) 266 | bqrnt9.place(x=70,y=300) 267 | bqrnt10=Entry(FF2,width=12,textvariable=self.qq10) 268 | bqrnt10.place(x=70,y=330) 269 | bqrnt11=Entry(FF2,width=12,textvariable=self.qq11) 270 | bqrnt11.place(x=70,y=370) 271 | bqrnt12=Entry(FF2,width=12,textvariable=self.qq12) 272 | bqrnt12.place(x=70,y=400) 273 | bqrnt13=Entry(FF2,width=12,textvariable=self.qq13) 274 | bqrnt13.place(x=70,y=430) 275 | bqrnt14=Entry(FF2,width=12,textvariable=self.qq14) 276 | bqrnt14.place(x=70,y=480) 277 | bqrnt15=Entry(FF2,width=12,textvariable=self.qq15) 278 | bqrnt15.place(x=70,y=510) 279 | bqrnt16=Entry(FF2,width=12,textvariable=self.qq16) 280 | bqrnt16.place(x=70,y=540) 281 | bqrnt17=Entry(FF2,width=12,textvariable=self.qq17) 282 | bqrnt17.place(x=70,y=570) 283 | bqrnt18=Entry(FF2,width=12,textvariable=self.qq18) 284 | bqrnt18.place(x=70,y=600) 285 | 286 | 287 | 288 | 289 | #====== Tools[3] ================= 290 | FF3 = Frame(root,bd=2,width=318,height=550,bg='#0B4C5F') 291 | FF3.place(x=641,y=35) 292 | ttt = Label(FF3,text='ادوات كهربائية',font=('tajawal',13,'bold'),bg='#0B4C5F',fg='gold') 293 | ttt.place(x=120,y=0) 294 | br1=Label(FF3,text='مكنسة',font=('tajawal',12),bg='#0B4C5F',fg='white') 295 | br1.place(x=228,y=50) 296 | br2=Label(FF3,text='تلفزيون',font=('tajawal',12),bg='#0B4C5F',fg='white') 297 | br2.place(x=233,y=80) 298 | br3=Label(FF3,text='غسالة',font=('tajawal',12),bg='#0B4C5F',fg='white') 299 | br3.place(x=234,y=110) 300 | br4=Label(FF3,text='مكرويف',font=('tajawal',12),bg='#0B4C5F',fg='white') 301 | br4.place(x=230,y=140) 302 | br5=Label(FF3,text='خلاط',font=('tajawal',12),bg='#0B4C5F',fg='white') 303 | br5.place(x=243,y=170) 304 | br6=Label(FF3,text='فرن غاز',font=('tajawal',12),bg='#0B4C5F',fg='white') 305 | br6.place(x=233,y=200) 306 | br7=Label(FF3,text='مقلاة كهرباء',font=('tajawal',12),bg='#0B4C5F',fg='white') 307 | br7.place(x=195,y=230) 308 | br8=Label(FF3,text='مروحة سقف',font=('tajawal',12),bg='#0B4C5F',fg='white') 309 | br8.place(x=200,y=270) 310 | br9=Label(FF3,text='مروحة ارضية',font=('tajawal',12),bg='#0B4C5F',fg='white') 311 | br9.place(x=200,y=300) 312 | br10=Label(FF3,text='تلفزيون 32',font=('tajawal',12),bg='#0B4C5F',fg='white') 313 | br10.place(x=210,y=330) 314 | br11=Label(FF3,text='تلفزيون 43',font=('tajawal',12),bg='#0B4C5F',fg='white') 315 | br11.place(x=210,y=370) 316 | br12=Label(FF3,text='فلتر ماء',font=('tajawal',12),bg='#0B4C5F',fg='white') 317 | br12.place(x=230,y=400) 318 | br13=Label(FF3,text='غسالة اوتو',font=('tajawal',12),bg='#0B4C5F',fg='white') 319 | br13.place(x=210,y=430) 320 | br14=Label(FF3,text='مكواة',font=('tajawal',12),bg='#0B4C5F',fg='white') 321 | br14.place(x=240,y=470) 322 | br15=Label(FF3,text='مبردة',font=('tajawal',12),bg='#0B4C5F',fg='white') 323 | br15.place(x=243,y=500) 324 | bqnt1=Entry(FF3,width=12,textvariable=self.qqq1) 325 | bqnt1.place(x=70,y=50) 326 | bqnt2=Entry(FF3,width=12,textvariable=self.qqq2) 327 | bqnt2.place(x=70,y=80) 328 | bqnt3=Entry(FF3,width=12,textvariable=self.qqq3) 329 | bqnt3.place(x=70,y=110) 330 | bqnt4=Entry(FF3,width=12,textvariable=self.qqq4) 331 | bqnt4.place(x=70,y=140) 332 | bqnt5=Entry(FF3,width=12,textvariable=self.qqq5) 333 | bqnt5.place(x=70,y=170) 334 | bqnt6=Entry(FF3,width=12,textvariable=self.qqq6) 335 | bqnt6.place(x=70,y=200) 336 | bqnt7=Entry(FF3,width=12,textvariable=self.qqq7) 337 | bqnt7.place(x=70,y=230) 338 | bqnt8=Entry(FF3,width=12,textvariable=self.qqq8) 339 | bqnt8.place(x=70,y=270) 340 | bqnt9=Entry(FF3,width=12,textvariable=self.qqq9) 341 | bqnt9.place(x=70,y=300) 342 | bqnt10=Entry(FF3,width=12,textvariable=self.qqq10) 343 | bqnt10.place(x=70,y=330) 344 | bqnt11=Entry(FF3,width=12,textvariable=self.qqq11) 345 | bqnt11.place(x=70,y=370) 346 | bqnt12=Entry(FF3,width=12,textvariable=self.qqq12) 347 | bqnt12.place(x=70,y=400) 348 | bqnt13=Entry(FF3,width=12,textvariable=self.qqq13) 349 | bqnt13.place(x=70,y=430) 350 | bqnt14=Entry(FF3,width=12,textvariable=self.qqq14) 351 | bqnt14.place(x=70,y=480) 352 | bqnt15=Entry(FF3,width=12,textvariable=self.qqq15) 353 | bqnt15.place(x=70,y=510) 354 | self.welcome() 355 | def total(self): 356 | self.rez= self.q1.get()*1.5 357 | self.borgel = self.q2.get()*0.5 358 | self.fasoli = self.q3.get()*1 359 | self.ades = self.q4.get()*1.5 360 | self.makrona = self.q5.get()*2 361 | self.frika = self.q6.get()*2 362 | self.homes = self.q7.get()*1 363 | self.fol = self.q8.get()*1 364 | self.mlah = self.q9.get()*1.5 365 | self.skar = self.q10.get()*1 366 | self.flflahmar = self.q11.get()*1.5 367 | self.flflasoad = self.q12.get()*1 368 | self.lobia = self.q13.get()*1.5 369 | self.admami = self.q14.get()*1 370 | self.qmah = self.q15.get()*2 371 | self.shair = self.q16.get()*1 372 | self.shofan = self.q17.get()*2 373 | self.zara = self.q18.get()*1.5 374 | self.totalito=float( 375 | self.rez+ 376 | self.borgel+ 377 | self.fasoli+ 378 | self.ades+ 379 | self.makrona+ 380 | self.frika+ 381 | self.homes+ 382 | self.fol+ 383 | self.mlah+ 384 | self.skar+ 385 | self.flflahmar+ 386 | self.flflasoad+ 387 | self.lobia+ 388 | self.admami+ 389 | self.qmah+ 390 | self.shair+ 391 | self.shofan+ 392 | self.zara 393 | ) 394 | self.bacoliat.set(str(self.totalito)+" $") 395 | self.rez2= self.qqq1.get()*30 396 | self.borgel2 = self.qqq2.get()*140 397 | self.fasoli2 = self.qqq3.get()*300 398 | self.ades2 = self.qqq4.get()*40 399 | self.makrona2 = self.qqq5.get()*15 400 | self.frika2 = self.qqq6.get()*110 401 | self.homes2 = self.qqq7.get()*20 402 | self.fol2 = self.qqq8.get()*10 403 | self.mlah2 = self.qqq9.get()*15 404 | self.skar2 = self.qqq10.get()*140 405 | self.flflahmar2 = self.qqq11.get()*230 406 | self.flflasoad2 = self.qqq12.get()*130 407 | self.lobia2 = self.qqq13.get()*430 408 | self.admami2 = self.qqq14.get()*15 409 | self.qmah2 = self.qqq15.get()*90 410 | self.khrba=float( 411 | self.rez2+ 412 | self.borgel2+ 413 | self.fasoli2+ 414 | self.ades2+ 415 | self.makrona2+ 416 | self.frika2+ 417 | self.homes2+ 418 | self.fol2+ 419 | self.mlah2+ 420 | self.skar2+ 421 | self.flflahmar2+ 422 | self.flflasoad2+ 423 | self.lobia2+ 424 | self.admami2+ 425 | self.qmah2 426 | ) 427 | self.kahraba.set(str(self.khrba)+" $") 428 | self.rez1= self.qq1.get()*1.5 429 | self.borgel1 = self.qq2.get()*0.5 430 | self.fasoli1 = self.qq3.get()*1 431 | self.ades1 = self.qq4.get()*1.5 432 | self.makrona1 = self.qq5.get()*2 433 | self.frika1 = self.qq6.get()*2 434 | self.homes1 = self.qq7.get()*1 435 | self.fol1 = self.qq8.get()*1 436 | self.mlah1 = self.qq9.get()*1.5 437 | self.skar1 = self.qq10.get()*1 438 | self.flflahmar1 = self.qq11.get()*1.5 439 | self.flflasoad1 = self.qq12.get()*1 440 | self.lobia1 = self.qq13.get()*1.5 441 | self.admami1 = self.qq14.get()*1 442 | self.qmah1 = self.qq15.get()*2 443 | self.shair1 = self.qq16.get()*1 444 | self.shofan1 = self.qq17.get()*2 445 | self.zara1 = self.qq18.get()*1.5 446 | self.adoatdd=float( 447 | self.rez1+ 448 | self.borgel1+ 449 | self.fasoli1+ 450 | self.ades1+ 451 | self.makrona1+ 452 | self.frika1+ 453 | self.homes1+ 454 | self.fol1+ 455 | self.mlah1+ 456 | self.skar1+ 457 | self.flflahmar1+ 458 | self.flflasoad1+ 459 | self.lobia1+ 460 | self.admami1+ 461 | self.qmah1+ 462 | self.shair1+ 463 | self.shofan1+ 464 | self.zara1 465 | ) 466 | self.adoat.set(str(self.adoatdd)+" $") 467 | self.all=float(self.totalito+ 468 | self.khrba+ 469 | self.adoatdd 470 | ) 471 | def welcome(self): 472 | self.txtarea.delete('1.0',END) 473 | self.txtarea.insert(END,"\tسوبر ماركت الخبير يرحب بكم") 474 | self.txtarea.insert(END,"\n ====================================") 475 | self.txtarea.insert(END,f"\n\t B.NUM : {self.fatora.get()}") 476 | self.txtarea.insert(END,f"\n\t Name : {self.nemo.get()}") 477 | self.txtarea.insert(END,f"\n\t Phone : {self.phono.get()}") 478 | self.txtarea.insert(END,"\n======================================") 479 | self.txtarea.insert(END,f"\nالسعر\t العدد\t المشتريات ") 480 | self.txtarea.insert(END,"\n======================================") 481 | 482 | 483 | 484 | def billing(self): 485 | if self.nemo.get()=="" or self.phono.get()=="": 486 | messagebox.showerror("حدث خطأ","لا يجوز ترك حقل الاسم ورقم الهاتف فارغا") 487 | elif self.bacoliat.get()=="0.0 $" and self.adoat.get()=="0.0 $" and self.kahraba.get()=="0.0 $": 488 | messagebox.showerror("حدث خطأ"," ليس هناك منتجات محددة ولم يتم اختيار احداها يجب اختيار عدد المنتجات") 489 | else: 490 | self.welcome() 491 | if self.q1.get()!=0: 492 | self.txtarea.insert(END,f"\n {self.rez}\t\t{self.q1.get()}\t\tالرز ") 493 | if self.q2.get()!=0: 494 | self.txtarea.insert(END,f"\n {self.borgel}\t\t{self.q2.get()}\t\tبرغل ") 495 | if self.q3.get()!=0: 496 | self.txtarea.insert(END,f"\n {self.fasoli}\t\t{self.q3.get()}\t\tفاصولياء ") 497 | if self.q4.get()!=0: 498 | self.txtarea.insert(END,f"\n {self.ades}\t\t{self.q4.get()}\t\tعدس ") 499 | if self.q5.get()!=0: 500 | self.txtarea.insert(END,f"\n {self.makrona}\t\t{self.q5.get()}\t\tمعكرونة ") 501 | if self.q6.get()!=0: 502 | self.txtarea.insert(END,f"\n {self.frika}\t\t{self.q6.get()}\t\tفريكة ") 503 | if self.q7.get()!=0: 504 | self.txtarea.insert(END,f"\n {self.homes}\t\t{self.q7.get()}\t\tحمص ") 505 | if self.q8.get()!=0: 506 | self.txtarea.insert(END,f"\n {self.fol}\t\t{self.q8.get()}\t\tفول ") 507 | if self.q9.get()!=0: 508 | self.txtarea.insert(END,f"\n {self.mlah}\t\t{self.q9.get()}\t\tملح ") 509 | if self.q10.get()!=0: 510 | self.txtarea.insert(END,f"\n {self.skar}\t\t{self.q10.get()}\t\tسكر ") 511 | if self.q11.get()!=0: 512 | self.txtarea.insert(END,f"\n {self.flflasoad}\t\t{self.q11.get()}\t فلفل اسود ") 513 | if self.q12.get()!=0: 514 | self.txtarea.insert(END,f"\n {self.flflahmar}\t\t{self.q12.get()}\t فلفل احمر ") 515 | if self.q13.get()!=0: 516 | self.txtarea.insert(END,f"\n {self.lobia}\t\t{self.q13.get()}\t\tاللوبيا ") 517 | if self.q14.get()!=0: 518 | self.txtarea.insert(END,f"\n {self.admami}\t\t{self.q14.get()}\t\tادمامي ") 519 | if self.q15.get()!=0: 520 | self.txtarea.insert(END,f"\n {self.qmah}\t\t{self.q15.get()}\t\tالقمح ") 521 | if self.q16.get()!=0: 522 | self.txtarea.insert(END,f"\n {self.shair}\t\t{self.q16.get()}\t\tالشعير ") 523 | if self.q17.get()!=0: 524 | self.txtarea.insert(END,f"\n {self.shofan}\t\t{self.q17.get()}\t\tالشوفان ") 525 | if self.q18.get()!=0: 526 | self.txtarea.insert(END,f"\n {self.zara}\t\t{self.q18.get()}\t\tالذرة ") 527 | 528 | 529 | 530 | if self.qq1.get()!=0: 531 | self.txtarea.insert(END,f"\n {self.rez1}\t\t{self.qq1.get()}\t\tمصفاة") 532 | if self.qq2.get()!=0: 533 | self.txtarea.insert(END,f"\n {self.borgel1}\t\t{self.qq2.get()}\t\tصحن") 534 | if self.qq3.get()!=0: 535 | self.txtarea.insert(END,f"\n {self.fasoli1}\t\t{self.qq3.get()}\t\tكأس") 536 | if self.qq4.get()!=0: 537 | self.txtarea.insert(END,f"\n {self.ades1}\t\t{self.qq4.get()}\t\tابريق") 538 | if self.qq5.get()!=0: 539 | self.txtarea.insert(END,f"\n {self.makrona1}\t\t{self.qq5.get()}\t\tسكين") 540 | if self.qq6.get()!=0: 541 | self.txtarea.insert(END,f"\n {self.frika1}\t\t{self.qq6.get()}\t\tشوك") 542 | if self.qq7.get()!=0: 543 | self.txtarea.insert(END,f"\n {self.homes1}\t\t{self.qq7.get()}\t\tطنجرة") 544 | if self.qq8.get()!=0: 545 | self.txtarea.insert(END,f"\n {self.fol1}\t\t{self.qq8.get()}\t\tسلة") 546 | if self.qq9.get()!=0: 547 | self.txtarea.insert(END,f"\n {self.mlah1}\t\t{self.qq9.get()}\t\tملاعق") 548 | if self.qq10.get()!=0: 549 | self.txtarea.insert(END,f"\n {self.skar1}\t\t{self.qq10.get()}\t\tصينية") 550 | if self.qq11.get()!=0: 551 | self.txtarea.insert(END,f"\n {self.flflasoad1}\t\t{self.qq11.get()}\t وعاد الخلط") 552 | if self.qq12.get()!=0: 553 | self.txtarea.insert(END,f"\n {self.flflahmar1}\t\t{self.qq12.get()}\t فتاحة علب") 554 | if self.qq13.get()!=0: 555 | self.txtarea.insert(END,f"\n {self.lobia1}\t\t{self.qq13.get()}\t\tمقشرة") 556 | if self.qq14.get()!=0: 557 | self.txtarea.insert(END,f"\n {self.admami1}\t\t{self.qq14.get()}\t لوح التقطيع") 558 | if self.q15.get()!=0: 559 | self.txtarea.insert(END,f"\n {self.qmah1}\t\t{self.qq15.get()}\t\tحفارة") 560 | if self.qq16.get()!=0: 561 | self.txtarea.insert(END,f"\n {self.shair1}\t\t{self.qq16.get()}\t سلة قمامة") 562 | if self.qq17.get()!=0: 563 | self.txtarea.insert(END,f"\n {self.shofan1}\t\t{self.qq17.get()}\t\tمنفضة") 564 | if self.qq18.get()!=0: 565 | self.txtarea.insert(END,f"\n {self.zara1}\t\t{self.qq18.get()}\t\tاكياس") 566 | 567 | if self.qqq1.get()!=0: 568 | self.txtarea.insert(END,f"\n {self.rez1}\t\t{self.qqq1.get()}\t\tمكنسة") 569 | if self.qqq2.get()!=0: 570 | self.txtarea.insert(END,f"\n {self.borgel2}\t\t{self.qqq2.get()}\t تلفزيون") 571 | if self.qqq3.get()!=0: 572 | self.txtarea.insert(END,f"\n {self.fasoli2}\t\t{self.qqq3.get()}\t\tغسالة") 573 | if self.qqq4.get()!=0: 574 | self.txtarea.insert(END,f"\n {self.ades2}\t\t{self.qqq4.get()}\t\tمكرويف") 575 | if self.qqq5.get()!=0: 576 | self.txtarea.insert(END,f"\n {self.makrona2}\t\t{self.qqq5.get()}\t\tخلاط") 577 | if self.qqq6.get()!=0: 578 | self.txtarea.insert(END,f"\n {self.frika2}\t\t{self.qqq6.get()}\t فرن غاز") 579 | if self.qqq7.get()!=0: 580 | self.txtarea.insert(END,f"\n {self.homes2}\t\t{self.qqq7.get()}\t\tمقلاة") 581 | if self.qqq8.get()!=0: 582 | self.txtarea.insert(END,f"\n {self.fol2}\t\t{self.qqq8.get()}\t مروحة سقف") 583 | if self.qqq9.get()!=0: 584 | self.txtarea.insert(END,f"\n {self.mlah2}\t\t{self.qqq9.get()}\t مروحة ارض") 585 | if self.qqq10.get()!=0: 586 | self.txtarea.insert(END,f"\n {self.skar2}\t\t{self.qqq10.get()}\t تلفزيون32") 587 | if self.qqq11.get()!=0: 588 | self.txtarea.insert(END,f"\n {self.flflasoad2}\t\t{self.qqq11.get()}\t تلفزيون43") 589 | if self.qqq12.get()!=0: 590 | self.txtarea.insert(END,f"\n {self.flflahmar2}\t\t{self.qqq12.get()}\t فلتر ماء") 591 | if self.qqq13.get()!=0: 592 | self.txtarea.insert(END,f"\n {self.lobia2}\t\t{self.qqq13.get()}\t غسالة اوتو") 593 | if self.qqq14.get()!=0: 594 | self.txtarea.insert(END,f"\n {self.admami2}\t\t{self.qqq14.get()}\t\tمكواة") 595 | if self.qqq15.get()!=0: 596 | self.txtarea.insert(END,f"\n {self.qmah2}\t\t{self.qqq15.get()}\t\tمبردة") 597 | 598 | self.txtarea.insert(END,"\n......................................") 599 | self.txtarea.insert(END,f"\n\t{self.all} $\t المجموع الكلي") 600 | self.txtarea.insert(END,"\n......................................") 601 | self.savee() 602 | 603 | 604 | 605 | 606 | 607 | 608 | 609 | def savee(self): 610 | op = messagebox.askyesno("هل تريد حفظ الفاتورة ؟","حفظ") 611 | if op > 0 : 612 | self.bb = self.txtarea.get('1.0',END) 613 | f1 = open('D:\\buy\\'+str(self.fatora.get())+".txt","w",encoding="utf-8") 614 | f1.write(self.bb) 615 | f1.close() 616 | else: 617 | return 618 | 619 | 620 | 621 | 622 | 623 | 624 | 625 | 626 | 627 | 628 | 629 | 630 | 631 | 632 | def find(self): 633 | present="no" 634 | for i in os.listdir("D:\\buy\\"): 635 | if i.split('.')[0] == self.fatora.get(): 636 | f1=open(f"D:\\buy\\{i}","r",encoding="utf-8") 637 | self.txtarea.delete('1.0',END) 638 | for d in f1: 639 | self.txtarea.insert(END,d) 640 | self.txtarea.insert(END,'') 641 | f1.close() 642 | present="yes" 643 | if present == "no": 644 | messagebox.showerror('خطأ',' لا توجد اي فاتورة تحمل الرقم الذي كتبته ') 645 | def clear(self): 646 | self.q1.set(0) 647 | self.q2.set(0) 648 | self.q3.set(0) 649 | self.q4.set(0) 650 | self.q5.set(0) 651 | self.q6.set(0) 652 | self.q7.set(0) 653 | self.q8.set(0) 654 | self.q9.set(0) 655 | self.q10.set(0) 656 | self.q11.set(0) 657 | self.q12.set(0) 658 | self.q13.set(0) 659 | self.q14.set(0) 660 | self.q15.set(0) 661 | self.q16.set(0) 662 | self.q17.set(0) 663 | self.q18.set(0) 664 | self.qq1.set(0) 665 | self.qq2.set(0) 666 | self.qq3.set(0) 667 | self.qq4.set(0) 668 | self.qq5.set(0) 669 | self.qq6.set(0) 670 | self.qq7.set(0) 671 | self.qq8.set(0) 672 | self.qq9.set(0) 673 | self.qq10.set(0) 674 | self.qq11.set(0) 675 | self.qq12.set(0) 676 | self.qq13.set(0) 677 | self.qq14.set(0) 678 | self.qq15.set(0) 679 | self.qq16.set(0) 680 | self.qq17.set(0) 681 | self.qq18.set(0) 682 | self.qqq1.set(0) 683 | self.qqq2.set(0) 684 | self.qqq3.set(0) 685 | self.qqq4.set(0) 686 | self.qqq5.set(0) 687 | self.qqq6.set(0) 688 | self.qqq7.set(0) 689 | self.qqq8.set(0) 690 | self.qqq9.set(0) 691 | self.qqq10.set(0) 692 | self.qqq11.set(0) 693 | self.qqq12.set(0) 694 | self.qqq13.set(0) 695 | self.qqq14.set(0) 696 | self.qqq15.set(0) 697 | self.bacoliat.set(0) 698 | self.adoat.set(0) 699 | self.kahraba.set(0) 700 | self.nemo.set('') 701 | self.phono.set('') 702 | self.fatora.set('') 703 | root =Tk() 704 | ob=Super(root) 705 | root.mainloop() --------------------------------------------------------------------------------