1 系统分析
1.1 需求分析
该系统的开发,主要是用在了各个订餐网站的系统,用户可以通过网站进行外卖订餐的信息挂了,并能够对客户进行外卖菜品的订单提交等。该系统也是一个通用的管理系统。
系统初步定为采用BS架构的模式开发,分为三个权限,每个权限都有各自管理的功能,根据功能和需求的调研和分析,我得出结论,需要管理员权限实现对系统的整体的管理,工作人员用户可以对订单信息进行管理,也能够对订餐的信息进行统计,员工也是本系统的一个重要的用户,还可以实现菜品的查看等,客户功能实现了对客户的基本信息情况进行管理,也能够对菜品进行查看,并且可以选择在线进行订餐。
本人通过在企业的实习和需求调研,了解到外卖系统的订餐管理后台的一些功能需求,根据需要进行设计,进行系统的设计开发。主要功能如下所示:
1.管理员: 管理员是系统的一个重要的功能,通过管理员就能够实现员工的管理,客户的管理以及实现了对餐品信息的管理,能够对外卖菜品,菜品的类别进行管理。
2.员工: 员工是本系统的一个重要的用户,员工可以实现对自己信息进行修改,也能够对订单信息进行管理,并且可以实现对订餐信息的统计分析,统计订餐金额等。
3.客户: 客户的管理,是本系统的一个重要的用户管理,客户管理能够实现菜品预订的管理,客户可以在网上进行菜品的预订,并且能够实现个人资料的修改。
1.2 性能需求
1.3 运行环境
2.3.1硬件设备
本系统硬件方面,采用一般的台式机和笔记本电脑就能够进行运行。
客户机硬件要求:具有I3以上处理器,500G以上的硬盘和4G的运行内存。
服务器硬件要求:装有IIS7.0以上版本的服务器,最低4G运行内存,500G硬盘空间存储和I5以上CPU。
2.3.2支持程序
客户端
操作系统:WINDOWS7/WINDOWS8/WINDOWS10操作系统
浏览器:IE11以上版本或者360浏览器,火狐浏览器等
服务器
操作系统:Windows 2003 Server或者Windows 2008 Server或者WIN7,WIN10
Web服务器:tomcat7.0以上版本
数据库:mysql6.0以上版本
2 系统总体框架
2.1 模型结构
2.2 功能模块简介
图2.2.1列出系统的功能模块图:
图2.2.1系统结构图
工作流程为:
本系统,主要是根据外卖公司的需要,针对外卖公司的信息和业务的需求,可以实现外卖菜品的管理。管理员可以发布菜品,客户进行在线的预订,并且能够对某个时间段的菜品的预订情况进行统计,更好地了解菜品销售情况。
本系统没有太多的业务流,通过简单的业务的使用,就能够实现本系统的一个重要的工作模式。可以实现系统的单一模式的管理。
3 技术介绍
3.1 基于B/S结构开发
由于外卖信息的管理等操作,在外卖网站的使用频率比较高,所以我们采用免安装的设计思路,本系统采用B/S结构,通过BS架构设计的开发,我们只要拥有浏览器就能随处打开使用,十分方便快捷,在B/S结构下,整个系统的管理,资源的分配调用都十分方便快捷。
整个外卖后台管理系统,采用了BS架构的模式开发,只要有浏览器就能随处打开,不需要安装就能使用,使用方便,BUG少,确保了业务性的安全性,在通讯方面采用了HTTP协议,使系统轻松实现了分布式的管理。BS架构的模式,主要就是为了方便管理者和使用者方便使用该系统,不用安装客户端,也不需要任何插件就能使用,系统稳定性也比较高。
3.2 springboot框架
3.3 JSP技术简介
3.4 tomcat简介
3.5 CSS样式设计简介
3.6 Html标记语言简介
3.7 mysql数据库简介
4 系统详细设计
4.1 数据库设计
数据库的设计是一款系统的重要的设计方面,通过数据库的简单设计,可以更好地管理系统,并且让系统的开发进入一个全新的设计模式,更好地让系统的运行和维护得到保障。数据库的设计通过ER图的设计,数据表的设计等进行对数据库的基本信息情况的设计,能够完美体现出数据库的相关信息。通过数据库的ER图的设计,能够对数据库的设计进行一个前期的设计和构造。
4.1.1 E-R图
1)员工信息(工号,姓名,性别,出生年月,电话,邮箱,籍贯等)
员工实体与属性的定义
2)菜品类别信息(菜品名称,id,添加日期)
菜品类别信息实体与属性的定义
菜品信息实体与属性的定义
4)客户信息管理(编号,用户名,密码,姓名,性别,出生年月,QQ,邮箱等)
客户信息实体与属性的定义
5)订餐信息管理(id,编号,名称,数量,价格,添加人等)
订餐信息实体与属性的定义
4.1.2 主要数据表
本系统主要采用了mysql数据库进行数据库表结构的设计,根据系统的需求和调研,我们开发了关于项目的十四个表,具体的表的介绍如下:
表4.1.2.1 用户信息表
Table 4.1.2.1 allusers
数据库字段名称 | 类型 | 长度 | 说明 |
id | Int | 4 | 自动增长字段,不允许空,主键 |
username | varchar | 50 | 用户名 |
pwd | varchar | 50 | 密码 |
cx | varchar | 50 | 权限 |
addtime | timestamp | 0 | 添加日期 |
表4.1.2.2 菜品类别记录
Table 4.1.2.2 shangpinleibie
数据库字段名称 | 类型 | 长度 | 说明 |
id | Int | 4 | 自动增长字段,不允许空,主键 |
Leibiemingcheng | varchar | 100 | 类别名称 |
addtime | timestamp | 50 | 添加日期 |
表4.1.2.3 菜品信息
Table 4.1.2.3 shangpinxinxi
数据库字段名称 | 类型 | 长度 | 说明 |
Id | Int | 10 | 自动增长字段,不允许空,主键 |
bianhao | Int | 10 | 编号 |
mingcheng | varchar | 100 | 名称 |
leibie | varchar | 2000 | 类别 |
tupian | varchar | 0 | 图片 |
beizhu | varchar | 0 | 备注 |
addtime | timestamp | 10 | 添加日期 |
表4.1.2.4 订餐商表
Table 4.1.2.4 dingcan
数据库字段名称 | 类型 | 长度 | 说明 |
id | Int | 11 | 自动增长字段,不允许空,主键 |
bianhao | varchar | 50 | 编号 |
mingcheng | varchar | 50 | 名称 |
shuliang | int | 11 | 数量 |
jiage | varchar | 50 | 价格 |
addby | varchar | 50 | 添加人 |
addtime | timestamp | 10 | 添加日期 |
表4.1.2.5 客户信息表
Table 4.1.2.5 yonghuzhuce
数据库字段名称 | 类型 | 长度 | 说明 |
id | Int | 10 | 自动增长字段,不允许空,主键 |
yonghuming | varchar | 50 | 用户名 |
mima | varchar | 50 | 密码 |
xingming | varchar | 50 | 姓名 |
xingbie | varchar | 2 | 性别 |
chushengnianyue | varchar | 50 | 出生年月 |
varchar | 50 | ||
youxiang | varchar | 50 | 邮箱 |
dianhua | varchar | 50 | 电话 |
shenfenzheng | varchar | 50 | 身份证 |
touxiang | varchar | 50 | 头像 |
dizhi | varchar | 255 | 地址 |
beizhu | varchar | 800 | 备注 |
addtime | timestamp | 10 | 添加日期 |
表4.1.2.6 员工信息表
Table 4.1.2.6 yuangongxinxi
数据库字段名称 | 类型 | 长度 | 说明 |
id | Int | 11 | 自动增长字段,不允许空,主键 |
gonghao | varchar | 50 | 工号 |
xingming | varchar | 50 | 姓名 |
xingbie | varchar | 50 | 性别 |
chushengnianyue | varchar | 50 | 出生年月 |
dianhua | varchar | 50 | 电话 |
youxiang | varchar | 50 | 邮箱 |
jiguan | varchar | 50 | 籍贯 |
zhaopian | varchar | 50 | 照片 |
shenfenzheng | varchar | 100 | 身份证 |
mima | varchar | 50 | 密码 |
addtime | timestamp | 0 | 添加日期 |
4.2系统管理员
4.2.1 后台登录
后台的管理和使用,是一款管理系统的核心的功能模块,通过合理的,账号的登录,输入正确的验证码,就能够登录到系统后台,对系统进行一个全方位的操作。系统是一款关于超市信息管理的系统,后台的管理,是本系统的核心部位的管理,通过后台的登录,可以进入到各个权限的内容板块,如下所示,是系统通过输入用户名和密码登录的系统后台首页。
4.2.2管理员界面
系统管理员管理,是本系统的一个重要的功能模块,通过对网站的系统的用户的管理,可以对网站的用户信息,用户密码信息和管理员用户的相关信息进行一个合理的,完整的管理,包括添加用户信息,用户信息查看和修改个人密码等;用户添加,主要是对管理员用户的基本信息情况进行一个添加,包括用户名,密码,确认密码和管理员权限的输入进行添加的。
4.2.3员工信息管理
员工信息的管理,是本系统的一个重要的管理组成部分,通过对员工的信息的管理,能够让用户得到一个正确的管理模式,也能够让用户在后台中就能够获取个人的密码等信息。可以对员工的工号,姓名,性别,出生年月,电话,邮箱,籍贯,照片等信息进行管理。
4.2.4客户信息管理
客户信息的管理,是订餐外卖网站的一个重要的用户,客户信息的管理,大大方便了对客户信息的管理,也让客户能够在个人的后台中,在线预订菜品,并且能够进行外卖网站的分析统计
4.5 主要代码分析
4.5.1 用户登录代码
系统的开发,用户的登录是本系统的一个重要的功能和模块组成,主要的一个代码分析是用户登录代码的分析,本系统的用户主要分为了管理员用户和员工两大部分,通过两大部分的分析和组合,才完整构成了整体系统的设计和研发。用户的登录是通过简单的SQL语句进行实现的,以下是管理员登录的重要sql代码:
sql = “select 用户名,密码 from 管理员表 where 用户名='” +输入文本框+ “‘ and pwd='” + 密码文本框+ “‘”;
4.5.2数据库操作
数据库操作和连接,都存在db.java类中,针对数据库进行连接和操作的代码如下所示:
private String dbDriver=”com.mysql.jdbc.Driver”; 数据库驱动代码
通过数据库驱动和连接字符串的设置,就能够进行数据库的连接工作。