(1)相关配置信息:
1.整体GUI使用的是最简单的Tkinter库
2.使用pymysql连接后台的mysql数据库restaurant
3.只用了两张表(menu和orders)进行相关操作
(2)展示
1.后台表格结构及数据:
【1】表格结构

【2】预存进去的表格数据

2.系统功能展示(视频):
(1)登录界面(简单版,这里只做演示,没增加图片那些的美化)



(2)可以进行下单,下单了可以催单,也可以退单(这里我后面还打算调整一下,增加一些提示信息之类的),可以查看历史记录、该菜的价格(如果我后期优化想加上菜品的图片那些)~




(3)主要功能函数介绍(具体代码f系更新~)
1. 数据库连接配置
connect_db():创建并返回一个到名为restaurant的数据库的连接。
2. 菜单获取与选择
get_menu():从数据库获取菜单列表并返回。on_menu_select(event):当用户从下拉菜单选择菜品时,更新一个变量以存储选中菜品的ID。
3. 订单处理
validate_quantity():验证用户输入的数量是否有效。check_item_exists(item_id):检查数据库中是否存在指定ID的菜品。add_order():添加一个新的订单到数据库,并提供用户反馈。
4. 订单历史与状态更新
show_history():显示所有订单的历史记录。clear_history():清除所有订单历史记录。select_order_status(order_id):允许用户选择并更新特定订单的状态。update_order_status(order_id, new_status):更新订单状态的通用函数。
5. 特殊订单操作
urge_order():允许用户选择并更新订单状态为“urged”(催单)。cancel_order():允许用户退单并从数据库中删除订单记录。
6. 菜品价格查询
show_price():显示选中菜品的单价。
7. 用户界面与登录
- 创建登录窗口和主窗口,使用
Tkinter和ttk组件。 create_login_window(root):创建并显示登录窗口。check_login(root):验证用户登录信息,并在成功时显示主窗口。
8. 用户界面组件
- 使用
ttk.Combobox、ttk.Label、ttk.Entry和ttk.Button等组件构建用户界面。 - 通过
pack和grid方法布局组件。
9. 错误处理与用户反馈
- 使用
messagebox.showerror()和messagebox.showinfo()提供错误信息和操作反馈。
10. 事件绑定
- 使用事件绑定,
bind('<<ComboboxSelected>>', on_menu_select),响应用户操作。










