【餐厅点餐平台|四】UI设计+效果展示

餐厅点餐平台导航
【餐厅点餐平台|一】项目描述+需求分析 https://blog.csdn.net/weixin_46291251/article/details/126414430
【餐厅点餐平台|二】总体设计 https://blog.csdn.net/weixin_46291251/article/details/126422811
【餐厅点餐平台|三】模块设计 https://blog.csdn.net/weixin_46291251/article/details/126422826
【餐厅点餐平台|四】UI设计+效果展示 https://blog.csdn.net/weixin_46291251/article/details/126422844
【源码下载】 https://download.csdn.net/download/weixin_46291251/86404328


文章目录

  • 五:UI设计
    • 5.1登录/注册界面:
      • 流程概览
      • 登录
      • 注册
    • 5.2商家功能界面:
      • 流程概览
      • 打开窗口
        • 打开窗口
        • 点餐
        • 选择套餐内容窗口
        • 提交订单
      • 添加菜品
        • 添加单品
        • 添加套餐
      • 窗口申请
      • 加盟申请
      • 添加折扣
    • 5.3管理员界面
      • 流程概览
      • 加盟审批
      • 窗口审批
      • 菜品审批
      • 添加窗口
  • 六:代码实现
    • 6.1商家系统效果展现
      • 登录模块效果展现
      • 功能模块效果展现
    • 6.2管理员系统效果展现
      • 登录模块效果展现
      • 功能模块效果展现

五:UI设计

UI设计分为三个模块,分别是登录/注册界面;商家功能界面和管理员功能界面。

5.1登录/注册界面:

流程概览

img

登录

界面设计:界面中账号和密码输入框为QLineEdit类型;

用户类型选择为QCheckBox,设置其为互斥框,用户只能选一个;

登录/注册按钮为QPushButton,点击按钮进行相应功能实现。

运行程序,弹出登录/注册界面,用户选择功能;

img

​ 用户输入账号(手机号)和密码,选择用户类型后登录。若未选择用户类型,弹出“类型未选择”窗口。按下登录按钮将获取到的账号,密码传给后端,后端执行登录函数,并接收来自后端返回的执行结果。如果弹出failed open窗口,表示未连接到数据库;弹出success框,表示数据库连接成功。如果账号密码输入错误,弹出“账号密码不匹配,请重新输入”提示;账号密码输入正确,则进入相应用户页面;

注册

界面设计:界面使用了QLineEdit、QComboBox、QCheckBox、QPushButton和Qstackwidget。

其中,QLineEdit获取用户输入的信息;QComboBox用作性别选择;QCheckBox获取用户类型;QPushButton获取用户相应请求;Qstackwidget用作显示不同的页面。

除了所有类型用户都需要输入的信息外,管理员额外需要输入组织名称、组织地址、组织卡号信息。使用QStackwidget实现如下:在widget中添加一个QStackwidget控件,在控件中添加两个页面,页面0:内容为空,界面1:显示管理员需要输入的其他信息。

初始打开注册界面时,显示界面0。对类型选择的QCheckBox设置状态改变槽函数,当选择管理员时,弹出界面1;选择商家时,弹出界面0。

img img

执行逻辑:用户选择类型并填入相应信息,点击确定注册按钮,将数据传给后端,执行注册函数,接收后端返回的执行结果。如果返回结果是True,弹出“注册成功”窗口;如果是False,弹出“注册失败,信息输入不合法”窗口。如果注册成功,将返回登陆界面进行登录。

5.2商家功能界面:

流程概览

img

img

界面设计:界面上方是widget中包含三个QLabel,QLabel1显示固定文本“商家管理系统”;QLabel在商家管理界面打开时,显示商家名字;QLabel3在商家打开窗口时,显示窗口名称。包含5个QPushButton,分别是五个功能实现按钮。

界面总体使用QStackwidget实现六个页面的切换:

页面0是空白界面,在商家未选择功能时,显示此界面;界面1是打开窗口界面,界面2是添加菜品页面;界面3是窗口申请页面;界面4是加盟申请页面;界面5是添加折扣页面。

打开窗口

img

打开窗口

用户点击打开窗口按钮,显示下图所示widget并向后端发出请求获取当前可开启窗口信息。widget由一个QTableWidget和一个QPushButton组成。QTableWidget显示从后端传来的当前可以开启的窗口的信息。

img

用户点击需要打开窗口的勾选框,并点击确定按钮,即可获取到商家所选择窗口的信息,向后端请求获取此窗口的菜品信息,并将其显示在页面1上。

菜品有三种类型:1.单品;2.套餐;3.不可选(例如:番茄酱),为单品时,右方选择框显示“添加”按钮;为套餐时,右方选择框显示“选套餐”按钮;为不可选时,右方选择框显示“自能看,不能选”文本。

界面1如下图所示:

img

点餐

界面设计:点餐界面显示两个QTablewidget框,左方的框中内容为本窗口可点的菜品,在QTablewidget第六列中插入button,并在插入时对每个button进行添加槽函数;,使其可以能够实时获取商家点击了哪个按钮并在右侧对订单信息进行显示。添加套餐时首先对套餐的内容进行选择,选择完成后将订单信息显示在右侧QTablewidget框中。

商家打开窗口后,即可根据学生的需求进行点餐:

\1. 选择单品添加时,右方订单信息显示框会实时显示已点的菜品。

\2. 选择套餐时,首先弹出“点套餐,显示下一个窗口”提示,点击确定,跳转到选择套餐详细信息窗口。

img

选择套餐内容窗口

界面设计:套餐界面总体上显示一个QListWidget和一个QPushButton。

List:List中显示不同类型的菜单的菜品,list的每一行都是一个QTableWidge,每一个菜单由一个table显示。

table:table内容设计为三行若干列,第一行展示菜品图片,第二行显示菜品名称,第三行放置添加菜品button;第一列显示该菜单的描述信息,从第二列开始动态添加各个菜品的选择信息,可添加若干个。

添加button:添加槽函数:功能1:每点击选择一个菜品,第一列的菜品份数显示减1,若为0则表示button不可选择点击;功能2:对QPushButton进行了重新封装,增加了button的位置信息,点击触发槽函数可以识别按钮“身份”,如“0行 0列”,从而对用户点击的按钮对应菜单进行匹配。

提交订单button:添加槽函数:将上述按钮的添加结果添加到订单中,并关闭套餐界面,返回点餐界面。

img

提交订单

img

界面设计:界面包含两个tablewidget、一个label和一个button;

tablewidget1用来显示订单详细信息;tablewidget2有两列,第一列动态显示当前可选择的折扣,第二列是折扣勾选框。添加槽函数:当对勾选框状态发生变化时,动态获取当前选择的折扣信息,并将当前的折扣信息发送给后端,并发送重新计算价格的信息,将后端返回的价格动态显示在label上。

label:label内容格式为:“订单价格为:xx”,用来显示当前订单总价格。

button:对button按下添加槽函数,按下槽函数将当前订单中餐品信息、餐品份数及总价发送给后端,请求后端结算,接收后端发送的订单是否结算成功的结果,弹出相应的提示框。

添加菜品

img

添加单品

点击添加菜品按钮,显示界面2。

img

界面设计:界面包含四个LineEdit、一个label,一个ComboBox,两个按钮。

LineEdit:LineEdit获取菜品的名称、单位、总价、描述信息。

ComboBox:ComboBox显示菜品类型的三个选项,分别是“称重,单价,组合”。添加槽函数:当选择“组合”时,弹出添加套餐界面。

label:label显示食物对应的图片。

button:“添加图片”按钮,添加槽函数,显示本机文件夹,选择jpg或png格式的图片,对图片进行裁剪及按比例缩放,将其显示在label中。

“确定”按钮,添加槽函数,获取当前界面上所有信息并组合成结构体,将结构体传给后端并发送添加菜品的请求。

添加套餐

​ 在(1)中的菜品类型中选择组合时,表示要添加套餐,弹出添加套餐界面。

img

界面设计:首先是右侧的Qtablewidget,其中显示了当前店内可点单的单品,商家对其中单品进行选择,对tablewidget中插入的checkbox添加槽函数,可以实时获取被勾选的框。

​ button:按下add按钮是在套餐中加入一类,例如盖饭中的“两荤两素”,其中“荤菜”就是一类,“素菜”是另一类。在添加荤菜时,勾选右侧的勾选框,然后选数量为2,类型名称填荤菜,点击add,即添加成功;添加素菜与此类似。

在套餐内容添加完成后,点击“套餐组合完成”,即可结束添加套餐,并将套餐信息发送给后端并请求添加套餐。

窗口申请

img

点击窗口申请显示界面4

img

界面设计:界面4包含tablewidget、一个button和一个Lineedit。

tablewidget:第一列插入checkbox控件供商家勾选,二三列显示当前可申请的窗口的地址和收租方式。

LineEdit:输入商家所设置的窗口名称。

button:添加槽函数,从界面获取勾选的窗口和窗口名称。点击按钮,即可将要申请的窗口的信息传给后端,并发送加入窗口的请求。

加盟申请

img

img

界面设计:界面4包含tablewidget、一个button。

tablewidget:第一列插入checkbox控件供商家勾选,二三列显示当前可申请的组织的名称和地址。

button:添加槽函数,从界面获取勾选的组织。点击按钮,即可将要加盟的组织的信息传给后端,并发送加盟的请求。

添加折扣

img

img

界面设计:包含一个ComboBox、一个spinbox和一个button。

ComboBox:供商家选择打折方式是满减还是打折。

spinbox:供商家选择折扣力度。

button:添加槽函数,点击按钮,获取界面的打折方式和折扣力度,将打折信息传给后端并发送添加打折的请求。根据后端返回的结果进行显示。

5.3管理员界面

流程概览

img

img

管理员登陆成功,右上方显示组织名称;有四个功能,加盟审批、窗口审批、菜品审批,添加窗口。分别为界面1,界面2,界面3,界面4。

加盟审批

img

界面设计:包含一个tablewidget和两个button。

tablewidget:tablewidget第一列插入ckeckbox类型勾选框,其余列显示当前需要审批的加盟的商家id,名称和审批id,一个管理员只能审批自己管理的组织。信息动态显示。

button:分别是审核通过和审核不通过,添加点击按钮槽函数,槽函数获取tablewidget中的被勾选的信息并将其传给后端,发送审核通过/不通过的请求。当点击按钮之后,完成审批,则tablewidget中此信息就会被删除。

窗口审批

img

界面设计:包含一个tablewidget和两个button。

tablewidget:tablewidget第一列插入ckeckbox类型勾选框,其余列显示当前需要审批的窗口位置、名称,商家姓名,商家电话和审批id,一个管理员只能审批自己管理的组织中的窗口。信息动态显示。

button:分别是审核通过和审核不通过,添加点击按钮槽函数,槽函数获取tablewidget中的被勾选的信息并将其传给后端,发送审核通过/不通过的请求。当点击按钮之后,完成审批,则tablewidget中此信息就会被删除。

菜品审批

img

界面设计:包含一个tablewidget和两个button。

tablewidget:tablewidget第一列插入ckeckbox类型勾选框,第二列插入label控件显示菜品图片,其余列显示当前需要添加的菜品的窗口名字,菜品名称,单价,计价方式,单位和菜品描述。一个管理员只能审批自己管理的窗口。信息动态显示。

button:分别是审核通过和审核不通过,添加点击按钮槽函数,槽函数获取tablewidget中的被勾选的信息并将其传给后端,发送审核通过/不通过的请求。当点击按钮之后,完成审批,则tablewidget中此信息就会被删除。

添加窗口

img

界面设计:包含一个LineEdit、一个ComboBox和一个button。

LineEdit:管理员输入窗口位置

ComboBox:管理员选择收租类型,有两种:日租、利润收租。

button:添加槽函数,点击确定,获取LineEdit和ComboBox的信息发送给后端,并请求添加窗口。根据返回结果进行显示。

六:代码实现

代码实现系统功能分为基于用户种类两个模块展现:商家模块与管理员模块。

6.1商家系统效果展现

img

登录模块效果展现

若用户没有尚未注册账号则点击注册进入注册界面,勾选商家提示框,填写相应信息,若填写无误则注册成功:

img

注册成功之后返回登陆界面,用户勾选商家提示框,填写相关信息,填写无误则登陆成功进入主界面,否则弹出报错信息,并返回登陆界面:

img

功能模块效果展现

用户登陆成功之后进入系统主界面,商家在此界面可选择打开窗口点菜、添加菜品、窗口申请、加盟申请、添加折等多种功能:

功能展示一:打开窗口点菜。

img

若选择套餐类型,则打开套餐详情页,提交订单后再返回点餐页面结算。

img

提交订单:

img

功能展示二:添加菜品。

img

若要添加套餐,则选择组和菜品类型,打开组合详情页面进行设置:

img

功能展示三:窗口申请。

img

功能展示四:加盟申请

img

功能展示五:添加折扣。

img

6.2管理员系统效果展现

img

登录模块效果展现

对于登录模块,管理员几乎与上文中的商家相同,唯一的不同点既是管理员在注册时需要输入对应组织相关信息:

img

功能模块效果展现

注册、登录完成之后管理员进入管理员系统主界面,管理员在此界面可选择加盟审批、菜品审批、窗口审批、添加窗口门面等功能。

l 功能展示一:加盟审批。

img

功能展示二:窗口审批。

img

功能展示三:菜品审批。

img

功能展示四:添加窗口门面。

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/37941.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【餐饮】智慧餐厅原型模板,餐饮APP,餐饮后台管理系统,Axure设计餐饮APP

软件版本:Axure 8.0(兼容9和10) 作品介绍: 作品包括用户端、员工端以及商户管理(后台管理) 客户端: 外卖点餐:菜品列表、菜品详情、确认订单、地址管理、修改电话、支付订单 堂食点…

基于Androidstudio餐厅点餐选座系统

完成“餐厅点餐系统”的设计。餐厅点餐系统是一个适用于餐饮行业和消费者的软件,顾客可以使用该系统自动点餐,也可到店后由服务人员点餐,系统管理员进行后台管理。 build.gradle (Module: app) 包含当前项目的applicationId、最小适配的Andro…

【花雕学AI】ChatGPT能用表情包猜电影,你能猜出来吗?揭秘它的神奇「涌现」能力

关于作者斯蒂芬 我是田纳西州纳什维尔的一名科学作家,负责数学、物理学、天文学和癌症研究。我的书Math Art: Truth, Beauty, and Equations 将于 2019 年 4 月出版。我在后院改建的办公室棚子里工作。我是范德比尔特大学的驻校作家,教授科学传播课程。 …

chatgpt赋能python:Python数据分析中如何快速取到一列数据

Python 数据分析中如何快速取到一列数据 在 Python 数据分析中,我们经常需要取到表格中的某一列数据进行分析或可视化。下面介绍了几种方法,可帮助您快速有效地取得所需要的数据。 1. 使用 Pandas 包获取数据 Pandas 是 Python 中非常常用的数据分析库…

【花雕学AI】09:发挥ChatGPT最大潜力——产生高质量内容的九种方法和建议

人工智能(AI)是当今科技领域最热门和最有前景的话题之一,它已经渗透到了我们生活和工作的方方面面,给我们带来了许多便利和惊喜。而在AI的众多分支中,自然语言处理(NLP)是最贴近人类的一个领域&…

AI教父Hinton与OpenAI CEO Sam Altman领头预警:AI可能灭绝人类!

整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 经过不到一年的时间,AI 的发展超乎所有人的想象,也大有失控的风险。 就在今天,全球部分顶尖的 AI 研究员、工程师和 CEO 就他们认为 AI 对人类构成的生存威胁发出了新…

多位知名学者最新警告「AI 可能灭绝人类」,ChatGPT 之父和 AI 教父都参与联名,如何理解?

警告“AI可能灭绝人类”是指一些知名学者和专家对于未来人工智能发展的担忧,他们认为如果AI发展得不受控制,可能会导致人类的灭绝。其中,ChatGPT之父和AI教父分别指的是OpenAI的创始人和AI领域的一些权威人物。 这种担忧主要源于以下几个方…

什么是ChatGPT?GPT4和3.5有什么不同

相信今天大家都被GPT刷屏了,我可以使用GPT帮我写文章框架,诗歌,作文等等。 那么,GPT究竟是什么呢? ChatGPT全称为“chat Generative Pre-trained Transformer”,翻译成中文就是生成型预训练变换模型&#…

不直播不露脸也能做短视频变现,想挣点生活费试试这些玩法

大家好,我是我赢助手短视频运营,最近一直有小伙伴问我,做了好久的短视频一直不赚钱,今天总结了一下,做了90天短视频还没赚了试试这5种易变现的玩法。 新手不直播不露脸也能做短视频变现,想在斗音挣点生活费…

实不相瞒,我做海外TikTok搬运视频一年的收入,可能是你10年的工资

被疫情偷走的这几年,听到的关键词几乎都是“难”,“很难”,“非常难”。 裁员成常态,收入大缩水,但花钱的地方却越来越多。 天天熬,夜夜熬。 最终换来的,是口袋空荡荡,日子紧巴巴。 …

短视频获客达人软件详情,精准截流app

互联网99%的项目离不开流量,流量所在之处,必有金钱相随。对于创业者来讲,更要注重精准引流的积累,或许引流没泛流量简单粗暴,但是賺钱更简单,选择互联网创业不是急功近利的儿戏,创业项目就应该有…

用Java代码实现双色球彩票

模拟整个双色球彩票的购买、开奖和中奖流程 一、双色球玩法规则: 1、投注: (1)双色球投注区分为红色球号码区和蓝色球号码区,(2)红色球号码区由1-33共三十三个号码组成,蓝色球号码…

c#文案语音配图片一键生成视频

高手略过吧,功能太简单,我自己都不好意思。。 这个是我自己的需要,做产品类的短视频,东搞西搞剪辑啊啥的,特别麻烦,所以先搞这个最简版,以后再一步步丰富功能。 需求:几张图片生成…

周鸿祎的AI野望

图片|Photo by BoliviaInteligente on Unsplash ©自象限原创 作者|罗辑 编辑|黑豆 排版|李帛锦 可能是大模型,把周鸿祎激活了。 6月27日,周鸿祎,突然晒出了清华大学的博士录取通知书…

张朝阳王石夏伯渝《雪山上的对话》:攀越生死极限,征服永不停步

雷递网 乐天 4月15日 搜狐创始人、董事局主席兼首席执行官张朝阳,与深石集团创始人王石、中国首位用义肢登顶珠峰的登山家夏伯渝相约丽江玉龙雪山,开始了一场来自“雪山上的对话”。 雪山不仅是旅游景点,更是自然生态系统的重要组成部分&…

国产激光雷达第一股诞生/ 周鸿祎称企业不做ChatGPT将被淘汰/雷军要让小米汽车进世界前五…今日更多新鲜事在此...

日报君 发自 凹非寺量子位 | 公众号 QbitAI 好消息:今天星期五。 “坏”消息:听说下周开学,各家小朋友寒假作业写完了嘛? (像我这样)不用赶作业的友友,来一起看看今日份科技要闻放松放松吧~ 雷军…

Meta与微软联手推出开源大型语言模型Llama 2;程序员如何优雅地做副业

🦉 AI新闻 🚀 Meta与微软联手推出开源大型语言模型Llama 2 摘要:Meta和微软近期合作发布了名为Llama 2的开源大型语言模型。该模型旨在帮助开发者和组织构建生成式人工智能工具和体验。Azure客户可以更轻松、安全地在Azure平台上微调和部署…

Python兼职私活接单方法大曝光,这4种方法你知道吗?教你月入三万!

挣钱方法1:接外包爬虫项目 这是网络爬虫最通常的的挣钱方式,通过外包网站,熟人关系接一个个中小规模的爬虫项目,一般向甲方提供数据抓取,数据结构化,数据清洗等服务。 各位新入行的猿人看官大多都会先尝试这个方向&a…

福利,剪映PC版来了~ 支持windos系统和苹果系统

做自媒体的小伙伴应该都知道剪映app,像抖音许多视频剪辑教学都是说,一部手机就能完成剪辑,基本上手机剪辑都是剪映,剪映是抖音家的产品,非常强大的一款视频处理app,即便你之前没有剪辑基础,也能…

办公效率提升,八款功能强大的效率工具不容错过

IconFont http://www.iconfont.cn/ ​IconFont 是阿里推出的免费矢量图标网站。 它上面已经累计72 万个图标。如果你是设计师,你可以把自己制作的图标分享在上面,如果你是用户,它提供了不同的颜色,不同的文件格式的图片可以下载&…