德阳香树园游泳馆管理系统的设计与实现
摘 要
本文介绍了德阳香树园游泳馆管理系统的设计与实现。该系统采用B/S模式,使用Java语言开发,借助SSM框架和MySQL数据库进行后台支持。此外,还结合微信小程序框架Uniapp进行开发,以提供更便捷的用户体验。
德阳香树园游泳馆管理系统旨在提供一个综合性的管理平台,方便游泳馆进行日常运营和管理。系统主要包括用户、教练和管理员三大模块,管理员模块包括后台首页、系统用户、取消订单管理、课程信息管理、请假信息管理、预约信息管理、泳具信息管理、租借信息管理、归还信息管理、用户信息管理、比赛信息管理、报名信息管理、游泳器材管理、器材入库管理、器材出库管理、实时人数管理、水质检测管理、系统管理、通知管理、资源管理、商城管理、、权限管理等功能模块。
通过本文的研究与实践,我们成功地设计并实现了德阳香树园游泳馆管理系统。该系统通过微信小程序提供便捷的用户体验,满足了用户的预约、管理和支付等需求。同时,系统具有良好的可读性、实用性和易扩展性,便于后期维护和操作。
关键词:游泳馆管理系统、B/S模式、Java语言、SSM框架、MySQL数据库、Uniapp框架。
Design and Implementation of Management System for Deyang Xiangshuyuan Swimming Pool
ABSTRACT
This article introduces the design and implementation of the management system for the Deyang Xiangshuyuan Swimming Pool. The system adopts B/S mode, is developed in Java language, and is supported by the SSM framework and MySQL database in the background. In addition, it is also developed in conjunction with the WeChat mini program framework Uniapp to provide a more convenient user experience.
The Deyang Xiangshuyuan Swimming Pool Management System aims to provide a comprehensive management platform that facilitates the daily operation and management of the swimming pool. The system mainly includes three modules: user, coach, and administrator. The administrator module includes the backend homepage, system user, cancellation order management, course information management, leave information management, appointment information management, swimming equipment information management, rental information management, return information management, user information management, competition information management, registration information management, swimming equipment management, equipment storage management, and equipment outbound management Real time personnel management, water quality testing management, system management, notification management, resource management, mall management, permission management and other functional modules.
Through the research and practice of this article, we have successfully designed and implemented a management system for the Deyang Xiangshuyuan Swimming Pool. The system provides a convenient user experience through WeChat mini programs, meeting the needs of users for appointment, management, and payment. At the same time, the system has good readability, practicality, and scalability, making it easy to maintain and operate in the later stage.
Keywords: Swimming pool management system, B/S mode, Java language, SSM framework, MySQL database, Uniapp framework
目 录
第1章 绪论
1.1.1 课题背景
随着人们生活水平的提高和健康意识的增强,游泳作为一项健身运动逐渐受到了更多人的关注和喜爱。然而,游泳馆作为游泳活动的主要场所,面临着管理效率低下、信息交流不便等问题。因此,设计和实现一个高效的游泳馆管理系统对于提升游泳馆的运营效果和服务质量具有重要意义。
目前,德阳香树园游泳馆作为该地区最大的室内游泳馆之一,每天接待大量的游客和会员。然而,由于管理系统不完善,导致游泳馆的日常管理工作繁琐且效率低下。例如,用户需要排队办理入馆手续,会员信息和消费记录难以及时更新,员工难以准确掌握各项运营指标等。这些问题给游泳馆的管理带来了一定的困扰,也影响了游客的体验和满意度。
因此,本课题旨在设计和实现一个集会员管理、预约管理、消费管理、数据统计等功能于一体的游泳馆管理系统,以提高游泳馆的运营效率和服务质量。通过该系统,用户可以方便快捷地办理入馆手续、预约游泳场地、购买泳具商品和预约租借记录等。同时,游泳馆管理者可以实时监控各项运营指标,并根据数据分析进行决策和优化,从而提升游泳馆的经营效果。
通过本课题的研究和实现,将为德阳香树园游泳馆及其他类似场所提供一个科学、高效的管理工具,促进游泳运动的发展,满足人们对健康生活的需求。
1.1.2 研究意义
从实践角度看,通过开发微信小程序作为游泳馆管理系统的一个重要组成部分,可以极大地提升用户的便利性和体验度。随着智能手机的普及和人们对移动应用的依赖增加,利用微信小程序作为入口,用户可以方便地进行预约、购买商品和消费记录等操作,不再受限于传统的排队办理入馆手续。这将大幅减少用户的等待时间,提高服务效率,同时也为游泳馆提供了更多的营销和推广渠道,促进业务的发展。
从理论角度看,本课题的研究对于探索微信小程序在公共场所管理中的应用具有一定的创新性和前瞻性。微信小程序作为一种新兴的移动应用形式,在各个领域的应用都取得了显著成果。而将其运用于游泳馆管理系统中,不仅能够提升管理效率和用户体验,还能够为相关学科如移动应用开发、用户界面设计等提供新的研究思路和方法。同时,通过对微信小程序的设计与实现过程进行分析和总结,也有助于推动信息管理理论的发展,并为其他类似场所的管理系统设计提供借鉴和参考。
因此,本课题的研究意义不仅限于德阳香树园游泳馆本身,还具有一定的推广价值和学术价值。通过研究和实践,可以有效改善游泳馆的管理问题,提升用户体验,促进移动应用的创新发展,为信息管理领域的理论研究提供新的思路和方法。
第2章第二章 关键技术的研究
2.1微信开发者工具
微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。
机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。
预览界面:写好视图布局后点击编译,用来刷新视图界面。
控制台:方便调试打印输出信息。
上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息。
资源文件:一般可以在资源文件进行对应项目的文件目录的断点调试。
显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用的。
本地数据存储:显示的是本地存储的数据。
视图调试:标组件以子父层级结构呈现,方便调试。
微信限制在2M 以内的代码体积;开发中一般不校验合法域名信息;小程序后台要做配置服务器域名。
以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善。
2.2小程序框架以及目录结构介绍
整个小程序框架系统分为两部分:逻辑层和视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生小程序 体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。框架提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序 。
2.3 JAVA技术
Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,JSP(java server pages),和XML技术。
JAVA语言功能:
面向对象:面向对象是Java编程语言的标志之一,是一种软件开发方法。最重要的是将所有东西变成对象,然后以某种方式编程。编程时,代码和数据写在每个对象上。 面向对象编程方法的出现使得人们在编程过程中的设计思考和操作变得非常简单,同时也提高了程序的安全性。
跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。您可以用Java编写程序并在其他地方运行它,而无需在编译后更改它。
垃圾回收机制:用来将那些在程序不操作时无用的对象所占用的内存空间释放掉,C ++最被人厌恶的就是因为其不能将在编程的过程中所占用的内存空间进行及时的释放,导致随着编程时间的变长所占用的内存空间越来越多。对于一些编程高手而言,他们会在刚开始编程的时候配置一块内存地址放在堆栈上,然后在不需要的时候会对其进行释放,而一些新手和菜鸟在很多的时候会忘记删除这个内存地址,从而导致程序在运行的过程中会变得十分的不稳定,最终有可能会导致程序崩溃。所以很多C ++的高手在编写程序时往往都会将删除后的指针的值设置为NULL,然后在删除之前确定一个指针的值是否为NULL。
2.4 ssm框架介绍:
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。
2.41 Spring
Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。
Spring的核心思想是IoC(控制反转),即不再需要程序员去显式地`new`一个对象,而是让Spring框架帮你来完成这一切。
2.42 SpringMVC
SpringMVC在项目中拦截用户请求,它的核心Servlet即DispatcherServlet承担中介或是前台这样的职责,将用户请求通过HandlerMapping去匹配Controller,Controller就是具体对应请求所执行的操作。SpringMVC相当于SSH框架中struts。
2.43 mybatis
mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。
页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。
2.5 MYSQL数据库
网站的开发必须配套相应数据库,数据库具有一定的组织结构,能够存放和管理数据信息,在以前数据库的功能仅仅是数据保存和管理操作,但是时代的变迁和发展,现在的数据库演变成了数据处理的方式,数据库从最开始的简单存放数据表格信息到现在的能够存放成千上万数据的大型数据库,期间还是经历了许多的改革。
本次开发的德阳香树园游泳馆管理系统使用的数据库是MYSQL数据库,该数据库运行速度快,安全性能也很高,而且对使用的平台没有任何的限制,所以被广泛应运到系统的开发中。MySQL是一个开源和多线程的关系管理数据库系统,MySQL是开放源代码的数据库,具有跨平台性,虽然功能未必强大,导致很多人都了解这个数据库的基本应用,在数据库中,总共建立了10几个表,这里面每个表都是相对应的,都各自有各自的联系,数据库意义重大,如果没有数据库的链接,就没办法运行程序,这显然可以看见数据库与程序的重要性,是紧密相连接的。
2.6 B/S结构
B/S(浏览器/服务器)结构是目前主流的网络化的结构模式,它能够把系统核心功能集中在服务器上面,可以帮助系统开发人员简化操作,便于维护和使用。只需要用户在客户端安装360浏览器、谷歌浏览器、QQ浏览器等当前大众浏览器,在电脑里面安装sqlserver、mysql数据库等数据库。安装好的浏览器与服务器端的数据库进行信息数据的交互。很多专门软件能够做到的事情,采用B/S结构模式也能实现,它能够结合Web浏览器技术,ActiveX技术以及多种脚本语言等技术。帮助程序开发者节约了不少开发成本。目前B/S结构成为程序开发主流结构,它最好的地方就是没有地点限制还不用专门安装软件,笔记本或者电脑能够上网就能访问系统。系统使用B/S进行开发在后期系统维护上面就会很省事,不用什么问题都在服务器上面操作,简单的客户端处理就解决部分问题,开发出来的程序跟用户交互性上面也会增强,还可以实时刷新浏览器进行程序局部的数据信息更新。
图1-1 B/S模式三层结构图
2.7 ECLIPSE开发环境
ECLIPSE支持广泛、兼容性高并且功能强大,是一个Eclipse 插件集合,普遍适应于JAVA和J2EE的系统开发,支持 JDBC,Hibernate,AJAX,Struts,Java Servlet,Spring,EJB3等市面上存在的几乎所有数据库链接工具和主流Eclipse产品 开发工具。
ECLIPSE在业内是所熟知的开发工具,该平台在开发的过程中运用的就是该工具。ECLIPSE又被称之为企业级的工作平台,它是以Eclipse IDE为基础的。ECLIPSE可以帮助我们进行数据库的研发和J2EE的使用,除此之外,还可以提高系统的运营能力,这突出表现在服务器的整合过程中。ECLIPSE的功能相当完备,能够为J2EE的集成提供必要的环境支持,从而完成编码、测试、调试及发布等功能。它可以支持SSM,HTML,SQL,Javascript,Struts, CSS等。
2.8 Tomcat服务器
Tomcat属于一种轻型的服务器,所以说在中小企业中并不具有普适性。但是当程序员需要开发或调试ssm框架程序时,则通常会将该服务器作为首选。对于一个仅具有计算机基础知识的人来说,计算机系统具有一个好的Apache服务器,可以很好的对HTML 页面进行访问。Tomcat 虽然是Apache的扩展,但是它们都是可以独立运行的,二者是不互相干扰的。当配置正确的时候,Apache服务器为HTML 页面的运行提供技术支持,Tomcat 的任务则是运行Servle和SSM 页面。Tomca也具有一定的HTML页面处理功能。
第3章 需求分析与可行性分析
3.1 功能需求分析
德阳香树园游泳馆管理系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。
系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在手机平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改德阳香树园游泳馆管理系统信息,这样既能节省时间,不用再像传统的方式耽误时间,真的很难去满足用户的各种需求。所以德阳香树园游泳馆管理系统的开发不仅仅是能满足用户的需求,还能提高管理员的工作效率,减少原有不必要的工作量。
3.2 可行性分析
3.2.1技术可行性:技术背景
本企业网站在Windows操作系统中进行开发,并且目前PC机的性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。
系统的开发环境和配置都是可以自行安装的,系统使用JSP开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。
(1)硬件可行性分析
德阳香树园游泳馆管理系统及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。
(2)软件可行性分析
开发整个系统使用的是云计算,流量的可扩展性和基于流量的智能调整云计算的优点就是流量的可扩展性和基于流量的智能调整,保障系统的安全及数据信息的及时备份。
因此,我们从两个方面进行了可行性研究,可以看出系统的开发没有问题。
3.2.2经济可行性
在德阳香树园游泳馆管理系统开发之前所做的市场调研及其他的物流公司相关的管理系统,都是没有任何费用的,都是通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于德阳香树园游泳馆管理系统的开发在经济上是完全可行的,没有任何费用支出的。
使用比较成熟的技术,系统是基于Java的开发,采用Mysql数据库。所以系统在开发人力、财力要求不高,具有经济可行性。
3.2.3操作可行性:
可操作性主要是对德阳香树园游泳馆管理系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户两个用户角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
3.3 系统性能分析
(1)系统响应效率:页面响应时问应该在3秒以内,最长不能超过4秒,并支持至少10000人同时在线所有系统。
(2)界面简洁清晰:系统界面要求简单明了,容易操作,符合用户操作习惯。
(3)储存性高:因为德阳香树园游泳馆管理系统中有很多的信息需要存储,因此对于系统的存储量有很大的要求,需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。
(4)易学性:该系统在操作上必须简单好上手,没有很多复杂的操作,只需要简单的进行学习就能操作该系统。
(5)稳定性需求:开发的德阳香树园游泳馆管理系统要求运行稳定,运行过程中无界面不清楚、字体模糊等现象。
(6)稳定性:开发的德阳香树园游泳馆管理系统要求运行稳定,运行过程中无界面不清楚、字体模糊等现象。
第4章 系统总体设计
4.1 系统的结构划分
本网站可以分为:用户使用的功能、教练使用的功能、管理员进行管理的功能。
管理员管理功能:后台首页、系统用户、取消订单管理、课程信息管理、请假信息管理、预约信息管理、泳具信息管理、租借信息管理、归还信息管理、用户信息管理、比赛信息管理、报名信息管理、游泳器材管理、器材入库管理、器材出库管理、实时人数管理、水质检测管理、系统管理、通知管理、资源管理、商城管理、、权限管理等功能。
用户使用功能:首页、泳具信息、比赛信息、商品中心、购物车、游泳资讯、我的(基本信息、收货地址、订单、购物车、取消订单、课程信息、请假信息、预约信息、租借信息、归还信息、用户信息、报名信息、实时人数、水质检测、订单配送等)。
德阳香树园游泳馆管理系统的结构图4-1所示:
图4-1 系统结构
登录系统结构图,如图4-2所示:
图4-2 登录结构图
这些功能可以充分满足德阳香树园游泳馆管理系统的需求。此系统功能较为全面如下图系统功能结构如图4-3所示。
图4-3系统功能结构图
4.2 系统的流程分析
4.2.1操作流程
图4-4登录流程图
4.2.2添加信息流程
添加信息流程图,如图所示:
图4-5添加信息流程图
4.2.3删除信息流程
删除信息流程图,如图所示:
图4-6删除信息流程图
4.3. 数据库设计
4.3.1 数据库实体
对于一个要开发的系统来说,E-R图可以让别人能更快更轻松的了解此系统的事务及它们之间的关系。根据系统分析阶段所得出的结论确定了在游泳馆管理系统中存在着多个实体分别是用普通用户、教练、管理员。
系统总体ER图如下图所示。
图4-8系统实体属性图
4.3.2数据表
将数据库概念设计的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 | 用户编号: |
表address (收货地址:)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | address_id | int | 10 | 0 | N | Y | 收货地址: | |
2 | name | varchar | 32 | 0 | Y | N | 姓名: | |
3 | phone | varchar | 13 | 0 | Y | N | 手机: | |
4 | postcode | varchar | 8 | 0 | Y | N | 邮编: | |
5 | address | varchar | 255 | 0 | N | N | 地址: | |
6 | user_id | mediumint | 8 | 0 | N | N | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | default | bit | 1 | 0 | N | N | 0 | 默认判断 |
表appointment_information (预约信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | appointment_information_id | int | 10 | 0 | N | Y | 预约信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | coach_account | int | 10 | 0 | Y | N | 0 | 教练账号 |
5 | coach_name | varchar | 64 | 0 | Y | N | 教练姓名 | |
6 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
7 | appointment_date | date | 10 | 0 | Y | N | 预约日期 | |
8 | start_time | datetime | 19 | 0 | Y | N | 开始时间 | |
9 | end_time | datetime | 19 | 0 | Y | N | 结束时间 | |
10 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
11 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表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 | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 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 | 更新时间: |
表cancel_order (取消订单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cancel_order_id | int | 10 | 0 | N | Y | 取消订单ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
5 | order_amount | varchar | 64 | 0 | Y | N | 订单金额 | |
6 | cancel_date | date | 10 | 0 | Y | N | 取消日期 | |
7 | reason_for_cancellation | text | 65535 | 0 | Y | N | 取消原因 | |
8 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
9 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表cart (购物车)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cart_id | int | 10 | 0 | N | Y | 购物车ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | img | varchar | 255 | 0 | N | N | 0 | 图片: |
4 | user_id | int | 10 | 0 | N | N | 0 | 用户ID: |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | state | int | 10 | 0 | N | N | 0 | 状态:使用中,已失效 |
8 | price | double | 9 | 2 | N | N | 0.00 | 单价: |
9 | price_ago | double | 9 | 2 | N | N | 0.00 | 原价: |
10 | price_count | double | 11 | 2 | N | N | 0.00 | 总价: |
11 | num | int | 10 | 0 | N | N | 1 | 数量: |
12 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
13 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
14 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 |
表coach_user (教练用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | coach_user_id | int | 10 | 0 | N | Y | 教练用户ID | |
2 | coach_name | varchar | 64 | 0 | Y | N | 教练姓名 | |
3 | coach_gender | varchar | 64 | 0 | Y | N | 教练性别 | |
4 | coach_age | int | 10 | 0 | Y | N | 0 | 教练年龄 |
5 | coach_level | varchar | 64 | 0 | Y | N | 教练级别 | |
6 | entire_period_of_actual_operation | int | 10 | 0 | Y | N | 0 | 从业年限 |
7 | coach_introduction | text | 65535 | 0 | Y | N | 教练简介 | |
8 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
9 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | 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: |
表competition_information (比赛信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | competition_information_id | int | 10 | 0 | N | Y | 比赛信息ID | |
2 | competition_name | varchar | 64 | 0 | Y | N | 比赛名称 | |
3 | competition_pictures | varchar | 255 | 0 | Y | N | 比赛图片 | |
4 | release_time | date | 10 | 0 | Y | N | 发布时间 | |
5 | registration_time | datetime | 19 | 0 | Y | N | 报名时间 | |
6 | deadline | datetime | 19 | 0 | Y | N | 截止时间 | |
7 | competition_address | varchar | 64 | 0 | Y | N | 比赛地址 | |
8 | registration_fee | int | 10 | 0 | Y | N | 0 | 报名费用 |
9 | competition_details | longtext | 2147483647 | 0 | Y | N | 比赛详情 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表course_information (课程信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | course_information_id | int | 10 | 0 | N | Y | 课程信息ID | |
2 | coach_account | int | 10 | 0 | Y | N | 0 | 教练账号 |
3 | coach_name | varchar | 64 | 0 | Y | N | 教练姓名 | |
4 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
5 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
6 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
7 | course_date | date | 10 | 0 | Y | N | 课程日期 | |
8 | class_time | datetime | 19 | 0 | Y | N | 上课时间 | |
9 | end_of_class_time | datetime | 19 | 0 | Y | N | 下课时间 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表equipment_outbound (器材出库)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | equipment_outbound_id | int | 10 | 0 | N | Y | 器材出库ID | |
2 | coach_account | int | 10 | 0 | Y | N | 0 | 教练账号 |
3 | coach_name | varchar | 64 | 0 | Y | N | 教练姓名 | |
4 | equipment_name | varchar | 64 | 0 | Y | N | 器材名称 | |
5 | equipment_number | varchar | 64 | 0 | Y | N | 器材编号 | |
6 | delivery_date | date | 10 | 0 | Y | N | 出库日期 | |
7 | outbound_quantity | int | 10 | 0 | Y | N | 0 | 出库数量 |
8 | reason_for_outbound | text | 65535 | 0 | Y | N | 出库原因 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表equipment_storage (器材入库)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | equipment_storage_id | int | 10 | 0 | N | Y | 器材入库ID | |
2 | coach_account | int | 10 | 0 | Y | N | 0 | 教练账号 |
3 | coach_name | varchar | 64 | 0 | Y | N | 教练姓名 | |
4 | equipment_name | varchar | 64 | 0 | Y | N | 器材名称 | |
5 | equipment_number | varchar | 64 | 0 | Y | N | 器材编号 | |
6 | warehousing_date | date | 10 | 0 | Y | N | 入库日期 | |
7 | receipt_quantity | varchar | 64 | 0 | Y | N | 入库数量 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表goods (商品信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | goods_id | mediumint | 8 | 0 | N | Y | 产品id:[0,8388607] | |
2 | title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品和html的<title>标签中 | |
3 | img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
5 | price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
6 | price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
7 | sales | int | 10 | 0 | N | N | 0 | 销量:[0,1000000000] |
8 | inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
9 | type | varchar | 64 | 0 | N | N | 商品分类: | |
10 | hits | int | 10 | 0 | N | N | 0 | 点击量:[0,1000000000]访问这篇产品的人次 |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
12 | img_1 | text | 65535 | 0 | Y | N | 主图1: | |
13 | img_2 | text | 65535 | 0 | Y | N | 主图2: | |
14 | img_3 | text | 65535 | 0 | Y | N | 主图3: | |
15 | img_4 | text | 65535 | 0 | Y | N | 主图4: | |
16 | img_5 | text | 65535 | 0 | Y | N | 主图5: | |
17 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
19 | customize_field | text | 65535 | 0 | Y | N | 自定义字段 | |
20 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
21 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
22 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
23 | user_id | int | 10 | 0 | Y | N | 0 | 添加人 |
表goods_type (商品类型)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | int | 10 | 0 | N | Y | 商品分类ID: | |
2 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
3 | name | varchar | 255 | 0 | Y | N | 商品名称: | |
4 | desc | varchar | 255 | 0 | Y | N | 描述: | |
5 | icon | varchar | 255 | 0 | Y | N | 图标: | |
6 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
7 | source_field | 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 | 更新时间: |
表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: |
表leave_information (请假信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | leave_information_id | int | 10 | 0 | N | Y | 请假信息ID | |
2 | coach_account | int | 10 | 0 | Y | N | 0 | 教练账号 |
3 | coach_name | varchar | 64 | 0 | Y | N | 教练姓名 | |
4 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
5 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
6 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
7 | course_date | date | 10 | 0 | Y | N | 课程日期 | |
8 | class_time | datetime | 19 | 0 | Y | N | 上课时间 | |
9 | end_of_class_time | datetime | 19 | 0 | Y | N | 下课时间 | |
10 | leave_date | date | 10 | 0 | Y | N | 请假日期 | |
11 | reason_for_taking_leave | varchar | 64 | 0 | Y | N | 请假原因 | |
12 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
13 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表logistics_delivery (物流配送)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | logistics_delivery_id | int | 10 | 0 | N | Y | 物流配送ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | purchase_quantity | varchar | 64 | 0 | Y | N | 购买数量 | |
5 | total_transaction_amount | double | 11 | 2 | Y | N | 0.00 | 交易总额 |
6 | the_date_of_issuance | date | 10 | 0 | Y | N | 发货日期 | |
7 | delivery_number | varchar | 30 | 0 | Y | N | 配送订单 | |
8 | ordinary_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
9 | shipping_address | varchar | 64 | 0 | Y | N | 收货地址 | |
10 | delivery_status | varchar | 64 | 0 | Y | N | 配送状态 | |
11 | signing_status | varchar | 64 | 0 | Y | N | 签收状态 | |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | contact_name | varchar | 255 | 0 | Y | N | 联系人名字 | |
14 | merchant_id | int | 10 | 0 | Y | N | 商家id | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表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 | 更新时间: |
表order (订单)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | order_id | int | 10 | 0 | N | Y | 订单ID: | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单号: | |
3 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
4 | title | varchar | 32 | 0 | Y | N | 商品标题: | |
5 | img | varchar | 255 | 0 | Y | N | 商品图片: | |
6 | price | double | 10 | 2 | N | N | 0.00 | 价格: |
7 | price_ago | double | 10 | 2 | N | N | 0.00 | 原价: |
8 | num | int | 10 | 0 | N | N | 1 | 数量: |
9 | price_count | double | 8 | 2 | N | N | 0.00 | 总价: |
10 | norms | varchar | 255 | 0 | Y | N | 规格: | |
11 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
12 | contact_name | varchar | 32 | 0 | Y | N | 联系人姓名: | |
13 | contact_email | varchar | 125 | 0 | Y | N | 联系人邮箱: | |
14 | contact_phone | varchar | 11 | 0 | Y | N | 联系人手机: | |
15 | contact_address | varchar | 255 | 0 | Y | N | 收件地址: | |
16 | postal_code | varchar | 9 | 0 | Y | N | 邮政编码: | |
17 | user_id | int | 10 | 0 | N | N | 0 | 买家ID: |
18 | merchant_id | mediumint | 8 | 0 | N | N | 0 | 商家ID: |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
21 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
22 | state | varchar | 16 | 0 | N | N | 待付款 | 订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成 |
23 | remark | text | 65535 | 0 | Y | N | 订单备注 | |
24 | delivery_state | varchar | 16 | 0 | Y | N | 未配送 | 发货状态:未配送,已配送 |
25 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 折扣 |
表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已取消 |
表product_center (商品中心)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | product_center_id | int | 10 | 0 | N | Y | 商品中心ID | |
2 | product_brand | varchar | 64 | 0 | Y | N | 商品品牌 | |
3 | product_specifications | varchar | 64 | 0 | Y | N | 商品规格 | |
4 | cart_title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品html的标签中 | |
5 | cart_img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
6 | cart_description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
7 | cart_price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
8 | cart_price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
9 | cart_inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
10 | cart_type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
11 | cart_content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
12 | cart_img_1 | text | 65535 | 0 | Y | N | 主图1: | |
13 | cart_img_2 | text | 65535 | 0 | Y | N | 主图2: | |
14 | cart_img_3 | text | 65535 | 0 | Y | N | 主图3: | |
15 | cart_img_4 | text | 65535 | 0 | Y | N | 主图4: | |
16 | cart_img_5 | text | 65535 | 0 | Y | N | 主图5: | |
17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表real_time_number_of_people (实时人数)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | real_time_number_of_people_id | int | 10 | 0 | N | Y | 实时人数ID | |
2 | swimming_pool_number | varchar | 64 | 0 | N | N | 泳池编号 | |
3 | swimming_pool_image | varchar | 255 | 0 | Y | N | 泳池图片 | |
4 | pool_address | varchar | 64 | 0 | Y | N | 泳池地址 | |
5 | release_time | datetime | 19 | 0 | Y | N | 发布时间 | |
6 | current_number_of_people | varchar | 64 | 0 | Y | N | 现有人数 | |
7 | pool_details | text | 65535 | 0 | Y | N | 泳池详情 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表registered_users (注册用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | registered_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 | user_age | int | 10 | 0 | Y | N | 0 | 用户年龄 |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
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 | 更新时间 |
表registration_information (报名信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | registration_information_id | int | 10 | 0 | N | Y | 报名信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | competition_name | varchar | 64 | 0 | Y | N | 比赛名称 | |
5 | registration_time | datetime | 19 | 0 | Y | N | 报名时间 | |
6 | competition_address | varchar | 64 | 0 | Y | N | 比赛地址 | |
7 | registration_fee | int | 10 | 0 | Y | N | 0 | 报名费用 |
8 | registration_date | date | 10 | 0 | Y | N | 报名日期 | |
9 | number_of_applicants | int | 10 | 0 | Y | N | 0 | 报名人数 |
10 | registration_amount | varchar | 64 | 0 | Y | N | 报名金额 | |
11 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
12 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
13 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
14 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表rental_information (租借信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | rental_information_id | int | 10 | 0 | N | Y | 租借信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | swimming_equipment_name | varchar | 64 | 0 | Y | N | 泳具名称 | |
5 | swimming_equipment_number | varchar | 64 | 0 | Y | N | 泳具编号 | |
6 | rental_fees | int | 10 | 0 | Y | N | 0 | 租借费用 |
7 | lease_date | date | 10 | 0 | Y | N | 租借日期 | |
8 | lease_quantity | int | 10 | 0 | Y | N | 0 | 租借数量 |
9 | lease_amount | varchar | 64 | 0 | Y | N | 租借金额 | |
10 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
11 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
12 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
13 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表return_information (归还信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | return_information_id | int | 10 | 0 | N | Y | 归还信息ID | |
2 | user_account | int | 10 | 0 | Y | N | 0 | 用户账号 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | swimming_equipment_name | varchar | 64 | 0 | Y | N | 泳具名称 | |
5 | swimming_equipment_number | varchar | 64 | 0 | Y | N | 泳具编号 | |
6 | lease_quantity | varchar | 64 | 0 | Y | N | 租借数量 | |
7 | return_date | date | 10 | 0 | Y | N | 归还日期 | |
8 | return_quantity | int | 10 | 0 | Y | N | 0 | 归还数量 |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表sensitive_vocabulary (敏感词汇)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | sensitive_vocabulary_id | int | 10 | 0 | N | Y | 敏感词汇ID | |
2 | sensitive_vocabulary | varchar | 64 | 0 | Y | N | 敏感词汇 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表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 | 更新时间: |
表swimming_equipment (游泳器材)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | swimming_equipment_id | int | 10 | 0 | N | Y | 游泳器材ID | |
2 | equipment_name | varchar | 64 | 0 | Y | N | 器材名称 | |
3 | equipment_number | varchar | 64 | 0 | N | N | 器材编号 | |
4 | equipment_pictures | varchar | 255 | 0 | Y | N | 器材图片 | |
5 | inventory_quantity | int | 10 | 0 | Y | N | 0 | 库存数量 |
6 | equipment_details | text | 65535 | 0 | Y | N | 器材详情 | |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表swimming_equipment_information (泳具信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | swimming_equipment_information_id | int | 10 | 0 | N | Y | 泳具信息ID | |
2 | swimming_equipment_name | varchar | 64 | 0 | Y | N | 泳具名称 | |
3 | swimming_equipment_number | varchar | 64 | 0 | N | N | 泳具编号 | |
4 | swimming_equipment_pictures | varchar | 255 | 0 | Y | N | 泳具图片 | |
5 | rental_fees | int | 10 | 0 | Y | N | 0 | 租借费用 |
6 | swimming_gear_inventory | int | 10 | 0 | Y | N | 0 | 泳具库存 |
7 | swimming_gear_details | text | 65535 | 0 | Y | N | 泳具详情 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | 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 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
表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 | 更新时间: |
表user_information (用户信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_information_id | int | 10 | 0 | N | Y | 用户信息ID | |
2 | registered_users | int | 10 | 0 | Y | N | 0 | 注册用户 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
5 | user_age | varchar | 64 | 0 | Y | N | 用户年龄 | |
6 | registration_date | date | 10 | 0 | Y | N | 报名日期 | |
7 | expiration_time | date | 10 | 0 | Y | N | 到期时间 | |
8 | number_of_monthly_cards | int | 10 | 0 | Y | N | 0 | 月卡次数 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表water_quality_testing (水质检测)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | water_quality_testing_id | int | 10 | 0 | N | Y | 水质检测ID | |
2 | swimming_pool_number | varchar | 64 | 0 | Y | N | 泳池编号 | |
3 | detection_time | datetime | 19 | 0 | Y | N | 检测时间 | |
4 | filtering_system | varchar | 64 | 0 | Y | N | 过滤系统 | |
5 | circulatory_system | varchar | 64 | 0 | Y | N | 循环系统 | |
6 | drainage_system | varchar | 64 | 0 | Y | N | 排水系统 | |
7 | water_temperature_detection | varchar | 64 | 0 | Y | N | 水温检测 | |
8 | swimming_pool_cleaning | varchar | 64 | 0 | Y | N | 泳池清洁 | |
9 | swimming_pool_safety | varchar | 64 | 0 | Y | N | 泳池安全 | |
10 | other_remarks | text | 65535 | 0 | Y | N | 其他备注 | |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
第5章 系统实现过程(详细设计)
5.1 运行环境
5.1.1 硬件环境
开发本系统时,本人所使用的电脑带有酷睿i5的cpu,gtx 950m的显卡,4G的运行内存。
5.1.2 软件环境
开发本系统时本人使用的是windows win 10的操作系统,使用了MySQL数据库管理工具,版本为5.0,JDK版本为1.8,开发工具为ECLIPSE ,版本为8.5,web容器使用的为ECLIPSE 自带的tomcat。
5.2 系统实现
5.2.1系统功能模块
德阳香树园游泳馆管理系统,在系统注册页面填写用户信息账号、密码、昵称、邮箱、身份、用户姓名、用户性别、用户年龄等内容进行注册操作,如图5-1所示。
图5-1用户注册界面图
注册关键代码如下:
/**
* 注册
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(HttpServletRequest request) throws IOException {
// 查询用户
Map<String, String> query = new HashMap<>();
Map<String,Object> map = service.readBody(request.getReader());
query.put("username",String.valueOf(map.get("username")));
List list = service.selectBaseList(service.select(query, new HashMap<>()));
if (list.size()>0){
return error(30000, "用户已存在");
}
map.put("password",service.encryption(String.valueOf(map.get("password"))));
service.insert(map);
return success(1);
}
public Map<String,Object> readBody(BufferedReader reader){
BufferedReader br = null;
StringBuilder sb = new StringBuilder("");
try{
br = reader;
String str;
while ((str = br.readLine()) != null){
sb.append(str);
}
br.close();
String json = sb.toString();
return JSONObject.parseObject(json, Map.class);
}catch (IOException e){
e.printStackTrace();
}finally{
if (null != br){
try{
br.close();
}catch (IOException e){
e.printStackTrace();
}
}
}
return null;
}
public void insert(Map<String,Object> body){
E entity = JSON.parseObject(JSON.toJSONString(body),eClass);
baseMapper.insert(entity);
log.info("[{}] - 插入操作:{}",entity);
}
在小程序首页页面可以用户功能有泳具信息、比赛信息、商品中心、购物车、
游泳资讯、我的(个人中心、基本信息、收货地址、订单、购物车、取消订单、课程信息、请假信息、预约信息、租借信息、归还信息、用户信息、报名信息、实时人数、水质检测、订单配送表)等,如图5-2所示。
图5-2 小程序系统界面图
在我的管理页面我的(个人中心、基本信息、收货地址、订单、购物车、取消订单、课程信息、请假信息、预约信息、租借信息、归还信息、用户信息、报名信息、实时人数、水质检测、订单配送表))等功能,如图5-3所示。
图5-3 我的界面图
在我的界面,用户点击头像进入个人资料页面,在该页面可以修改个人资料,如图5-4所示。
图5-4 个人资料界面图
用户点击泳具信息可以查看泳具信息、泳具名称、泳具编号、泳具图片、租借费用、泳具库存、泳具详情等内容,还可在该页面进行泳具收藏、租借等操作,如图5-5所示、5-6所示。
图5-5 泳具信息界面图
图5-6租借信息界面图
用户在比赛信息页面可以查看各类比赛的比赛地址、报名时间、比赛详情、截止时间、报名费用、报名人数、报名金额等,根据自己的选择需求填写资料提交报名,如图5-7所示,5-8所示。
图5-7比赛信息界面图
图5-8报名信息界面图
用户在商品中心页面添加选中的心仪商品、可查看商品详情、发表评论、点击收藏、加入购物车、咨询客服和点击立即购买支付等操作,如图5-9,5-10所示。
图5-9 商品中心界面图
图5-10商品支付界面图
在我的个人中心页面中可以对基本信息、收货地址、订单、购物车进行更改添加查询、取消订单、课程信息、请假信息、预约信息、租借信息:需管理员审核过状态、归还信息:需管理员审核过状态、用户信息、报名信息、实时人数、水质检测、订单配送等操作,如图5-11所示。
图5-11我的个人中心界面图
5.2.2管理员功能模块
在管理员登录页面添加登录信息用户名、密码、角色等进行登录,如图5-9所示。
图5-12管理员登录界面图
登录关键代码如下:
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
QueryWrapper wrapper = new QueryWrapper<User>();
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
public String select(Map<String,String> query,Map<String,String> config){
StringBuffer sql = new StringBuffer("select ");
sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");
sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query, "0".equals(config.get(FindConfig.LIKE))));
if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){
sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");
}
if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){
sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");
}
if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){
int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;
int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;
sql.append(" limit ").append( (page-1)*limit ).append(" , ").append(limit);
}
log.info("[{}] - 查询操作,sql: {}",table,sql);
return sql.toString();
}
public List selectBaseList(String select) {
List<Map<String,Object>> mapList = baseMapper.selectBaseList(select);
List<E> list = new ArrayList<>();
for (Map<String,Object> map:mapList) {
list.add(JSON.parseObject(JSON.toJSONString(map),eClass));
}
return list;
}
在管理员功能页面中可以查看功能分为:后台首页、系统用户、取消订单管理、课程信息管理、请假信息管理、预约信息管理、泳具信息管理、租借信息管理、归还信息管理、用户信息管理、比赛信息管理、报名信息管理、游泳器材管理、器材入库管理、器材出库管理、实时人数管理、水质检测管理、系统管理、通知管理、资源管理、商城管理、、权限管理等功能,并可进行相应操作,如图5-13所示。
图5-13管理员功能界面图
在系统用户管理页面中可以对注册用户和教练用户、用户名称、性别、年龄等信息进行详情查看、修改或删除等操作,如图5-14所示。
图5-14用户管理界面图
在取消订单管理页面中可以对用户的取消订单等信息进行审核、填写取消原因、回复、修改或删除等操作,还可以根据需要对取消订单进行添加类型内容,如图5-15所示。
图5-15取消订单管理界面图
在泳具信息管理页面可以添加泳具名称、泳具编号、泳具图片、租借费用、泳具库存、泳具详情等内容,还可根据需要在泳具信息查询页面对已有的泳具信息进行详细修改查看评论或删除等操作,如图5-16所示。
图5-16泳具信息管理界面图
在水质检测管理页面可以添加泳池编号、检测时间、过滤系统、循环系统、排水系统、水温检测、泳池清洁、泳池安全详情等内容,还可根据需要在水质检查询页面对已有的水质检测列表进行详细修改查看评论或删除等操作,如图5-17所示。
图5-17水质检测管理界面图
当点击“商城管理”这一菜单的时候,会出现商品中心、分类列表、订单列表、订单配送这四个子菜单,可以对商品中心、分类列表这两个模块进行增删改查操作,管理员在订单列表和订单配送两个模块里管理用户下单订单的发货配送、签收状态,商品中心、分类列表、订单列表界面分别如下图所示。
图5-18商品中心管理界面图
图5-19分类列表管理界面图
图5-20订单列表管理界面图
第6章 系统测试
6.1系统测试的目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
德阳香树园游泳馆管理系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在德阳香树园游泳馆管理系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
6.2系统测试方法
在对德阳香树园游泳馆管理系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让德阳香树园游泳馆管理系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个德阳香树园游泳馆管理系统开发所牵扯的该问题都必须一一解决,提高德阳香树园游泳馆管理系统平台的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
6.3功能测试
用户登录测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:admin 密码:123 | 弹出错误提示,提示密码错误 | 弹出错误提示,提示密码错误 | 通过 |
登录模块 | 用户名:123 密码:admin | 弹出错误提示,提示用户名错误 | 弹出错误提示,提示用户名错误 | 通过 |
登录模块 | 用户名:admin 密码:admin | 管理员登录成功 | 管理员登录成功 | 通过 |
删除分类测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
删除分类模块 | 分类名:最新通知 | 删除成功、页面自动跳转 | 删除成功、页面自动跳转 | 通过 |
修改密码测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码模块 | 原密码:666 新密码:123 确认密码:123 | 弹出错误提示,提示原密码错误 | 弹出错误提示,提示原密码错误 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:333 | 弹出错误提示,提示确认密码不一致 | 弹出错误提示,提示确认密码不一致 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:123 | 密码修改成功 | 密码修改成功 | 通过 |
通过对功能的测试,德阳香树园游泳馆管理系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。
第7章 总结
2024年的今天,计算机技术已经相当成熟。它的发展推动了许多行业改头换面,计算机的出现使人类社会有了进一步降低人力物力和资源的方法,提高了人类社会的生产力,转变了社会生产方式。
本文通过利用JAVA语言、ssm框架和MySQL数据库技术,完成了德阳香树园游泳馆管理系统的设计与实现。该系统旨在提高游泳馆的管理效率和服务质量,以满足用户对便捷、快速服务的需求。
在系统设计过程中,我们首先进行了需求分析,深入了解了游泳馆的运营模式和管理需求。基于此,我们确定了系统的功能模块,包括用户管理、预约管理、消费管理、租借管理、数据统计、在线购买下单等。这些功能模块的设计考虑了游泳馆的特点和用户需求,旨在提供全面而便捷的管理服务。
接下来,在系统开发阶段,我们选择了JAVA作为开发语言,并采用ssm框架进行开发。通过合理的架构设计和模块划分,我们实现了系统各个功能模块的具体功能,并将数据存储和管理交由MySQL数据库处理。系统的开发过程中,我们注重代码的规范性和可维护性,确保系统的稳定性和扩展性。
经过系统的调试和测试,我们得出以下结论:德阳香树园游泳馆管理系统基本能够满足业务需求,具有简洁美观的界面和易于操作的特点。系统能够有效地管理用户信息、实现预约功能、记录消费信息,并能够进行数据统计和分析。然而,由于时间和资源的限制,系统在某些细节和功能上仍有改进的空间。因此本系统还存在不少缺陷、不足,比如:
1. 数据输入的格式并没有全部检验,所以很难保证数据的准确,可能有一些不符合规则的数据也可以通过检验。
2. 系统功能还不够完善,无法提供丰富多彩的在线功能,只能实现购买、注册和订单管理等一系列功能。
本系统还存在一些漏洞没有解决,在现实应用情境中很难保证完全不出错,但相信通过再次完善,可以调试出真正符合实际的在线德阳香树园游泳馆管理系统。
参考文献
[1]Sagala M P ,Bhomia K R ,Murdiyarso D . Assessment of coastal vulnerability to support mangrove restoration in the northern coast of Java, Indonesia [J]. Regional Studies in Marine Science, 2024, 70 103383-.
[2]Ketki R ,Arjun K ,Nicole T F . Corrigendum to “Mental health law, policy & program in India – A fragmented narrative of change, contradictions and possibilities” [SSM - Mental Health 2 (2022) 100174] [J]. SSM - Mental Health, 2023, 4
[3]张金霜. 一种基于SM2算法的微信小程序防伪溯源系统的设计 [J]. 网络安全技术与应用, 2023, (11): 59-61.
[4]王骅磊,刘峥. 郑州市游泳馆运营现状及发展对策分析 [J]. 文体用品与科技, 2023, (16): 4-6.
[5]魏梅. 游泳馆运营现状与发展策略的研究 [J]. 文体用品与科技, 2023, (14): 79-81.
[6]Stokes D . Update or migrate? Planning for MySQL 5.7 EOL [J]. InfoWorld.com, 2023,
[7]李艳丽. 泸州市游泳培训行业发展现状调查研究 [J]. 文体用品与科技, 2023, (12): 138-140.
[8]孙美茹. 上海市杨浦区游泳场所人因风险识别与防范对策研究[D]. 上海体育学院, 2023.
[9]周鑫凯. 寒冷地区中小型游泳馆绿色节能设计研究[D]. 西安建筑科技大学, 2023.
[10]杨全明. 上海市游泳场馆服务质量评价指标体系的构建与实证研究[D]. 上海体育学院, 2023.
[11]丁声浩. 基于视频教学的翻转课堂教学模式对青少年游泳教学效果的实验研究[D]. 河北科技师范学院, 2023.
[12]姚志强. BOPPPS融合线上教学在高校游泳教学中的实验研究[D]. 吉林体育学院, 2023.
[13]孟祥浩. HB游泳馆门店服务质量改善研究[D]. 天津理工大学, 2023.
[14]肖悦,张晓林. 双减政策下游泳融入体育课后延时服务高质量发展研究[C]// 中国体育科学学会体能训练分会,全国学校体育联盟(游泳项目). 奋进新征程——推动青少年和学校体育高质量发展——第四届国际水中运动论坛论文摘要汇编. 四川师范大学体育学院;, 2022: 3.
[15]王海仁. 体育中考改革背景下学校游泳教学课程建设研究[C]// 中国体育科学学会体能训练分会,全国学校体育联盟(游泳项目). 奋进新征程——推动青少年和学校体育高质量发展——第四届国际水中运动论坛论文摘要汇编. 河南大学体育学院;, 2022: 3.
[16]张永利,吴威. 智能配电系统在杭州奥体中心体育馆游泳馆的应用 [J]. 智能建筑电气技术, 2022, 16 (06): 69-72.
[17]徐慧. 镇江市区初中游泳项目教学现状及推广研究[D]. 扬州大学, 2022.
[18]王雨,仝大伟. 装配式游泳馆关键技术分析和质量提升策略 [J]. 中国标准化, 2022, (12): 52-54.
[19]王鹏飞. 游泳馆营销策略与消费者行为关系研究[D]. 上海体育学院, 2022.
[20]黄攀. 渭南市体育中心游泳馆信息化管理研究[D]. 西安体育学院, 2022.
致谢
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设能够完成离不开老师的帮助。我对老师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。
免费领取项目源码,请关注❤点赞收藏并私信博主,谢谢-