基于微信小程序的游泳馆管理系统--论文源码调试讲解
2 关键技术介绍
2.1 SSM框架
开发信息管理系统的主流框架是SSM(Spring + Spring MVC + MyBatis),SSM框架web层使用Spring MVC框架,使传输前后端数据变得简单;对于业务层使用Spring作为轻量级控制反转和面向切面的容器框架;对于相关SQL操作,采用Mybatis作为持久层框架,对JDBC进行封装,使得数据库的底层面向开发者操作处于一种透明状态。
2.2 Java技术及架构介绍
Java以Linux为基础并且使用Java语言进行开发的操作平台。Java的开放性让他允许所有人对系统进行修改和完善,这一点也让他在近些年成为便携设备上主要的操作系统。Java同时还内置了内置丰富的应用程序,比如电话、摄像头、播放器。这些都为在系统上开发程序提供了便利。该系统运用小程序完成前台的开发,包括登录注册、个性化特征的收集、基于个性化特征进行旅游信息的推荐和对推荐旅行方案的评价等。
用户使用我们这个游泳馆管理系统小程序只需一个Java手机就可以使用了,而且所有操作都是我们熟悉的操作手法。所有的操作通过手机就可以完成,用户不需培训,只要稍微提示一下即可。所以开发游泳馆管理系统使用小程序技术不仅方便了开发者而且用户使用起来也非常方便,可以说是相对来说比较完美的开发平台了。
2.3 MYSQL数据库
MySQL数据库管理系统,是目前最流行的关系型数据库管理系统之一。它相对与SQLServer来说小了很多,电脑内存比较小的人用这个会比较方便而且MySQL安装起来非常方便,不需要有很多插件的安装,基本上只需要点击下一步执行,只有在最后的时候选一下数据集选项。MySQL查询起来也非常方便,连接数据库之后直接打开就可看到,对于我这种懒人来说真的非常实用。MYSQL能够以极高的效率完成各种数据库查询,并能方便的使用存储过程,同时我们一般在实用MySQL是基本上都是实用简单的可视化工具查看,界面简单清晰,以图形的形式表达用户界面易查看的,又能够使数据库管理和系统管理更加简单、直观。由于MySQL对Web端的支持,用户能轻易的在浏览器里面运行界面获取数数据关系,所以这次课题选用MySQL数据库。
2.4微信小程序框架
微信小程序的开发框架是微信所独有的一套框架,分为View视图层和App Service逻辑层两部分。框架提供了一种类似于Web中html语言的wxml语言,作为视图层的标签语言,用于构造页面的布局。另外提供了一种类似Web中css语言的WXSS语言,作为视图层的标签样式语言,用于表述页面的显示。而在逻辑层的框架,则同样使用了JS语言。微信小程序为了使开发者专注在代码的逻辑层面和数据处理上,还专门提供了两种解决方案,一种是事件,一种是数据的传输。这两种方案都位于小程序框架的视图层和逻辑层之间。用户在视图层进行交互之后,传递到逻辑层对数据进行处理,并返回数据到视图层向用户反馈。对于微信小程序视图层的开发设计,小程序官方提供了一系列的组件,这些基本组件可以极大的帮助开发者完成视图层的开发。同时,对于逻辑层的开发,小程序官方提供了一系列API来方便开发者请求一些额外功能。
2.5 B/S架构
随着软件系统的不断改进和升级,B/S结构产品更为方便的特征体现地十分明显。对于一个中等偏大的公司来说,如果系统管理员每天要在很多台电脑之间来回查看,不断奔走,那么效率和工作量就会变得很低,但是如果使用了B/S结构,那么管理员只要对服务器进行管理就够了。
B/S结构最大的优点它不需要安装任何的软件,它所有的客户端就只是浏览器,所以只要有一台电脑并且可以上网就可以解决所有问题,客户端可以完全地不用管理员维护。无论使用系统的使用者是什么样的规模,也不管分支有多么的庞大,都不会对维护和升级的工作量造成影响,所有的维护和升级只需要操作服务器。随着B/S结构的不断发展,使用的人也不断增加,从而带动了AJAX技术的发展,和B/S结构一样,它也能在客户端上处理程序,这便缓解了服务器的负担,提高了交互性,而且实现了局部实时刷新。
3 需求分析与可行性分析
主要介绍游泳馆管理系统小程序的需求分析,通常都是功能需求和非功能需求。及其本次游泳馆管理系统的可行性分析。
3.1功能需求分析
系统功能需求分析是通过软件开发者在参与市场调研,与游泳馆管理者及使用者交流后经过详细缜密的思考,再讨论研究后得出的初步系统开发所需实现功能。这是开发系统的开始,也是相当关键的一步,如果不在这个阶段制定系统所需模块,日后会带来不必要的麻烦。因此,必须严肃认真,全身心投入去做好这个步骤。
本系统采用从上往下的步骤开发,基本功能如下:
本课题要求实现一套游泳馆管理系统小程序,系统主要包括管理员和会员两大模块
-
管理员;管理员进入系统主要功能包括首页、个人中心、会员管理、场馆类型管理、泳池类型管理、饮食类型管理、场馆信息管理、泳池信息管理、饮食信息管理、泳池预订管理、购买信息管理、会员等级管理、会员充值管理、系统管理等功能并进行操作。
-
会员;会员进入小程序可以实现首页、公告信息、我的等,在我的页面可以对个人中心、场馆信息、泳池信息、饮食信息、泳池预订、购买信息、会员充值进行相应操作。
3.2 性能需求分析
对系统的性能,从(功能、运行、界面、安全)等方面进行,下面我们逐一进行分析;
-
系统的功能是否完整进行分析:系统的功能,能对应设计出原始代码和算法,以表格同文字的形式进行详细介绍个人信息保证功能完整;
-
系统的运行是否通畅进行分析:系统的每个功能都有编写数据的关系和应对的代码,通过需求分析和可行性分析进行分析和显示系统的物理数据,保证其进行通畅;
-
系统的界面设计进行分析:对系统中的软件进行处理与分析的方式是由不同代码来进行的;从而使界面容易操作。
-
系统的安全性进行分析:这样才可以每个角色的不同对应的信息也就不同,在登录系统务必使用自己的账号,密码登录,账号与密码错误自然就登录失败了。登录成功可以对自己的信息进行操作,不能对别人的账号的信息进行查看等操作,这样自然保证系统的安全性。
3.3系统设计规则与运行环境
软件系统的优劣很大程度上是由系统设计的完善与否决定的。世间万物都必须遵循生老病死的法则,这是大自然的规则不能违反,软件设计也一样需要遵循系统设计规则。因此,在设计过程中必须遵循系统设计规则。
规则如下:
简单性:为了扩大系统使用者的受众面,系统设计应该本着操作越简单约好的原则,这样不仅能提高系统的使用率更能够扩大系统使用面。。
针对性:一个系统针对性越强,所能提供的功能必然越完善,用户体验肯定更好,所以应该明确指定系统针对性。
实用性:实用永远是检验一个系统是否成功的唯一标准,使用的语言再高端,使用的结构再新颖但不能满足管理员和会员的要求那就是失败。
运行环境:
本系统是利用B/S结构来开发的,数据库在服务器上进行部署 Mysql即可,其他包括My Eclipse等常规开发程序。
3.4系统流程分析
系统流程,用户需要登录进入系统,未注册过的用户需要在输入必填的信息之后注册成功然后登录系统,管理员在后台登录进入可以对用户进行修改管理。使用一些较为稳定的技术总结成一个系统的开发设计过程,是设计与实现各个功能模块的基本技术,这些是每个功能模块能够顺利进行的重要保证。
图3-1系统流程图
3.5 可行性分析
通常一个项目的启动或者投入市场运营都需要一个评估报告,要从需求上分析这个项目是否能在这种环境下实现整体目标,是否有这个市场回报率即我们通常所说的是否能够获得利润或者开发出来是否具有实用性,不能说系统开发出来后根本没有用。所以其目的就是以最小的付出来得到更大的效率。本次课题我们就从技术可行性,操作可行性上来分析。
(1)技术可行性
Java 由操作系统,中间件和应用软件三大部分组成。它是与谷歌公司和开放手机联盟共同开发的移动终端平台;该开发平台包括性能评价,除错工具,模拟器和存储器等功能;具有完善的开发环境。
(2)操作可行性
本系统用户只要有一台Java手机,就可以使用了,系统是使用的操作都是用户熟悉的选择框或者按钮等等。所有的操作通过手机就可以完成,用户不需培训,只要稍微提示一下即可。因此,在操作使用上,本系统简单、方便,易于使用户接受,因而是十分可行的。
4 系统设计
4.1软件功能模块设计
小程序总体功能如下图所示:
图 4-1 小程序总体功能模块图
4.2登录注册模块
用户要通过填写自己的账号和密码进入系统,如果用户没有登录的账号需要先进行注册用户在注册页面输入账号和密码,点击注册,按要求输入注册表所要的信息,登录密码和确认密码,点击注册后,系统先判断用户输入的“密码”和“确认密码”是否一致,如果不一致,用户需重新输入;如果一致则注册成功,然后输入刚才注册的个人账号和密码点击“登录”按钮,显示“登录中请稍后”,如果登录信息正确则系统跳转进登录界面;如果登录信息错误则显示 “登录失败”登录注册算法流程图如图4-2登录注册流程图所示。
图4-2登录注册流程图
Web后台端管理员登入正确可以查看用户修改用户信息,进行管理操作;如果输入错误,则无反馈重新登录。如图4-3后台管理流程图所示
图4-3后台管理流程图
4.3数据库设计
前面系统分析结束后现在进入设计阶段,在这个过程中我们要抽象地分析数据,将数据中的关系理解清楚,然后对概念结构和逻辑结构进行设计。由于MYSQL能够以极高的效率完成各种数据库查询,并能是存储过程更加方便。同时能够使数据库管理和系统管理更加清晰便捷。另外,系统以Web技术支持,使用户能够轻易地发布数据到Web页面上。所以本系统采用了MYSQL进行数据库的存储管理与维护。
表4-1:员工
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
mima | varchar | 200 | 密码 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
zhaopian | varchar | 200 | 照片 | ||
xingbie | varchar | 200 | 性别 | ||
bumen | varchar | 200 | 部门 | ||
zhiwei | varchar | 200 | 职位 | ||
lianxifangshi | varchar | 200 | 联系方式 |
表4-2:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-3:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-4:日常报销
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
baoxiaoliyou | varchar | 200 | 报销理由 | ||
baoxiaojine | int | 报销金额 | |||
fapiaopingzheng | varchar | 200 | 发票凭证 | ||
shenqingshijian | date | 申请时间 | |||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
zhiwei | varchar | 200 | 职位 | ||
sfsh | varchar | 200 | 是否审核 | 否 | |
shhf | longtext | 4294967295 | 审核回复 | ||
ispay | varchar | 200 | 是否支付 | 未支付 | |
userid | bigint | 用户id |
表4-5:请假信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
qingjiabiaoti | varchar | 200 | 请假标题 | ||
tupian | varchar | 200 | 图片 | ||
qingjiashiyou | varchar | 200 | 请假事由 | ||
qingjiatianshu | varchar | 200 | 请假天数 | ||
qingjiashijian | date | 请假时间 | |||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
sfsh | varchar | 200 | 是否审核 | 否 | |
shhf | longtext | 4294967295 | 审核回复 | ||
userid | bigint | 用户id |
表4-6:公司公告
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 4294967295 | 简介 | ||
picture | varchar | 200 | 图片 | ||
content | longtext | 4294967295 | 内容 |
表4-7:员工交流
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 帖子标题 | ||
content | longtext | 4294967295 | 帖子内容 | ||
parentid | bigint | 父节点id | |||
userid | bigint | 用户id | |||
username | varchar | 200 | 用户名 | ||
isdone | varchar | 200 | 状态 |
表4-8:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 |
表4-9:在线客服
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
adminid | bigint | 管理员id | |||
ask | longtext | 4294967295 | 提问 | ||
reply | longtext | 4294967295 | 回复 | ||
isreply | int | 是否回复 |
表4-10:部门
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
bumen | varchar | 200 | 部门 |
表4-11:序时账
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
riqi | date | 日期 | |||
fengmian | varchar | 200 | 封面 | ||
pingzhenghao | varchar | 200 | 凭证号 | ||
shouru | float | 收入 | |||
zhichu | float | 支出 | |||
yue | float | 余额 | |||
zhaiyao | varchar | 200 | 摘要 |
表4-12:文件信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
---|---|---|---|---|---|
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
wenjianbianhao | varchar | 200 | 文件编号 | ||
wenjianmingcheng | varchar | 200 | 文件名称 | ||
wenjianfengmian | varchar | 200 | 文件封面 | ||
wenjianneirong | varchar | 200 | 文件内容 | ||
xiazaidizhi | varchar | 200 | 下载地址 | ||
shangchuanshijian | date | 上传时间 |
5系统实现
游泳馆管理系统小程序由前台和后台交互构成。前台是会员对于本系统的使用,会员可以通过手机端登录注册,管理个人信息,查看场馆信息、泳池信息、饮食信息、泳池预订、购买信息、公告信息等详细信息。
后台主要是管理员模块,可对该小程序的用户进行系统管理,登录进后可对用户进行管理等操作。
5.1微信小程序端模块实现
本章主要介绍游泳馆管理系统小程序的系统实现,根据系统的需求分析,系统设计,系统前台功能区和系统后台功能区的实现。通过以下系统运行界面和核心代码展示。
会员登录,本系统和大部分系统一样都需要登录才能进入系统进行后续操作,会员输入账号和密码,具体的实现效果如图5-1所示。
图5-1 登录界面图
会员注册,在使用本软件前需要新进行登录操作,如果用户还没有账号可先注册然后再登录。具体的实现效果如图5-2所示。
图5-2 注册界面图
会员登陆小程序端,可以对首页、公告信息、我的等功能进行详细操作,如图5-3所示。
图5-3小程序端首页界面图
公告信息,在公告信息页面可以查看标题、简介、内容、图片等信息,如图5-4所示。
图5-4公告信息界面图
场馆信息,在场馆信息页面可以查看场馆编号、场馆名称、场馆类型、场馆图片、场馆位置、联系人、联系电话、开放时间、交通路线、场馆介绍等信息,如图5-5所示。
图5-5场馆信息界面图
会员,在我的页面可以对个人中心、场馆信息、泳池信息、饮食信息、泳池预订、购买信息、会员充值等详细信息进行操作,如图5-6所示。
图5-6会员功能界面图
泳池信息,在泳池信息页面可以查看泳池编号、场馆名称、泳池名称、泳池类型、泳池图片、泳池价格、泳池位置、发布时间、泳池详情等信息,根据需要进行预订操作,如图5-7所示。
图5-7泳池信息界面图
购买信息,在购买信息页面可以查看购买编号、饮食编号、饮食名称、饮食类型、饮食图片、价格、数量、总价、数量、购买时间、会员账号、会员姓名、审核回复等信息,并进行支付操作,如图5-8所示。
图5-8购买信息界面图
用户信息,在用户信息页面通过填写会员账号、密码、会员姓名、性别、联系方式、头像等进行进行保存操作,如图5-9所示。
图5-9用户信息界面图
5.2管理员功能模块
管理员登录,管理员通过输入用户名、密码,选择角色并点击登录进行系统登录操作,如图5-10所示。
图5-10管理员登录界面图
管理员登陆系统后,可以对首页、个人中心、会员管理、场馆类型管理、泳池类型管理、饮食类型管理、场馆信息管理、泳池信息管理、饮食信息管理、泳池预订管理、购买信息管理、会员等级管理、会员充值管理、系统管理等功能进行相应操作,如图5-11所示。
图5-11管理员功能界面图
会员管理,在会员管理页面可以对索引、会员账号、会员姓名、性别、联系方式、头像等内容进行详情、修改或删除等操作,如图5-12所示。
图5-12会员管理界面图
泳池类型管理,在泳池类型管理页面可以对索引、泳池类型等内容进行详情、修改或删除等操作,如图5-13所示。
图5-13泳池类型管理界面图
场馆信息管理,在场馆信息管理页面可以对索引、场馆编号、场馆名称、场馆类型、场馆图片、场馆位置、联系人、联系电话、开放时间等内容进行详情、修改或删除等操作,如图5-14所示。
图5-14场馆信息管理界面图
泳池信息管理,在泳池信息管理页面可以对索引、泳池编号、场馆名称、泳池名称、泳池类型、泳池图片、泳池价格、泳池位置、发布时间等内容进行详情、修改或删除等操作,如图5-15所示。
图5-15泳池信息管理界面图
饮食信息管理,在饮食信息管理页面可以对索引、饮食编号、饮食名称、饮食类型、饮食图片、价格、数量、营业时间等内容进行详情、修改或删除等操作,如图5-16所示。
图5-16饮食信息管理界面图
泳池预订管理,在泳池预订管理页面可以对索引、预订编号、泳池编号、场馆名称、泳池名称、泳池类型、泳池图片、泳池价格、泳池位置、预订时间、会员账号、会员姓名、是否支付、审核回复、审核状态、审核等内容进行详情、修改或删除等操作,如图5-17所示。
图5-17泳池预订管理界面图
购买信息管理,在购买信息管理页面可以对索引、购买编号、饮食编号、饮食名称、饮食类型、饮食图片、价格、数量、总价、数量、购买时间、会员账号、会员姓名、是否支付、审核回复、审核状态、审核等内容进行详情、修改或删除等操作,如图5-18所示。
图5-18购买信息管理界面图
会员等级管理,在会员等级管理页面可以对索引、会员等级、价格等内容进行详情、修改或删除等操作,如图5-19所示。
图5-19会员等级管理界面图
会员充值管理,在会员充值管理页面可以对索引、会员账号、会员姓名、联系方式、照片、会员等级、价格、充值日期、是否支付、审核回复、审核状态、审核等内容进行详情、修改或删除等操作,如图5-20所示。
图5-20会员充值管理界面图
系统管理,在轮播图管理页面可以对索引、名称、值等内容进行详情、修改等操作,还可对公告信息进行详细操作,如图5-21所示。
图5-21系统管理界面图