当前位置: 首页 > news >正文

自建网站 微信网页版app引导页模板html

自建网站 微信网页版,app引导页模板html,txt做网站如何加图片,网站建设行业新闻文章目录 功能界面用户登录界面显示餐桌状态预定显示所有菜品点餐查看账单结账退出满汉楼 程序框架图项目依赖项目结构方法调用图功能实现登录显示餐桌状态订座显示所有菜品点餐查看账单结账退出满汉楼 扩展思考多表查询如果将来字段越来越多怎么办? 员工信息字段可…

文章目录

  • 功能
  • 界面
    • 用户登录界面
    • 显示餐桌状态
    • 预定
    • 显示所有菜品
    • 点餐
    • 查看账单
    • 结账
    • 退出满汉楼
  • 程序框架图
  • 项目依赖
  • 项目结构
  • 方法调用图
  • 功能实现
    • 登录
    • 显示餐桌状态
    • 订座
    • 显示所有菜品
    • 点餐
    • 查看账单
    • 结账
    • 退出满汉楼
  • 扩展思考
    • 多表查询
      • 如果将来字段越来越多怎么办?
    • 员工信息字段可能有很多,而且员工数有会很多,为提高效率,可以采用分表设计
  • 数据库设计
    • 满汉楼用户表
    • 满汉楼餐桌表
    • 菜谱表
    • 账单表

功能

image-20241215173902720

界面

用户登录界面

image-20241215174323926

显示餐桌状态

image-20241215174503522

预定

image-20241215174623548

显示所有菜品

image-20241215174743016

点餐

image-20241215174832125

查看账单

image-20241215175047426

结账

image-20241215175218981

退出满汉楼

程序框架图

软件分层是逻辑概念
1.可以用不同包来存放对应的类
2.体现了一个调用的关系
3.可以各司其职

image-20241215180733728

image-20241215180821862

项目依赖

commons-dbutils-1.8.1.jar
druid-1.1.10.jar
mysql-connector-java-5.1.23-bin.jar

项目结构

image-20241218213646153

方法调用图

image-20241218215014812

功能实现

准备工具类Utility

在实际开发中,公司都会提供相应的工具类和开发库,可以提高开发效率

登录

接受用户输入员工号和密码
通过员工ID和密码获取员工信息
如果找到匹配的员工信息,则返回该员工对象;否则返回null
如果!=null则登录成功,否则登录失败

显示餐桌状态

调用diningTableService的list方法获取所有餐桌的列表,然后遍历列表,打印每个餐桌的编号和状态到控制台。最后,打印一条分隔线表示显示完毕。

订座

功能说明

如果该餐桌处于已经预定或者就餐状态,给出提示

思路分析

(1)要检测餐桌是否存在。
(2)要检测餐桌的状态

允许用户选择要预订的餐桌,并输入预订信息。如果用户选择取消预订,则方法会输出取消预订的消息。如果用户确认预订,方法会检查所选餐桌是否存在且未被预订,然后接收用户的预订信息并尝试更新餐桌状态。如果预订成功,会输出预订成功的消息;如果失败,会输出预订失败的消息。 如果用户选择取消预订,则方法会输出取消预订的消息。

显示所有菜品

调用menuService的list方法获取所有菜品列表,然后遍历列表并打印每个菜品的编号、名称、类别和价格。
最后,打印一条分隔线表示显示完毕。

点餐

1.功能说明

要求对餐桌号,菜品编号,做合理性校验,如果不合理,给出提示信息

2.思路分析

(1)餐桌号,菜品编号检验
(2)点餐成功,需要修改餐桌状态
(3)生成账单

允许用户选择餐桌号、菜品编号和点餐数量,并确认是否进行点餐。
如果用户选择取消点餐或输入的餐桌号、菜品编号不存在,则方法会提前退出。
如果用户确认点餐,则调用billService的orderMenu方法进行点餐操作,并根据点餐结果输出相应的提示信息。

查看账单

该方法调用billService的list方法获取所有账单列表,并打印账单的详细信息,包括编号、菜品号、菜品量、金额、桌号、日期和状态。打印完毕后,输出一条分隔线表示显示完毕。

结账

思路分析

(1)对餐桌号进行校验
(2)修改bill表的state
(3)修改diningTable信息
(4)不需要增加新表,不需要增加新的类,需要增加方法

提供结账服务,允许用户选择餐桌进行结账操作。用户可以选择不同的结账方式,并在确认后执行结账。如果用户在过程中选择取消或输入无效信息,将终止结账流程。

退出满汉楼

image-20241218203143438

扩展思考

多表查询

image-20241218203007980

package com.hspedu.mhl.domain;import java.util.Date;/*** @program: mhl* @since: jdk1.8* @description: 这是一个javabean 可以和多张表进行对应* @author: Administrator* @create: 2024-12-18 20:43**/
public class MultiTableBean {private Integer id;private String billId;private Integer menuId;private Integer nums;private Double money;private Integer diningTableId;private Date billDate;private String state;// 增加一个来自menu表的列nameprivate String name;// 增加一个来自menu表的priceprivate Double price;public MultiTableBean() {}public MultiTableBean(Integer id, String billId, Integer menuId, Integer nums, Double money, Integer diningTableId, Date billDate, String state, String name, Double price) {this.id = id;this.billId = billId;this.menuId = menuId;this.nums = nums;this.money = money;this.diningTableId = diningTableId;this.billDate = billDate;this.state = state;this.name = name;this.price = price;}public Double getPrice() {return price;}public void setPrice(Double price) {this.price = price;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getBillId() {return billId;}public void setBillId(String billId) {this.billId = billId;}public Integer getMenuId() {return menuId;}public void setMenuId(Integer menuId) {this.menuId = menuId;}public Integer getNums() {return nums;}public void setNums(Integer nums) {this.nums = nums;}public Double getMoney() {return money;}public void setMoney(Double money) {this.money = money;}public Integer getDiningTableId() {return diningTableId;}public void setDiningTableId(Integer diningTableId) {this.diningTableId = diningTableId;}public Date getBillDate() {return billDate;}public void setBillDate(Date billDate) {this.billDate = billDate;}public String getState() {return state;}public void setState(String state) {this.state = state;}@Overridepublic String toString() {return id + "\t\t" + menuId + "\t\t\t" + name + "\t\t\t" + price + "\t\t\t" + nums + "\t\t\t" + money + "\t\t" + diningTableId + "\t\t" + billDate + "\t\t" + state;}
}

image-20241218213542012

如果将来字段越来越多怎么办?

image-20241218212754186

员工信息字段可能有很多,而且员工数有会很多,为提高效率,可以采用分表设计

image-20241218213942554

数据库设计

满汉楼用户表

# 员工表
CREATE TABLE employee (id INT PRIMARY KEY auto_increment,empId VARCHAR (50) UNIQUE NOT NULL DEFAULT '',pwd CHAR(32) NOT NULL DEFAULT '',`name` VARCHAR (50) NOT NULL DEFAULT '',job VARCHAR (50) NOT NULL DEFAULT ''
) CHARSET='utf8';# 测试数据
insert into employee values(null,'6668612',md5('1123456'),'张三丰','经理');
insert into employee values (null,'6668622', md5('1123456'),'小龙女','服务员');
insert into employee values(null,'6668633', md5('123456'),'张无忌','收银员');
insert into employee values(null,'666666',md5('123456'),'老韩','经理');
image-20241215213350987

满汉楼餐桌表

# 餐桌表
CREATE TABLE diningTable(id INT PRIMARY KEY auto_increment,state VARCHAR (20) NOT NULL DEFAULT '',orderName VARCHAR(50) NOT NULL DEFAULT '',orderTel VARCHAR (20) NOT NULL DEFAULT ''
) CHARSET='utf8';# 测试数据
insert into diningTable values(NULL, '空', '','');
insert into diningTable values(NULL, '空', '','');
insert into diningTable values(NULL, '空', '','');
image-20241216195216385

菜谱表

# 菜谱表
CREATE TABLE menu(id INT PRIMARY KEY auto_increment,`name` VARCHAR(50) not null default '',type varchar(50) not null DEFAULT '',price DOUBLE not null DEFAULT 0
) CHARSET = utf8;# 测试数据
insert into menu VALUES(NULL,'八宝饭','主食', 10);
insert into menu VALUES(NULL,'叉烧饭','主食', 20); 
insert into menu VALUES(NULL,'宫保鸡丁','热菜', 30);
insert into menu VALUES(NULL,'山药拨鱼','凉菜', 14);
insert into menu VALUES(NULL,'银丝卷','甜食', 9); 
insert into menu VALUES(NULL,'水煮鱼','热菜', 26); 
insert into menu VALUES(NULL,'甲鱼汤','汤类', 100); 
insert into menu VALUES(NULL,'鸡蛋汤','汤类', 16);
image-20241217120142699

账单表

CREATE TABLE bill(id INT PRIMARY KEY auto_increment,billId VARCHAR(50) NOT NULL DEFAULT '',menuId INT NOT NULL DEFAULT 0,nums INT NOT NULL DEFAULT 0,money DOUBLE NOT NULL DEFAULT 0,diningTableId INT NOT NULL DEFAULT 0,billDate DATETIME NOT NULL,state VARCHAR(50) NOT NULL DEFAULT ''
)CHARSET = utf8

自增主键 账单号(UUID) 菜品编号 份数 金额 餐桌 订单日期 状态

image-20241217223136155

http://www.hkea.cn/news/840905/

相关文章:

  • 做网站小程序如何做广告宣传与推广
  • 网站建设背景朝阳百度新闻网页
  • 专门做拼团的网站西安网站开发
  • 怎么看网站开发语言太原seo推广
  • 什么网站做宣传好新乡网站seo
  • 济南网站制作服务价格信息流优化师前景
  • 新手制作网站工具bt磁力猪
  • 怎么做网站系统深圳头条新闻
  • 北京网站设计公司新鸿儒seo公司的选上海百首网络
  • 百姓网二手拖拉机百度seo优化排名客服电话
  • 北京南站是丰台站吗seo优化什么意思
  • 外贸营销型建站关键词全网搜索工具
  • 有什么网站可以做扣扣头像腾讯企点app下载安装
  • 网站设计怎么做链接拉新推广怎么快速拉人
  • 怎么自己做礼品网站补肾壮阳吃什么药效果好
  • 网站用户建设的设计与实现网站推广营销运营方式
  • html5韩国网站模板seo网站优化培训班
  • 网站被iframe信息推广的方式有哪些
  • 通信技术公司网站建设app推广代理
  • 做电影网站会违法吗营销说白了就是干什么的
  • 用外链技术做视频网站关键词在线听免费
  • 做网站常用的css最近三天的新闻热点
  • 全国人大常委会副委员长登封seo公司
  • 顶岗实践网站开发推广管理
  • 九号公司网站优化效果
  • 模板网站建设方案北京seo排名收费
  • 做箱包关注哪个网站泰州seo平台
  • 如何给网站做流量站长工具seo
  • 桂林网站开发建设推广任务接单平台
  • 化妆品 网站建设案例seo超级外链工具免费