h5响应式网站_装修注意事项及细节_ppt链接网页怎么制作_亚马逊跨境电商开店有风险吗
系统设计 系统架构设计 本网上挂号预约系统的架构设计主要分为可以3层,主要有Web层,业务层,Model层。其中web层还包括View层和Controller层,Model层包括元数据扩展层和数据访问层。
系统架构如下图所示。
图4-1 系统架构
系统总体设计 网上挂号预约系统总体分为前台用户模块和后台管理员模块。
两个模块表现上是分别独立存在,但是访问的数据库是一样的。每一个模块的功能都是根据先前完成的需求分析,并查阅相关资料后整理制作的。
综上所述,系统功能结构图如下图所示。
图4-2 系统功能结构图
系统功能设计 登录模块:登录模块是进入系统的入口,所有用户必须登录后才能访问系统。登录需要输入用户名和密码,如果多次尝试登录需要输入验证码。登录时需要选择用户的角色,是一般用户还是管理员登录等。登录成功后,会通过数据库获取用户的权限,并跳转至用户的主页面。
数据库设计 数据需求分析 从前面可以分析到数据库中最重要的是用户中心、发表文章、站点管理。分析可以得到如下数据描述:
用户中心:用于记录用户的各种信息,包括用户名、密码、姓名、性别、地址、邮箱、联系方式等数据项。
管理员:记录管理员的登录信息。包括用户名,密码,权限等数据项。
预约挂号:挂号用户可或直接搜索医院科室信息进入预约页面,根据科室各医生时间安排表及预约挂号情况作出合理选择从而实现自助挂号。如有特殊情况可取消预约。
在线咨询:挂号用户可通过浏览或搜索找到相应医生并给他留言进行一些在线咨询,就诊后可留言反馈自己的恢复情况,或对医生进行评价;医院可根据患者的的反馈信息了解各科室医生的情况。
数据库表设计 网上挂号预约系统所拥有的数据表有以下:用户信息表、登陆访问时长表、医生信息表、文章分类表等。
由于数据表较多,只展示系统主要数据表,如下表所示。
表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
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
更新时间:
表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:
表department_management (科室管理)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
department_management_id
int
10
0
N
Y
科室管理ID
2
department
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
更新时间
表diagnosis (病情诊断)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
diagnosis_id
int
10
0
N
Y
病情诊断ID
2
order_number
varchar
64
0
Y
N
订单号
3
doctors_job_number
int
10
0
Y
N
0
医生工号
4
doctors_name
varchar
64
0
Y
N
医生姓名
5
department
varchar
64
0
Y
N
科室
6
user
int
10
0
Y
N
0
用户
7
name_of_patient
varchar
64
0
Y
N
就诊人姓名
8
patients_age
varchar
64
0
Y
N
就诊人年龄
9
diagnostic_content
text
65535
0
Y
N
诊断内容
10
diagnostic_results
text
65535
0
Y
N
诊断结果
11
prescription_fee
varchar
64
0
Y
N
处方费用
12
list_of_prescriptions
text
65535
0
Y
N
药方清单
13
drug_usage
text
65535
0
Y
N
药品用法
14
dosage_of_drugs
text
65535
0
Y
N
药品用量
15
pay_state
varchar
16
0
N
N
未支付
支付状态
16
pay_type
varchar
16
0
Y
N
支付类型: 微信、支付宝、网银
17
recommend
int
10
0
N
N
0
智能推荐
18
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
19
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间
表doctor (医生)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
doctor_id
int
10
0
N
Y
医生ID
2
doctors_job_number
varchar
64
0
N
N
医生工号
3
doctors_name
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
更新时间
表doctor_information (医生信息)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
doctor_information_id
int
10
0
N
Y
医生信息ID
2
doctors_job_number
int
10
0
Y
N
0
医生工号
3
doctors_name
varchar
64
0
Y
N
医生姓名
4
department
varchar
64
0
Y
N
科室
5
photo
varchar
255
0
Y
N
照片
6
title
varchar
64
0
Y
N
职称
7
affiliated_hospital
varchar
64
0
Y
N
所属医院
8
years_of_medical_practice
int
10
0
Y
N
0
从医年数
9
registration_fee
int
10
0
Y
N
0
挂号费
10
areas_of_expertise
text
65535
0
Y
N
擅长领域
11
scheduling_time
text
65535
0
Y
N
排班时间
12
personal_profile
longtext
2147483647
0
Y
N
个人简介
13
hits
int
10
0
N
N
0
点击数
14
praise_len
int
10
0
N
N
0
点赞数
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
更新时间
表have_an_appointment_with_a_doctor (预约挂号)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
have_an_appointment_with_a_doctor_id
int
10
0
N
Y
预约挂号ID
2
order_number
varchar
64
0
Y
N
订单号
3
doctors_job_number
int
10
0
Y
N
0
医生工号
4
doctors_name
varchar
64
0
Y
N
医生姓名
5
department
varchar
64
0
Y
N
科室
6
title
varchar
64
0
Y
N
职称
7
registration_fee
varchar
64
0
Y
N
挂号费
8
user
int
10
0
Y
N
0
用户
9
name_of_patient
varchar
64
0
Y
N
就诊人姓名
10
patients_age
varchar
64
0
Y
N
就诊人年龄
11
id_number
varchar
255
0
Y
N
身份证号
12
contact_number
varchar
64
0
Y
N
联系电话
13
residential_address
text
65535
0
Y
N
居住地址
14
appointment_time
datetime
19
0
Y
N
预约就诊时间
15
description_of_illness
text
65535
0
Y
N
病情描述
16
examine_state
varchar
16
0
N
N
未审核
审核状态
17
examine_reply
varchar
16
0
Y
N
审核回复
18
pay_state
varchar
16
0
N
N
未支付
支付状态
19
pay_type
varchar
16
0
Y
N
支付类型: 微信、支付宝、网银
20
recommend
int
10
0
N
N
0
智能推荐
21
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
22
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:
表hospital_administrator (医院管理者)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
hospital_administrator_id
int
10
0
N
Y
医院管理者ID
2
staff_no
varchar
64
0
N
N
工作人员工号
3
staff_name
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
更新时间
表hospital_information (医院信息)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
hospital_information_id
int
10
0
N
Y
医院信息ID
2
staff_no
int
10
0
Y
N
0
工作人员工号
3
hospital_name
varchar
64
0
Y
N
医院名称
4
hospital_address
varchar
64
0
Y
N
医院地址
5
reception_time
varchar
64
0
Y
N
接诊时间
6
picture
varchar
255
0
Y
N
图片
7
department
varchar
64
0
Y
N
科室
8
department_introduction
text
65535
0
Y
N
科室介绍
9
consulting_telephone
varchar
64
0
Y
N
咨询电话
10
hospital_profile
longtext
2147483647
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
更新时间
表message_feedback (留言反馈)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
message_feedback_id
int
10
0
N
Y
留言反馈ID
2
order_number
varchar
64
0
Y
N
订单号
3
doctors_job_number
int
10
0
Y
N
0
医生工号
4
doctors_name
varchar
64
0
Y
N
医生姓名
5
department
varchar
64
0
Y
N
科室
6
user
int
10
0
Y
N
0
用户
7
feedback_content
text
65535
0
Y
N
反馈内容
8
recommend
int
10
0
N
N
0
智能推荐
9
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
10
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
更新时间:
表online_consulting (在线咨询)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
online_consulting_id
int
10
0
N
Y
在线咨询ID
2
doctors_job_number
int
10
0
Y
N
0
医生工号
3
doctors_name
varchar
64
0
Y
N
医生姓名
4
department
varchar
64
0
Y
N
科室
5
title
varchar
64
0
Y
N
职称
6
user
int
10
0
Y
N
0
用户
7
consultation_content
text
65535
0
Y
N
咨询内容
8
examine_state
varchar
16
0
N
N
未审核
审核状态
9
examine_reply
varchar
16
0
Y
N
审核回复
10
recommend
int
10
0
N
N
0
智能推荐
11
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
12
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已取消
表registered_user (注册用户)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
registered_user_id
int
10
0
N
Y
注册用户ID
2
user_name
varchar
64
0
Y
N
用户姓名
3
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
更新时间
表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
更新时间:
表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
email
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
更新时间:
系统实现 数据库访问层的实现 该系统是通过jdbc和MySQL达成连接的,新建一个jdbc.properties文件来填写与数据库连接所需要的驱动和参数。
jdbc.driverClass=com.MySQL.jdbc.Driver
jdbc.url=jdbc:MySQL://localhost:3306/tsi
jdbc.username=root
jdbc.password=123
第一个参数代表MySQL数据库的驱动,第二个参数代表要连接的数据库,第三个和第四个参数代表数据库连接名和密码。
后台与数据库访问主要是通过HQL语句来进行查询的,查询语句中的表名是表格的实体类名,在这种查询语句中*是不允许使用的,除非适合聚合函数一起使用才可以。
注册模块的实现 用户在填写数据的时候必须与注册页面上的验证相匹配否则会注册失败,注册页面的表单验证是通过PythonScript进行验证的,用户名的长度必须在6到18之间,邮箱必须带有@符号,密码和密码确认必须相同,你输入的密码,系统会根据你输入密码的强度给出指定的值,电话号码和身份证号码必须要求输入格式与生活相符合,当你前台验证通过的时候你点击注册,表单会将你输入的值通过name值传递给后台并保存到数据库中。
用户注册流程图如下图所示。
图5-1用户注册流程图
用户注册界面如下图所示。
图5-2用户注册界面
登录模块的实现 主要由两部分组成,登录前的登录界面以及登录后的用户功能界面。登录界面,要求用户输入用户名和密码,当用户名和密码其中一个输入为空时,给出提示“用户名,密码不能为空”。获取用户名和密码后到数据库中查找,如果用户名存在,以及对应的密码正确,则登录成功,否则登录失败。登录失败后给出提示,并把焦点停在文本框中。登录成功后将该次会话的全局变量username设置为用户名。登录成功后进入会员的功能模块,主要有会员基本信息修改,已经发布博文信息管理,发布信息,和退出功能。退出功能是清除全局变量username的值,并跳回到首页。
登录流程图如下图所示。
图5-3登录流程图
用户登录界面如下图所示。
图5-4用户登录界面
登录后进入收首页,可以查看到Home、公告消息、个人账户、个人收藏、医生信息、医院信息、个人中心等功能。首页界面如下图所示。
图5- 5首页 界面
系统用户修改资料模块的实现 用户登录/注册成功之后可以修改自己的基本信息。修改页面的表单中每一个input的name值都要与实体类中的参数相匹配,在用户点击修改页面的时候,如果改后用户名与数据库里面重复了,页面会提示该用户名已经存在了,否则通过Id来查询用户,并将用户的信息修改为表单提交的数据。
个人中心界面如下图所示。
图5-6个人中心界面
公告管理模块的实现 管理员对公告信息进行管理,在此页面可以查看标题、创建时间等信息,进行查询、重置、添加、删除等操作。
公告管理界面如下图所示。
图5-7公告管理界面
资源管理模块的实现 资源管理,在此页面可以查看健康资讯、资讯分类两个子模块,进入健康资讯子模块可以通过标题、封面图、文章分类、标签、创建时间进行查询、重置、添加、删除、查看评论等操作。
健康资讯界面如下图所示。
图5-8健康资讯界面
模块管理的实现 模块管理,在此页面可以查看科室管理、医生信息、预约挂号、在线咨询、病情诊断、医院信息、留言反馈七个子模块。
科室管理可以查看科室、创建时间、更新时间等信息,进行查询、重置、添加、删除、查看评论等操作。
科室管理界面如下图所示。
图5- 9 科室管理 界面
医生信息可以查看医生姓名、科室、职称等信息,进行查询、收藏、点赞、在线咨询、预约挂号等操作。
医生信息界面如下图所示。
图5- 10 医生信息 界面
图5- 11 医生信息详细 界面
预约挂号可以填写就诊人姓名、就诊人年龄、身份证号、联系电话、预约就诊时间等信息,进行预约挂号等操作。
预约挂号界面如下图所示。
图5- 12 预约挂号 界面
在线咨询,用户可以在线填写咨询内容等信息,进行提交等操作。医生在后台对在线咨询进行回复等操作。
在线咨询界面如下图所示。
图5- 13 在线咨询 界面
图5- 14 在线咨询回复 界面
病情诊断可以查看订单号、医生姓名、科室、就诊人姓名等信息,进行查询、重置、添加、删除、支付、留言反馈等操作。
病情诊断界面如下图所示。
图5- 15 病情诊断详细 界面
图5- 16 病情诊断管理 界面
医院信息可以查看工作人员工号、医院名称、医院地址、接诊时间、图片等信息,进行查询、重置、添加、删除、查看评论等操作。
医院信息界面如下图所示。
图5- 17医院信息 界面
留言反馈可以查看订单号、医生姓名、科室、反馈内容等信息,进行查询、重置、添加、删除、详情等操作。
留言反馈界面如下图所示。
图5- 18 留言反馈 界面
系统测试 测试目的 对任何系统而言,测试都是必不可少的环节,测试可以发现系统存在的很多问题,所有的软件上线之前,都应该进行充足的测试之后才能保证上线后不会Bug频发,或者是功能不满足需求等问题的发生。下面分别从单元测试,功能测试和用例测试来对系统进行测试以保证系统的稳定性和可靠性。
功能测试 下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
表6-1 系统登录功能测试用例
功能描述
用于系统登录
测试目的
检测登录时的合法性检查
测试数据以及操作
预期结果
实际结果
输入的用户名和密码带有非法字符
提示用户名或者密码错误
与预期结果一致
输入的用户名或者密码为空
提示用户名或者密码错误
与预期结果一致
输入的用户名和密码不存在
提示用户名或者密码错误
与预期结果一致
输入正确的用户名和密码
登录成功
与预期结果一致
下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。
表6-2 注册功能测试用例
功能描述
用于用户注册
测试目的
检测用户注册时的合法性检查
测试数据以及操作
预期结果
实际结果
输入的手机号不合法
提示请输入正确的手机号码
与预期结果一致
输入的字段为空
提示必填项不能为空
与预期结果一致
输入的密码少于6位
提示密码必须为6-12位
与预期结果一致
输入的密码大于12位
提示密码必须为6-12位
与预期结果一致
性能测试 使用阿里云PTS(Performance Testing Service)性能测试服务对线上系统进行压力测试。线上服务器环境为:1核心CPU,1G内存,1Mbps公网带宽,Centos7.0操作系统。
压测过程中使用了2台并发机器,每台机器20个用户并发,对系统主页,登录,数据查询和数据维护等模块进行并发访问,测试结果是有40个用户并发时,数据管理相关页面的响应时间甚至达到了7s,通过查看服务器出网流量发现已经达到1381kb/s,可以看出服务器的带宽已经达到峰值,如果系统使用5Mbps的带宽,系统的响应时间和TPS将会大大增加。在整个测试的过程中,CPU的使用率占用仅8%,也提现出带宽瓶颈对系统的影响非常严重。
">