import os
import pickle
import sys
import os
from subprocess import call
import sys
try:
from Tkinter import *
except ImportError:
from tkinter import *
try:
import ttk
py3 = False
except ImportError:
import tkinter.ttk as ttk
py3 = True
details_list=[]
def file_save():
NAME_PRO = details_list[0]
ADDRESS_PRO = details_list[1]
MOBILE_NO_PRO = details_list[2]
ROOM_NO_PRO = details_list[3]
PRICE_PRO = details_list[4]
f = open("hotel.dat", "ab")
a=save(NAME_PRO,ADDRESS_PRO,MOBILE_NO_PRO,ROOM_NO_PRO,PRICE_PRO)
pickle.dump(a,f,protocol=2)
f.close()
listq=[str(NAME_PRO),str(ADDRESS_PRO),str(MOBILE_NO_PRO),str(ROOM_NO_PRO),str(PRICE_PRO)]
myVars = {'A':NAME_PRO,"B":ADDRESS_PRO,"C":MOBILE_NO_PRO,"D":ROOM_NO_PRO,"E":PRICE_PRO }
fo=open("receipt.txt","w+")
for h in range(0,5):
fo.write(listq[h]+"\r\n")
fo.close()
call(["python", "recipt.py"])
restart_program()
u = list()
Delux = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
Semi_Delux = (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
General = (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
Joint_Room = (46, 47, 48, 49, 50, 46, 47, 48, 49, 50)
m = [9]
G = []
def restart_program():
python = sys.executable
os.execl(python, python, * sys.argv)
class save:
def __init__(self,NAME_PRO,ADDRESS_PRO,MOBILE_NO_PRO,ROOM_NO_PRO,PRICE_PRO):
self.name=NAME_PRO
self.address=ADDRESS_PRO
self.mobile_no=MOBILE_NO_PRO
self.room_no=ROOM_NO_PRO
self.price=PRICE_PRO
class HOTEL_MANGMENT_checkin:
def __init__(self):
self.NAME=""
self.ADDERESS=""
self.MOBILE=""
self.DAYS=0
self.price=0
self.room=0
def chk_name():
while True:
self.k = str(self.name.get())
a = self.k.isdigit()
if len(self.k) != 0 and a != True:
self.NAME=self.k
self.Text1.insert(INSERT, "name has been inputed""\n")
break
else:
self.Text1.insert(INSERT, "invalid input please input a valid name""\n")
break
def chk_add():
while True:
self.g = str(self.addr.get())
ak = self.g.isdigit()
if len(self.g)!= 0 and ak!=True:
self.ADDERESS=self.g
self.Text1.insert(INSERT, "address has been inputed""\n")
break
else:
self.Text1.insert(INSERT, "invalid input please input a valid address""\n")
break
def chk_mo():
while True:
self.h = str(self.mobile.get())
if self.h.isdigit() == True and len(self.h) != 0 and len(self.h) == 10:
self.MOBILE = self.h
self.Text1.insert(INSERT, "mobile number has been inputed""\n")
break
else:
self.Text1.insert(INSERT, "invalid input please input a valid mobile number""\n")
break
def chk_day():
while True:
self.l = str(self.days.get())
if self.l.isdigit() == True and len(self.l) != 0:
self.DAYS = int(self.l)
self.Text1.insert(INSERT, "days has been inputed""\n")
break
else:
self.Text1.insert(INSERT, "invalid input ""\n")
break
def enter(self):
self.name = self.NAME
self.address = self.ADDERESS
self.mobile_no = self.MOBILE
self.no_of_days = int(self.DAYS)
def tor(self):
if self.ch == 1:
self.price = self.price + (30 * self.no_of_days)
m[0] = 1
elif self.ch == 2:
self.price = self.price + (45 * self.no_of_days)
m[0] = 2
elif self.ch == 3:
self.price = self.price + (76 * self.no_of_days)
m[0] = 3
elif self.ch == 4:
self.price = self.price + (29 * self.no_of_days)
m[0] = 4
def payment_option(self):
op = self.p
if op == 1:
self.Text1.insert(INSERT, "no discount""\n")
elif op == 2:
self.price = self.price - ((self.price * 10) / 100)
self.Text1.insert(INSERT, "10% discount""\n")
def bill(self):
if m[0] == 1:
a = Delux
elif m[0] == 2:
a = Semi_Delux
elif m[0] == 3:
a = General
elif m[0] == 4:
a = Joint_Room
G = []
f2 = open("hotel.dat", "rb")
try:
while True:
s = pickle.load(f2)
k = s.room_no
G.append(k)
continue
except EOFError:
pass
for r in a:
if r not in G:
self.room = r
break
else:
continue
self.room = r
f2.close()
details_list.append(self.name)
details_list.append(self.address)
details_list.append(self.mobile_no)
details_list.append(self.room)
details_list.append(self.price)
file_save()
def submit_clicked():
if self.var1.get()==1 and self.var2.get()==0 and self.var3.get()==0 and self.var4.get()==0 and self.var5.get()==1 and self.var6.get()==0:
self.ch=1
self.p=2
enter(self)
tor(self)
payment_option(self)
bill(self)
elif self.var1.get() == 1 and self.var2.get() == 0 and self.var3.get() == 0 and self.var4.get() == 0 and self.var5.get() == 0 and self.var6.get() == 1:
self.ch = 1
self.p = 1
enter(self)
tor(self)
payment_option(self)
bill(self)
elif self.var1.get() == 0 and self.var2.get() == 1 and self.var3.get() == 0 and self.var4.get() == 0 and self.var5.get() == 0 and self.var6.get() == 1:
self.ch = 2
self.p = 1
enter(self)
tor(self)
payment_option(self)
bill(self)
elif self.var1.get() == 0 and self.var2.get() == 1 and self.var3.get() == 0 and self.var4.get() == 0 and self.var5.get() == 1 and self.var6.get() ==0 :
self.ch = 2
self.p = 2
enter(self)
tor(self)
payment_option(self)
bill(self)
elif self.var1.get() == 0 and self.var2.get() == 0 and self.var3.get() == 1 and self.var4.get() == 0 and self.var5.get() == 0 and self.var6.get() == 1:
self.ch = 3
self.p = 1
enter(self)
tor(self)
payment_option(self)
bill(self)
elif self.var1.get() == 0 and self.var2.get() == 0 and self.var3.get() == 1 and self.var4.get() == 0 and self.var5.get() == 1 and self.var6.get() == 0:
self.ch = 3
self.p = 2
enter(self)
tor(self)
payment_option(self)
bill(self)
elif self.var1.get() == 0 and sel
没有合适的资源?快使用搜索试试~ 我知道了~
Hotel Management System using Python with Source Code.zip
共31个文件
sample:11个
py:6个
head:4个
0 下载量 176 浏览量
2023-11-03
16:42:39
上传
评论
收藏 7.05MB ZIP 举报
温馨提示
Hotel Management System using Python with Source Code.zip
资源推荐
资源详情
资源评论
收起资源包目录
Hotel Management System using Python with Source Code.zip (31个子文件)
Hotel Management System
index.py 6KB
getinfoui.py 6KB
.git
index 842B
HEAD 23B
refs
heads
master 41B
tags
remotes
origin
HEAD 32B
objects
pack
pack-876f1f87fed44f99be29e9b76462d3aae8996f48.pack 7.04MB
pack-876f1f87fed44f99be29e9b76462d3aae8996f48.idx 13KB
info
description 73B
packed-refs 114B
info
exclude 240B
logs
HEAD 238B
refs
heads
master 238B
remotes
origin
HEAD 238B
hooks
post-update.sample 189B
prepare-commit-msg.sample 1KB
commit-msg.sample 896B
pre-receive.sample 544B
update.sample 4KB
pre-commit.sample 2KB
pre-rebase.sample 5KB
applypatch-msg.sample 478B
fsmonitor-watchman.sample 3KB
pre-applypatch.sample 424B
pre-push.sample 1KB
config 343B
receipt.py 2KB
checkoutgui.py 7KB
listgui.py 7KB
hotel.dat 0B
checkin_gui_and_program.py 30KB
共 31 条
- 1
资源评论
xiaoshun007~
- 粉丝: 3859
- 资源: 3128
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功