近年来,我国经济和社会发展迅速,人们物质生活水平日渐提高,餐饮行业更是发展迅速,人们对于餐饮行业的认识和要求也越来越高。传统形式的餐饮行业都是以人为本,管理起来需要很多人力、物力、财力,既不方便管理者的管理,也不方便顾客实时了解餐厅动态,给传统餐饮行业的经营和其发展管理带来了诸多不便。因此,通过互联网来改变传统餐饮行业现状已经成为了餐饮行业发展的必经之路。对此,本文设计并实现了一个基于微服务架构的餐饮系统,采用react 、 ant design pro、TypeScript等前端技术,以及SpringBoot、 Spring Cloud后端框架构建的一个管理系统。
本系统包括面向消费者的餐饮系统和面向管理者的管理系统两部分,前台餐饮系统主要由用户登录、注册、网站首页、餐饮资讯、美食菜单、堂食订单、出餐信息、外卖订单、配送信息、取消订单、个人中心等功能组成。后台管理系统由登录首页、网站管理(轮播图、通知公告)、内容管理(餐饮资讯、资讯分类)、人员管理(管理员、普通用户、餐饮商家)模块管理(菜品分类、美食菜单、堂食订单、出餐信息、外卖订单、配送信息、取消订单)等功能组成。最终本系统经过测试,基本功能全面,操作方便,页面设计简洁美观,本系统可以满足用户使用需求。
关键词:餐饮系统;Java;SpringBoot,Spring Cloud,Mysql数据库
In recent years, China's economy and society have developed rapidly, people's material living standards have improved day by day, and the catering industry has developed rapidly. People's awareness and requirements for the catering industry are also increasing. The traditional form of catering industry is people-oriented, which requires a lot of human, material and financial resources to manage. It is not convenient for managers to manage, nor for customers to understand the restaurant dynamics in real time, which has brought a lot of inconvenience to the operation and development management of the traditional catering industry. Therefore, changing the current situation of the traditional catering industry through the Internet has become the only way for the development of the catering industry. In this regard, this paper designs and implements a catering system based on microservice architecture, which uses the front-end technologies such as react, ant design pro, TypeScript, and a management system built by the back-end frameworks of SpringBoot and Spring Cloud.
This system consists of two parts: a consumer-oriented catering system and a management-oriented management system. The front catering system is mainly composed of user login, registration, website home page, catering information, food menu, dining order, delivery order, delivery order, cancellation order, personal center and other functions. The background management system consists of login home page, website management (rotation chart, notice announcement), content management (catering information, information classification), personnel management (administrators, ordinary users, catering merchants) module management (food classification, food menu, restaurant order, meal information, take-out order, distribution information, cancellation order) and other functions. Finally, after testing, the system has comprehensive basic functions, convenient operation, simple and beautiful page design, and can meet user needs.
Keywords:Catering system; Java; SpringBoot, Spring Cloud, MySQL database
目 录
第1章 引言
1.1背景及意义
随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出。近两年来已呈现出高速发展的态势。但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低。随着餐饮企业规模和数量的不断增长,手工管理模式无论是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求,因此制约了整个餐饮业的规模化发展和整体服务水平的提升。有效的管理成为了一个难题,为能有效的解决这些问题提高企业的经济效益,在这些中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统不视为一条有效的解决途径。
餐饮业的蓬勃发展带动餐饮投资多元化,大量资本的进入进一步推动了餐饮业的快速、健康发展,随着社会各领域信息化建设的不断普及,餐饮业也开始不断注入信息化元素,将餐饮业务融入计算机管理,既节省人力资源,也提高了管理效率和工作效率,将餐饮业提升到一个新的阶段。
1.2 国内外研究概况
随着信息化技术的日益普及,餐饮这样的传统行业也越来越多的采用信息技术来管理业务,市场上餐饮管理软件正处于百花齐放、百家争鸣的阶段。
在国内,餐饮软件的发展也正处于蓬勃发展的时期,如北京天良软件,它是一家以软件开发、销售为主营方向的技术开发型企业。天良软件立足于餐饮及酒店客房管理市场,致力于为客户提供一流的产品及服务,企业下设市场拓展部、产品研发部、公关策划部、客户服务部等主要职能部门。
在国外发展比较成熟的软件有龙腾触摸屏点菜系统,“ 龙腾餐饮管理系统”软件采用了独特的组网技术,以Window 为操作平台,全32位应用软件系统,功能在国内处于领先地位。网络系统是以Windows搭成的对等网络,简单实用、稳定可靠,保证企业非常迅速地把信息传递到各个点。这个系统适用于快餐企业、西餐、火锅有勾划式菜单的餐饮企业,中高档中餐可以配合其他点菜设备一起 使用这个系统。
1.3 研究的内容
本系统从餐饮行业的实际需要出发,以提高工作效率、节约时间为目标,设计开发了一个基于微服务的餐饮系统,餐饮系统围绕系统管理员、普通用户和餐饮商家三种角色,主要功能包括首页、网站管理(轮播图、通知公告)、内容管理(餐饮资讯、资讯分类)、人员管理(管理员、普通用户、餐饮商家)模块管理(菜品分类、美食菜单、堂食订单、出餐信息、外卖订单、配送信息、取消订单)等功能模块。论文首先介绍了本系统的相关技术,并进行了需求分析,分别给出了系统Web服务器端和移动终端的概要设计、数据库设计和详细设计,实现完成的系统经测试上线,运行效果良好。
第2章 相关技术
2.1开发技术
本系统前端框架采用了比较流行的渐进式JavaScript框架react。结合ant design pro和TypeScript技术。后端部分:采用SpringBoot与SpringCloud作为开发框架,同时集成MyBatis、nacos 、gateway等相关技术。
2.2 React框架
React框架是一个用于构建用户界面的JavaScript库。React是一套UI引擎,是DOM的抽象层,并不是web应用的完整解决方案。它遵循组件设计模式、声明式编程范式和函数式编程的概念,使用虚拟DOM有效的操作DOM,并且遵循从高阶组件到低阶组件的单向数据流,从而使前端应用程序达到高效。主要特点:1.声明式设计,2. 高效性3. 灵活性4. 组件5. 单向数据流。具有虚拟DOM加diff算法减少DOM操作提高渲染性能;使用声明式语法JSX重新定义视图开发;代码更加模块化,复用率高;单向数据流,可预计可控制;将DOM操作抽象为状态的改变等优势。
2.3 ant design pro
“Ant Design Pro 是一个企业级中后台前端/设计解决方案,秉承 Ant Design 的设计价值观,致力于在设计规范和基础组件的基础上,继续向上构建,提炼出典型模板/业务组件/配套设计资源,进一步提升企业级中后台产品设计研发过程中的『用户』和『设计者』的体验。随着『设计者』的不断反馈,它也将持续迭代,逐步沉淀和总结出更多设计模式和相应的代码实现,阐述中后台产品模板/组件/业务场景的最佳实践。
2.4 TypeScript
TypeScript 起源于使用JavaScript开发的大型项目 。由于JavaScript语言本身的局限性,难以胜任大型项目的开发和维护。因此微软开发了TypeScript ,使得其能够胜任大型项目的开发。TypeScript扩展了JavaScript的语法,所以任何现有的JavaScript程序可以运行在TypeScript环境中。TypeScript是为大型应用的开发而设计,并且可以编译为JavaScript。语法上,TypeScript 很类似于 JScript .NET,另外一个添加了对静态类型,经典的面向对象语言特性如类,继承,接口和命名空间等的支持的 Microsoft 对 ECMAScript 语言标准的实现。
2.5 B/S结构
B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为客户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题。
2.6 MySQL数据库
Mysql的语言是非结构化的,用户可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。
数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。
2.7 SpringBoot框架
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。
2.8 SpringCloud框架
SpringCloud框架五大组件分别为Eureka,Ribbon,Hystrix ,Zuul,Config。Eureka作用:实现服务治理(服务注册与发现)简介:Spring Cloud Eureka是Spring Cloud Netflix项目下的服务治理模块。由两个组件组成:Eureka服务端和Eureka客户端。Eureka服务端用作服务注册中心。支持集群部署。Eureka客户端是一个java客户端,用来处理服务注册与发现。在应用启动时,Eureka客户端向服务端注册自己的服务信息,同时将服务端的服务信息缓存到本地。客户端会和服务端周期性的进行心跳交互,以更新服务租约和服务信息。
Ribbon主要提供客户侧的软件负载均衡算法。简介:Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用。关键点就是将外界的rest调用,根据负载均衡策略转换为微服务调用。Ribbon有比较多的负载均衡策略。
Hystrix作用:断路器,保护系统,控制故障范围。简介:为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请求涌入,Servlet容器的线程资源会被消耗完毕,导致服务瘫痪。服务与服务之间的依赖性,故障会传播,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩”效应。
Zuul作用:api网关,路由,负载均衡等多种作用。简介:类似nginx,反向代理的功能,不过netflix自己增加了一些配合其他组件的特性。在微服务架构中,后端服务往往不直接开放给调用端,而是通过一个API网关根据请求的url,路由到相应的服务。当添加API网关后,在第三方调用端和服务提供方之间就创建了一面墙,这面墙直接与调用方通信进行权限控制,后将请求均衡分发给后台服务端。
第3章 系统分析
3.1 需求分析
餐饮系统主要是为了方便餐厅更好的管理而设计和开发的,管理员更好的全流程引导和管理,更好存储所有数据信息及快速方便的检索功能。对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。
系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改信息,这样既能节省时间,不用像传统的方式耽误时间。所以餐饮系统的开发不仅仅是能满足用户的需求,还能提高操作人员的工作效率,减少不必要的工作量。
3.2 系统可行性分析
3.2.1技术可行性:技术背景
该系统在Windows操作系统中进行开发,并且目前PC机的性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。
系统的开发环境和配置都是可以自行安装的,系统使用react等开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。
(1)硬件可行性分析
基于微服务架构的餐饮系统及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。
(2)软件可行性分析
开发整个系统使用的是云计算,流量的可扩展性和基于流量的智能调整云计算的优点就是流量的可扩展性和基于流量的智能调整,保障系统的安全及数据信息的及时备份。
因此,我们从两个方面进行了可行性研究,可以看出系统的开发没有问题。
3.2.2经济可行性
基于微服务架构的餐饮系统开发之前所做的市场调研及相关的管理系统,都是没有任何费用的,都是通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于餐饮系统的开发在经济上是完全可行的,没有任何费用支出的。
使用比较成熟的技术,所以系统在开发人力、财力要求不高,具有经济可行性。
3.2.3操作可行性:
可操作性主要是对基于微服务架构的餐饮系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于系统管理员、普通用户、餐饮商家三种角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
3.3 项目设计目标与原则
1、关于餐饮系统的基本要求
(1)功能要求:主要功能包括首页、网站管理(轮播图、通知公告)、内容管理(餐饮资讯、资讯分类)、人员管理(管理员、普通用户、餐饮商家)模块管理(菜品分类、美食菜单、堂食订单、出餐信息、外卖订单、配送信息、取消订单)等功能模块。
(2)性能:在不同操作系统上均能无差错实现在不同类型的用户登入相应界面后能不出差错、方便地进行预期操作。
(3)安全与保密要求:用户都必须通过身份验证才能进入系统,并且用户的权限也需要根据用户的类型进行限定。
(4)环境要求:支持多种平台,可在Windows系列、Vista系统等多种操作系统下使用。
2、开发目标
餐饮系统的主要开发目标如下:
(1)实现管理系统信息关系的系统化、规范化和自动化;
(2)减少维护人员的工作量以及实现用户对信息的控制和管理。
(3)方便查询信息及管理信息等;
(4)通过网络操作,改善处理问题的效率,提高操作人员利用率;
(5)考虑到用户多样性特点,要求界面简单,操作简便。
3、设计原则
本系统采用react、ant design pro、TypeScript等技术,Mysql数据库开发,充分保证了系统稳定性、完整性。
餐饮系统的设计思想如下:
- 操作简单方便、系统界面安全良、简单明了的页面布局、方便查询相关信息。
2、即时可见:对餐饮系统信息的处理将可以实时查询到,从而实现“即时发布、即时见效”的系统功能。
3、功能的完善性:拥有包括用户管理,培养项目管理,课表管理,学习成果,人才培养方案等功能等模块的修改维护操作。
3.4系统流程分析
3.4.1操作流程
图3-1登录流程图
3.4.2添加信息流程
添加信息流程图,如图所示:
图3-2添加信息流程图
3.4.3删除信息流程
删除信息流程图,如图所示:
图3-3删除信息流程图
第4章 系统设计
4.1 系统体系结构
本系统选择B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。适合在互联网上进行操作,只要用户能连网,任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图4-1所示:
图4-1 系统工作原理图
4.2系统结构设计
整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。
本系统结构图如图4-2所示。
图4-2 系统功能结构图
4.3开发流程设计
系统流程的分析是通过调查系统所涉及问题的识别、可行性、可操作性、系统分析处理能力等具体环节来调节、整理系统的设计方案以确保系统能达到理想的状态。这些操作都要从注册、登录处着眼进行一系列的流程测试保证数据库的完整,从而把控系统所涉及信息管理的安全、保证信息输入、输出正常转换。然后,通过实际操作完成流程图的绘制工作。
餐饮系统的开发对管理模块和系统使用的数据库进行分析,编写代码,系统测试,如图4-4所示。
图4-4开发系统流程图
4.4 数据库设计原则
学习编程,我们都知道数据库设计是基于需要设计的系统功能,我们需要建立一个数据库关系模型,用于存储数据信息,这样当我们在程序中时,就没有必要为程序页面添加数据,从而提高系统的效率。数据库存储了很多信息,可以说是信息管理系统的核心和基础,数据库还提供了添加、删除、修改和检查,使系统能够快速找到自己想要的信息,而不是在程序代码中找到。数据库中信息表的每个部分根据一定的关系精确地组合,排列和组合成数据表。
通过餐饮系统的功能进行规划分成几个实体信息,实体信息将通过ER图进行说明,本系统的主要实体图如下:
管理员信息属性图如图4-5所示。
图4-5 管理员信息实体属性图
4.4 数据表
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
表article (文章:用于内容管理系统的文章)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
表article_type (文章分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表auth (用户权限管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | varchar | 500 | 0 | Y | N | 添加字段: | |
14 | field_set | varchar | 500 | 0 | Y | N | 修改字段: | |
15 | field_get | varchar | 500 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表cancellation_of_order (取消订单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cancellation_of_order_id | int | 10 | 0 | N | Y | 取消订单ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名称 | |
4 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品价格 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐饮商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 购买数量 |
8 | total_price | varchar | 64 | 0 | Y | N | 合计总价 | |
9 | purchase_user | int | 10 | 0 | Y | N | 0 | 购买用户 |
10 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
11 | chargeback_reason | text | 65535 | 0 | Y | N | 退单原由 | |
12 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表categorization_of_dishes (菜品分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | categorization_of_dishes_id | int | 10 | 0 | N | Y | 菜品分类ID | |
2 | categorization_of_dishes | varchar | 64 | 0 | Y | N | 菜品分类 | |
3 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
4 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表catering_merchants (餐饮商家)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | catering_merchants_id | int | 10 | 0 | N | Y | 餐饮商家ID | |
2 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
3 | store_location | varchar | 64 | 0 | Y | N | 店铺位置 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表comment (评论)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表delivery_information (配送信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | delivery_information_id | int | 10 | 0 | N | Y | 配送信息ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名称 | |
4 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 购买数量 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐饮商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
7 | receiving_address | varchar | 64 | 0 | Y | N | 收餐地址 | |
8 | purchase_user | int | 10 | 0 | Y | N | 0 | 购买用户 |
9 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
10 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
11 | delivery_progress | varchar | 64 | 0 | Y | N | 配送进度 | |
12 | estimated_time | datetime | 19 | 0 | Y | N | 预计时间 | |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表dining_information (出餐信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | dining_information_id | int | 10 | 0 | N | Y | 出餐信息ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名称 | |
4 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 购买数量 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐饮商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
7 | table_number | varchar | 64 | 0 | Y | N | 就餐桌号 | |
8 | purchase_user | int | 10 | 0 | Y | N | 0 | 购买用户 |
9 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
10 | dining_progress | varchar | 64 | 0 | Y | N | 出餐进度 | |
11 | estimated_time | datetime | 19 | 0 | Y | N | 预计时间 | |
12 | number_of_people_queuing | int | 10 | 0 | Y | N | 0 | 排队人数 |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表dining_order (堂食订单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | dining_order_id | int | 10 | 0 | N | Y | 堂食订单ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名称 | |
4 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品价格 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐饮商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 购买数量 |
8 | total_price | varchar | 64 | 0 | Y | N | 合计总价 | |
9 | table_number | varchar | 64 | 0 | Y | N | 就餐桌号 | |
10 | purchase_user | int | 10 | 0 | Y | N | 0 | 购买用户 |
11 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
12 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
13 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
14 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表food_menu (美食菜单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | food_menu_id | int | 10 | 0 | N | Y | 美食菜单ID | |
2 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名称 | |
3 | dish_no | varchar | 64 | 0 | Y | N | 菜品编号 | |
4 | categorization_of_dishes | varchar | 64 | 0 | Y | N | 菜品分类 | |
5 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品价格 |
6 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐饮商家 |
7 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
8 | store_location | varchar | 64 | 0 | Y | N | 店铺位置 | |
9 | cover_photo | varchar | 255 | 0 | Y | N | 封面图片 | |
10 | introduction_to_dishes | text | 65535 | 0 | Y | N | 菜品简介 | |
11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表hits (用户点击)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表ordinary_users (普通用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | ordinary_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表praise (点赞)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表takeout_order (外卖订单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | takeout_order_id | int | 10 | 0 | N | Y | 外卖订单ID | |
2 | order_no | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | name_of_dishes | varchar | 64 | 0 | Y | N | 菜品名称 | |
4 | price_of_dishes | int | 10 | 0 | Y | N | 0 | 菜品价格 |
5 | catering_merchants | int | 10 | 0 | Y | N | 0 | 餐饮商家 |
6 | store_name | varchar | 64 | 0 | Y | N | 店铺名称 | |
7 | purchase_quantity | int | 10 | 0 | Y | N | 0 | 购买数量 |
8 | total_price | varchar | 64 | 0 | Y | N | 合计总价 | |
9 | receiving_address | varchar | 64 | 0 | Y | N | 收餐地址 | |
10 | purchase_user | int | 10 | 0 | Y | N | 0 | 购买用户 |
11 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
12 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
13 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
14 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
15 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
16 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
第5章 系统详细设计
5.1系统管理员功能模块
系统管理员登录餐饮系统,在登录页面输入用户名、密码进行登录,如图5-1所示。
图5-1系统管理员登录界面图
系统管理员进入系统后台可以查看:首页、网站管理(轮播图、通知公告)、内容管理(餐饮资讯、资讯分类)、人员管理(管理员、普通用户、餐饮商家)模块管理(菜品分类、美食菜单、堂食订单、出餐信息、外卖订单、配送信息、取消订单)等功能模块。如图5-2所示。
图5-2系统管理员功能界面图
人员管理,在人员管理页面可以查看用户姓名,用户性别,昵称、用户权限等内容,可以进行通过输入用户ID,用户名,用户密码和选择角色添加用户。如图5-3所示。
图5-3添加用户界面图
5.2用户功能模块
用户注册,在用户注册页面通过填写账户、设置密码、确认密码、昵称、邮箱、手机号、身份等信息完成用户注册,如图5-4所示。在登录页面通过填写用户名、密码、滑动滑块进行登录验证等操作,如图5-5所示。
图5-4用户注册界面图
图5-5登录界面图
个人信息:用户进入系统可以在个人信息这一栏可对头像、昵称、密码进行修改,如图5-6所示:
图5-6个人信息界面图
餐饮资讯:用户进入系统可以搜索查看管理员发布的餐饮资讯信息,对喜欢的文章可进行收藏、点赞、评论等操作,如图5-7所示。
图5-7餐饮资讯界面图
第6章 系统测试
6.1系统测试的目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
餐饮系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在餐饮系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
6.2系统测试方法
在对餐饮系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让餐饮系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个餐饮系统开发所牵扯的该问题都必须一一解决,提高餐饮系统平台的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
6.3功能测试
用户登录测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:admin 密码:123 | 弹出错误提示,提示密码错误 | 弹出错误提示,提示密码错误 | 通过 |
登录模块 | 用户名:123 密码:admin | 弹出错误提示,提示用户名错误 | 弹出错误提示,提示用户名错误 | 通过 |
登录模块 | 用户名:admin 密码:admin | 管理员登录成功 | 管理员登录成功 | 通过 |
修改密码测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码模块 | 原密码:666 新密码:123 确认密码:123 | 弹出错误提示,提示原密码错误 | 弹出错误提示,提示原密码错误 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:333 | 弹出错误提示,提示确认密码不一致 | 弹出错误提示,提示确认密码不一致 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:123 | 密码修改成功 | 密码修改成功 | 通过 |
通过对功能的测试,餐饮系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。
此时项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所相关技术进行学习。在学习的过程中,我逐渐认识得到了我自身存在的一些不足。从该系统中,系统的分析和设计的调查数据,并且已经经历和努力了几个月,最终完成了系统。很显然,该系统仍有很多不成熟的地方,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过咨询老师解决这些问题,对于毕业设计的圆满完成,需要感谢老师们的指导。系统的开发环境和配置都是可以自行安装的,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。
回顾毕业设计的整个过程,既付出汗水也收获了很多。虽然经历了各种各样的困难,自己的不断研究探索,系统的实现仍有不足之处。
在以后的学习及工作中,我仍然继续学习计算机方面的技术,让我在后期的平台开发中可以更好更快的实现需求功能。我相信我可以让更多的好工作,做出更大的贡献。
餐饮系统的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。
首先要感谢我的指导老师,谢谢您在设计和论文中给我的指导。在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力帮助下我才能将课本上的知识与自己的项目结合,真正的做到学以致用。感谢您经常牺牲自己的休息时间,利用其丰富的教学和项目经验对我进行指导。
感谢所有教过我的老师,为我倾注了大量的心血,正是你们的谆谆教诲、严谨教学才使我能顺利的完成学业,再此向你们表示深深的感谢。
感谢我的同学们,对我的大力支持及帮助,正是你们不断的帮助、鼓励,给我带来了极大的动力,最终系统可以顺利的运行。我们在交流、谈论的这段时间,将是我未来的财富,我要深深地感谢你们!
毕业在即,在今后的工作和生活中,我会铭记师长们的教诲、同学们的帮助,继续不懈努力和追求,来报答所有支持和帮助过我的人!
参考文献
[1]Yu Hao. Retraction Note: Platform Design of Sports Meeting Management System for Regular Colleges and Universities Based on B/S Structure[J]. Wireless Personal Communications,2022,128(2).
[2]杨天一. 论微服务架构的优势与劣势[C]//.第三十六届中国(天津)2022’IT、网络、信息技术、电子、仪器仪表创新学术会议论文集.[出版者不详],2022:294-297.DOI:10.26914/c.cnkihy.2022.015048.
[3]吴封斌,李笑瑜,蒲睿强,张量,岳洪吉.Istio:微服务架构服务治理升级研究[J].网络安全技术与应用,2022(07):1-2.
[4]李思毅,马诗雨,崔丽月,张圣林,孙永谦,张玉志.微服务架构下的根因定位方法综述[J].数据与计算发展前沿,2022,4(03):78-89.
[5]唐春燕. 基于微服务的智慧餐饮系统的设计与实现[D].华东师范大学,2022.DOI:10.27149/d.cnki.ghdsu.2022.002129.
[6]郭蕊,赵元苏.Web前端框架技术综述[J].北京工业职业技术学院学报,2021,20(03):24-27.
[7]Li Yunyun,Chen Lulu,Yu Dengchen,Gao Renhao. Research and Developing of Evaluation Information System Using B/S Structure and SQL Server Technology[J]. Journal of Physics: Conference Series,2021,1952(4).
[8]张健.餐饮系统的设计与实现[J].信息与电脑(理论版),2021,33(08):135-138.
[9]Dinghua He. Design and Implementation of Resource Information Management Based on B/S Structure[J]. Journal of Physics: Conference Series,2019,1345(5).
[10]陆郁. 中小型酒店餐饮管理系统的设计与实现[D].华北理工大学,2018.
[11]陆觉明. 融合线上线下功能的餐饮系统设计和实现[D].中国科学院大学(中国科学院工程管理与信息技术学院),2017.
[12]夏霨.“农家乐”餐饮管理系统的设计与实现[J].科技广场,2017(09):62-65.DOI:10.13838/j.cnki.kjgc.2017.09.013.
[13]熊文杰.试谈餐饮信息管理系统设计与实现[J].电脑编程技巧与维护,2017(18):61-62+65.DOI:10.16184/j.cnki.comprg.2017.18.020.
[14]程鹏. 餐饮云平台系统的设计与实现[D].北京交通大学,2017.
[15]李敏儿. 餐饮企业外卖订餐系统的设计与实现[D].华南理工大学,2016.
[16]帅勇,陈使明,段云,方丽.基于C/S架构的餐饮管理系统设计与实现[J].福建电脑,2015,31(01):83-84.DOI:10.16707/j.cnki.fjpc.2015.01.056.
[17]王小敏.分析餐饮管理系统设计与实现[J].吉林广播电视大学学报,2014(08):53-54.
[18]许明波. 餐饮管理系统的设计与实现[D].厦门大学,2013.
[19]杨瑞. 中小型餐饮消费管理系统的设计与实现[D].华东师范大学,2011.
[20]夏剑军. 餐饮管理信息系统的设计与实现[D].广东工业大学,2005.