随着社会的发展,健身俱乐部的管理形势越来越严峻。越来越多的用户利用互联网获得信息,健身信息鱼龙混杂,信息真假难以辨别。为了方便用户更好的获得本健身俱乐部管理信息,因此,设计一种安全高效的健身俱乐部网站极为重要。
前端技术:nodejs+vue+elementui,
Express 框架于Node运行环境的Web框架,
语言 node.js
框架:Express
前端:Vue.js
数据库:mysql
数据库工具:Navicat
开发软件:VScode
视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。
代码结构讲解
1、 node_modules文件夹(有npn install产生)
这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
为设计一个安全便捷,并且使用户更好获取本健身俱乐部管理信息,本文主要有安全、简洁为理念,实现用户快捷寻找健身课程、健身器材、会员卡信息、新闻公告等信息,从而解决健身俱乐部管理信息复杂难辨的问题。该系统以express架构技术为基础,采用nodejs语言和mysql数据库进行开发设计,通过对健身俱乐部业务流程的分析,分析了其功能性和非功能性需求,设计了健身俱乐部网站,该系统包括个人管理员、用户和教练三部分。同时还能为用户提供一个方便实用的健身俱乐部网站,使得用户能够及时地找到合适自己的健身俱乐部。用户在使用本系统时,可以查看健身课程和健身器材等,也可以进行在线留言;管理员在使用本系统时,可以通过后台管理用户和教练的信息,也可以在线留言,让用户及时了解健身课程信息。这样,用户就可以安全高效地找到健身俱乐部管理信息。目录
第1章 概 述 3
1.1 开发背景及研究意义 3
1.2 国内外研究现状和发展趋势 3
1.3 本文主要研究的内容 4
第2章 关键技术介绍 5
2.1 开发环境 5
2.2 nodejs技术 5
2.3 MySQL数据库 5
2.4 express框架 6
2.6 本章小结 6
第3章 系统分析 7
3.1 系统概述 7
3.2 需求分析 7
3.3 可行性分析 7
3.3.1 技术可行性分析 8
3.3.2 经济可行性分析 8
3.4 本章小结 8
第4章 系统设计 9
4.1 系统基本结构设计 9
4.2 数据库设计 10
4.2.1 数据库E-R图设计 10
4.2.2 数据库表设计 11
4.3 本章小结 21
第5章 系统实现及主要代码 22
5.1系统功能实现 22
5.2后台模块实现 25
5.2.1管理员模块实现 25
5.2.2教练实现 32
5.2.3用户模块实现 32
5.3 本章小结 33
第6章 系统测试 34
6.1 系统测试的目的 34
6.2 系统功能测试 34
6.2.1 登录注册功能测试 34
6.2.2. 用户管理功能测试 35
6.3 本章小结 35
结 论 36
参考文献 37
致 谢 38
第1章 概 述
通过对本文的开发背景、研究意义以及国内外研究现状和发展趋势的分析,确定本文的研究内容是系统开发的前提。
1.1 开发背景及研究意义
近年来互联网技术的发展使得互联网产品和网站层出不穷,对人才的需求不断提高 [1]。同时,面对过去使用手抄等方式进行记录,工作效率很难得到提高,无法满足现代人们的需求;自从人类进入互联网时代,通过纸质手抄的方式转换成线上无纸化管理,有效的解决了获取信息的渠道,全面提升工作效率。由此,实现一套完整的健身俱乐部网站非常必要。
设计和实现了一个健身俱乐部网站。该系统具有良好的扩展性、稳定性、安全性以及可移植性等特点。为方便用户找到适合自己的健身课程、健身器材等信息并进行预约,特制定本健身俱乐部网站。
1.2 国内外研究现状和发展趋势
在国内,由于历史环境因素的影响和发展的不平衡,健身俱乐部管理不完善,这对计算机领域的应用以及外部状态信息在健身俱乐部管理中的应用产生了很大的影响。简单的技术可以取代过去的形式或方法,但如果你想设计一个管理计划以更科学的方式重新管理这一环节,你必须放弃传统的管理方法,尽快改变管理方法,改变管理理念以合理运作,使系统更精细,控制成本,提高管理效率。
在国外,系统管理发展迅速。相应的信息系统软件设计和保护的研发也有所增加。随着时代的变化,产品研发得到了推动,系统软件得到了极大的发展。如今,它正朝着智能化、数字化和信息化的方向快速发展。所有大公司都采用了类似的规章制度,促进了公司的快速发展,取得了较好的经济效益。
计算机作为信息科学的媒介和关键,对人类社会的繁荣起着至关重要的作用。政府机构和事业单位将根据工作内容选择一套优秀的通信技术和专业办公设备,并利用这些技术和设备快速收集、解决和存储信息,使管理变得方便快捷,实现科学合理的管理目标。
总而言之,健身俱乐部网站的发展呈持续上升发展趋势,现在传统式的手工制作和半手动式管理方法转变为信息化管理的转变历程中,必须使用和融合全新的信息技术性来完成传统的系统设计方法,确保系统的效果和品质。
但是这些健身俱乐部网站都是由传统企业开发建设而成的,在健身俱乐部信息发布上主要采用人工方式进行管理和维护,这种方法效率低下且容易出错,已经不能满足现在快速多变的社会需求,且大都缺乏有效的安全认证机制和管理机制,用户使用虚假信息注册,使得网站存在大量的虚假健身俱乐部信息,无法保证健身俱乐部信息的安全性[2]。自1993年美国实施National Information Infrastructure以来,网络普及率大幅提高,互联网用户数量快速增长,健身俱乐部网站开始快速增长。
1.3 本文主要研究的内容
该系统采用nodejs技术,结合express框架使页面更加完善,后台使用MySQL数据库进行数据存储。系统主要分为三大模块:即管理员模块和用户模块、教练模块。本文从健身俱乐部流程分析入手,分析了其功能性需求和非功能性需求,设计了一个由管理员、用户和教练三部分组成的健身俱乐部网站。用户进入系统可以实现首页、个人中心、课程预约管理、器材借用管理、办卡信息管理、训练计划管理等功能;教练进入系统可以实现首页、个人中心、课程预约管理、训练计划管理等功能;管理员可通过后台进入系统可以实现用户管理、教练管理、健身课程管理、课程预约管理、健身器材管理、器材借用管理、会员卡信息管理、办卡信息管理、训练计划管理、教室信息管理、在线留言、系统管理等功能。
第3章 系统分析
系统分析是软件开发的关键。但在实际工作中却往往容易被人们忽视或误解。其实需求分析在软件开发过程中起着重要作用,它不仅为软件产品提供了一个基本框架和基础结构,而且还能够提高软件开发效率及质量。大多数软件的故障都是由于需求分析错误造成的,因为需求分析可以分析用户的业务,并根据用户的需求进行定制分析[10]。
3.1 系统概述
该系统由个人管理员、用户和教练三部分组成。其中:用户进入系统首页可以查看健身课程、健身器材、会员卡信息、新闻公告、在线留言、后台管理、个人中心等信息;管理员则是根据不同需求设置了不同功能,可以通过后台管理接口管理用户信息。
3.2 需求分析
需求分析,也称为软件需求分析、系统需求分析或需求分析工程,是指开发人员经过充分的研究和分析,准确地理解用户和项目在功能、性能、可靠性等方面的具体需求,并将用户的非正式需求表述转化为确定系统必须执行的需求的完整定义的过程[11]。
功能需求分析是系统设计的前提,它要求开发者和用户定义开发什么样的体系和系统需要什么样的功能。本文主要介绍了一种基于windows平台实现的健身俱乐部网站。该系统为用户找到健身俱乐部信息提供了更安全、更高效、更便捷的途径。本系统有三个角色:管理员、用户和教练,要求具备以下功能:
(1)用户可以浏览主页了解健身课程、健身器材、会员卡信息、新闻公告等信息,并进行在线留言;
(2)管理员通过后台管理员界面,实现对用户信息管理,可以查看健身课程、健身器材等信息,让用户实时知道最新的健身俱乐部管理信息;
3.3 可行性分析
可行性分析是指通过比较项目的主要内容和支撑条件,如市场需求、资源供应、环境影响、资金筹措情况、盈利能力等,预测项目建成后可能产生的资金、经济效益、社会和环境影响,为项目决策提供依据的综合性系统分析方法。可行性研究报告编制的质量直接影响着投资决策的成,而可行性研究报告编制程序又决定了可行性研究报告能否得到有效执行。因此,必须重视可行性研究工作,提高其编制水平。可行性分析应当具有预见性、公正性、可靠性和科学性[13]。
3.3.1 技术可行性分析
本系统是为了为用户寻找健身俱乐部管理提供更加安全、高效、便捷的方式,在大学期间也有所涉及,相关的知识和工具在网络上也可以查到,再加上老师的指导,在技术上的难题可以得到解决。
3.3.2 经济可行性分析
该系统的主题是基于nodejs的健身俱乐部网站的设计与实现。经过可行性评估,软件资源支出符合经济可行性[15]。硬件方面,配备齐全的笔记本电脑作为工具在经济上是可行的。
3.4 本章小结
健身俱乐部网站从市场、技术、经济、功能等方面分析了系统的功能需求,可以满足用户的健身俱乐部管理需求,帮助用户安全、高效地找到合适的健身俱乐部管理信息,因此有必要对其进行课题研究。
第4章 系统设计
系统设计是将被设计对象划分为单个模块进行构建,各个模块相互支持,相互制约,它们的组合是一个完整的系统。通过系统设计,可以最大限度地满足系统的预期目标,明确软件开发的目的。
4.2.2 数据库表设计
数据表是用来保存多种数据的表,它是所有数据库的核心对象,且对于软件开发有着不可替代的作用。其相关数据表如下:
表4-1:健身器材
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
qicaimingcheng varchar 200 器材名称
qicaileixing varchar 200 器材类型
guige varchar 200 规格
shuliang int 数量
qicaiweizhi varchar 200 器材位置
qicaijieshao longtext 4294967295 器材介绍
qicaitupian longtext 4294967295 器材图片
表4-2:训练计划
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
kechengleixing varchar 200 课程类型
kaishishijian datetime 开始时间
jieshushijian datetime 结束时间
xunlianneirong longtext 4294967295 训练内容
zhanghao varchar 200 账号
xingming varchar 200 姓名
jiaolianzhanghao varchar 200 教练账号
jiaolianxingming varchar 200 教练姓名
表4-3:会员卡信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
huiyuankamingcheng varchar 200 会员卡名称
huiyuankaleixing varchar 200 会员卡类型
huiyuankaqixian varchar 200 会员卡期限
banlijiage int 办理价格
huiyuankajieshao longtext 4294967295 会员卡介绍
huiyuankatupian longtext 4294967295 会员卡图片
表4-4:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-5:健身器材评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容
表4-6: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-7:健身课程评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容
表4-8:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-9:器材借用
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
qicaimingcheng varchar 200 器材名称
qicaileixing varchar 200 器材类型
guige varchar 200 规格
shuliang int 数量
jieyongshijian datetime 借用时间
beizhu varchar 200 备注
zhanghao varchar 200 账号
xingming varchar 200 姓名
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-10:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-11:新闻公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-12:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-13:办卡信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
huiyuankamingcheng varchar 200 会员卡名称
huiyuankaleixing varchar 200 会员卡类型
huiyuankaqixian varchar 200 会员卡期限
banlijiage int 办理价格
bankashijian datetime 办卡时间
bankashuoming varchar 200 办卡说明
zhanghao varchar 200 账号
xingming varchar 200 姓名
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
ispay varchar 200 是否支付 未支付
表4-14:在线留言
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 留言人id
username varchar 200 用户名
avatarurl longtext 4294967295 头像
content longtext 4294967295 留言内容
cpicture longtext 4294967295 留言图片
reply longtext 4294967295 回复内容
rpicture longtext 4294967295 回复图片
表4-15:课程预约
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
kechengleixing varchar 200 课程类型
kechengjiage int 课程价格
yuyueshijian datetime 预约时间
yuyueshuoming varchar 200 预约说明
jiaolianzhanghao varchar 200 教练账号
jiaolianxingming varchar 200 教练姓名
zhanghao varchar 200 账号
xingming varchar 200 姓名
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
ispay varchar 200 是否支付 未支付
表4-16:教室信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jiaoshimingcheng varchar 200 教室名称
jiaoshiweizhi varchar 200 教室位置
jiaoshizhuangtai varchar 200 教室状态
jiaoshishebei longtext 4294967295 教室设备
表4-17:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
mima varchar 200 密码
xingming varchar 200 姓名
xingbie varchar 200 性别
nianling int 年龄
shouji varchar 200 手机
touxiang longtext 4294967295 头像
表4-18:健身课程
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
kechengmingcheng varchar 200 课程名称
kechengleixing varchar 200 课程类型
shangkedidian varchar 200 上课地点
kechengjiage int 课程价格
kechengjieshao longtext 4294967295 课程介绍
kechengtupian longtext 4294967295 课程图片
jiaolianzhanghao varchar 200 教练账号
jiaolianxingming varchar 200 教练姓名
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-19:教练
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jiaolianzhanghao varchar 200 教练账号
mima varchar 200 密码
jiaolianxingming varchar 200 教练姓名
xingbie varchar 200 性别
nianling int 年龄
shouji varchar 200 手机
touxiang longtext 4294967295 头像
4.3 本章小结
通过本章针对健身俱乐部网站功能的总体结构、E-R属性图和数据表的大概介绍,对在开发系统时所要涉及到的数据库进行简单设计,为下一章系统的实现做好铺垫。
第5章 系统实现及主要代码
系统实现章节的主要内容主要是将系统分析和系统设计方案进行实现,按照各个系统角色进行功能介绍,系统实现就是一个真正开始编写的阶段,将前面的分析结果以及设计方案进行实现,最终做出一个符合用户需求的软件系统。
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到健身俱乐部网站的导航条,通过导航条导航进入各功能展示页面进行操作。
第6章 系统测试
系统测试是检验软件产品是否满足预期需求,确保产品无缺陷的重要手段。系统测试侧重于评估系统是否满足指定的要求,并帮助检查整个系统的功能性需求。通过对系统功能和非功能两个方面的测试用例进行分析与比较可以发现软件存在的问题以及需要改进之处。软件可靠性设计是一项系统性工程,涉及到多个学科领域,因此其难度较大。测试将侧重于功能测试,这是黑盒测试的一部分,黑盒测试的重点是用户提供的要求,而不是系统的实际代码。
6.1 系统测试的目的
系统测试(System Testing)是为了向使用者提供有关被测试产品或服务的质量信息而进行的检查。系统测试还可以提供客观和独立的系统评估,以使运营者能够了解和系统实施所面临的潜在问题。系统测试涉及软件组件或系统组件的执行,以评估一个或多个系统属性。通常这些属性表明被测组件或系统满足系统预期开发需求,在各种预期的时间内,正确响应各种系统输入,在可接受的时间内执行其功能,足够可用,同时可以满足分析设计时要求的程度。在预期的环境中运行,并达到用户期望的总体结果。经过一系列严格功能测试,以发现系统功能方面潜在的问题,保证系统的正常运行。
6.2 系统功能测试
在系统的功能性测试中,开发人员需要按照操作要求使健身俱乐部网站软件的各项功能,并准确记录测试期间的每个功能的运行数据,判定软件系统开发的功能是否符合预期的结果,主要是对MySQL数据库里的数据进行增删改查,从而实现首页、个人中心、用户管理、教练管理、健身课程管理、课程预约管理、健身器材管理、器材借用管理、会员卡信息管理、办卡信息管理、训练计划管理、教室信息管理、在线留言、系统管理等功能进行管理。
6.2.1 登录注册功能测试
软件测试的第一步是健身俱乐部网站的用户注册登录功能模块进行测试,测试用户在初次进入软件系统时,是否可以使用注册后登录的功能,具体测试的步骤如表6-1所示。
表6-1 登录注册管理功能测试数据表
编号 测试的功能 步骤 预期结果 实际结果
1 用户注册 正确填写注册信息,然后点击注册按钮 可以完成用户注册 注册成功
2 用户登录 正确输入账号、密码,然后点击登录按钮 可以完成用户登录 用户登录成功
6.2.2. 用户管理功能测试
系统的管理层可在此模块进行以下操作:对用户基础信息的修改;对用户的登录密码进行重置;删除用户;新增用户;根据关键词进行检索。以用户名:abo 密码:123456为例对该功能进行测试。测试操作如表5-2所示:
表5-2 用户管理测试过程及结果
测试项 测试用例 测试特性 用例描述 系统反应 测试结果
用户管理操作 用户名:abo
密码:123456 功能测试 添加一个新用户,基础信息与已有用户完全一致 添加失败,提示“该用户已存在” 通过
用户管理操作 用户名:abo
密码:999999 功能测试 添加一个新用户,基础信息与已存在用户均有所不同 添加成功 通过
用户管理操作 用户名:abo
密码:123456 功能测试 修改系统中用户名 修改成功 通过
用户管理操作 用户名:abo
密码:123456 功能测试 删除系统中用户 删除成功 通过
用户管理操作 用户名:abo
密码:123456 功能测试 按关键词搜索用户信息 查找成功 通过
用户管理操作 用户名:abo
密码:88888888 功能测试 重置用户密码 密码修改成功 通过
6.3 本章小结
本章所做的主要工作是对系统进行功能性测试。网站管理系统的正确性是网站的不可或缺的因素,系统的功能性测试是其中必不可少的步骤,也是占有很大比重的部分,这个过程中遇到的最多的问题是当界面跳转的时候系统终止运行。使用Eclipse中的Log Cat功能能够实现对程序每一个步骤进行跟踪,且定位出错误的位置十分方便。通过对各功能模块的测试结果和预期结果的比较,发现系统功能满足项目要求。
结 论
在设计健身俱乐部网站的过程中采用express架构技术,采用了nodejs技术来呈现给用户,后台数据采用MySQL数据库来进行存储。
此系统为健身俱乐部网站,为了达成预期效果该系统拥有管理员、用户和教练三种角色。对于用户可以通过健身课程、健身器材、会员卡信息、新闻公告、在线留言等信息,选择适合自己喜欢的健身俱乐部,也可以通过网站进行留言,以此来更加详细的了解健身俱乐部管理的具体内容,还可以通过俱乐部网站发布一些自己喜欢的健身课程。管理员、用户和教练则可以通过后台管理功能对整个系统的信息进行管理,如每个用户发布在网站上的信息,都需要经过管理员审核才能被其他用户所看到,用户所发布新闻公告也需要通过审核,除此之外平台的所有公告也是由管理员直接发布,以此来达到维护整个平台信息健康的目的。
健身俱乐部网站基本上自己在大学生活中学习的大部分知识都融入了进去,但是还不够,在许多方面还没有考虑全面,相信自己在进入工作中会更加努力,做出更加完美的系统。