第4章 系统设计
4.1 系统设计的原则
在系统设计过程中,也需要遵循相应的设计原则,这些设计原则可以帮助设计者在短时间内设计出符合设计规范的设计方案。设计原则主要有可靠性,安全性,可定制化,可扩展性,可维护性,可升级性以及客户体验等原则。下面就对这些原则进行简要阐述。
可靠性:一个软件是否可靠决定了其是否被用户使用,设计不可靠的软件,用户很容易就遗弃;
安全性:程序软件承担了信息的保存与管理等事务,安全性不足的软件会导致使用者承担巨大的损失;所以系统安全也是需要考虑进入的;
可定制化:市场环境从来都不是一直固定不变,面对客户群体的改变,以及使用环境的改变,市场需求的改变等因素,程序软件也要易于调整以适应各种变化;
可扩展性:程序软件在运行使用期间,也需要及时引进当下的新技术来进行系统优化,主要就是在系统功能层面,系统性能层面上进行相应的扩展,只有这样才能让系统在实际生活中继续占有市场;
可维护性:程序软件的维护需要一定量的资金,不管是排除现有程序错误,还是变更软件的现有需求,都需要在软件技术上投入一定资金,所以易于维护的软件程序就可以降低技术层面的资金消耗;
可升级性:程序软件的投入使用,会面临用户数量增多的情况,用户对软件的使用率也会提升,所以系统面临这种情况,仍然需要通过升级保持性能的合理,这样才能够适应市场;
客户体验:设计出来的程序软件在界面上不能够太复杂,要遵循界面设计的原理设计出简单,方便操作的功能操作界面,让用户易于接受软件,并乐于使用软件提供的功能。
4.2 功能结构设计
在管理员功能模块确定下来的基础上,对管理员各个功能进行设计,确定管理员功能的详细模块。绘制的管理员功能结构见下图。
图4-2 管理员功能结构图
4.3 数据库设计
与功能结构设计一样,数据库设计也是程序开发不可避免的设计环节,数据库设计最主要的目的就是帮助运行程序存储相应的数据信息。数据库设计包含的内容有数据表结构的设计,也包含了数据库E-R图的设计。
4.3.1 数据库E-R图
在绘制E-R图之前,先要找出数据库的实体,明确各个实体具有的属性,比如用户信息这个实体,它具备的属性包括了用户的姓名属性,用户的密码属性,用户的创建时间属性等,所以明确了用户这个实体,以及用户实体具备的属性之后,就需要根据这些信息绘制用户实体对应的实体属性图了。绘制软件选用当下认可度高,使用范围广,操作便利的微软旗下的Visio工具。
(1)管理员实体属性图通过Visio工具绘制,绘制结果展示如下:
图4-4 管理员实体属性图
(2)注册用户实体属性图通过Visio工具绘制,绘制结果展示如下:
图4-5 注册用户实体属性图
(3)疫苗信息实体属性图通过Visio工具绘制,绘制结果展示如下:
图4-6 疫苗信息实体属性图
4.3.2 数据库表结构
在进行这部分设计之前,需要明白和掌握数据类型以及各个数据类型的长度范围等知识,因为在一张具体的数据表中,为了方便理解,这里就举个简单的例子。比如用户信息表,这个表格的字段就是用户这个实体具备的属性,这时就需要对字段进行数据类型,以及字段长度的设置,也要设置一个主键来作为用户信息表的唯一标识。这些都是数据库表结构设计需要完成的内容。根据新冠肺炎服务预约微信小程序的功能设计以及数据库设计要求,展示该系统的数据表结构。
1疫情公告表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
title |
String |
标题 |
是 |
4 |
introduction |
String |
简介 |
是 |
5 |
picture |
String |
图片 |
是 |
6 |
content |
String |
内容 |
是 |
2防疫措施表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
biaoti |
String |
标题 |
是 |
4 |
jianjie |
String |
简介 |
是 |
5 |
neirong |
String |
内容 |
是 |
6 |
tupian |
String |
图片 |
是 |
3医院表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
yiyuanbianhao |
String |
医院编号 |
是 |
4 |
mima |
String |
密码 |
是 |
5 |
yiyuanmingcheng |
String |
医院名称 |
是 |
6 |
yiyuandizhi |
String |
医院地址 |
是 |
7 |
lianxidianhua |
String |
联系电话 |
是 |
8 |
yiyuantupian |
String |
医院图片 |
是 |
4管理员表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
username |
String |
用户名 |
是 |
3 |
password |
String |
密码 |
是 |
4 |
role |
String |
角色 |
是 |
5 |
addtime |
Date |
新增时间 |
是 |
5疫苗预约表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
yimiaomingcheng |
String |
疫苗名称 |
是 |
4 |
yimiaoleixing |
String |
疫苗类型 |
是 |
5 |
yimiaoshuliang |
Integer |
疫苗数量 |
是 |
6 |
jiezhongfeiyong |
float |
接种费用 |
是 |
7 |
yuyueshijian |
datetime |
预约时间 |
是 |
8 |
yimiaotupian |
String |
疫苗图片 |
是 |
9 |
yiyuanbianhao |
String |
医院编号 |
是 |
10 |
zhanghao |
String |
账号 |
是 |
11 |
xingming |
String |
姓名 |
是 |
12 |
crossuserid |
Integer |
跨表用户id |
是 |
13 |
crossrefid |
Integer |
跨表主键id |
是 |
14 |
sfsh |
String |
是否审核 |
是 |
15 |
shhf |
String |
审核回复 |
是 |
16 |
ispay |
String |
是否支付 |
是 |
17 |
userid |
Integer |
用户id |
是 |
6疫苗信息表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
yimiaomingcheng |
String |
疫苗名称 |
是 |
4 |
yimiaoleixing |
String |
疫苗类型 |
是 |
5 |
yimiaoshuliang |
Integer |
疫苗数量 |
是 |
6 |
jiezhongfeiyong |
float |
接种费用 |
是 |
7 |
yimiaojieshao |
String |
疫苗介绍 |
是 |
8 |
yimiaotupian |
String |
疫苗图片 |
是 |
9 |
yiyuanbianhao |
String |
医院编号 |
是 |
10 |
yiyuanmingcheng |
String |
医院名称 |
是 |
7检测结果表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
jiancemingcheng |
String |
检测名称 |
是 |
4 |
jianceleixing |
String |
检测类型 |
是 |
5 |
jianceshijian |
datetime |
检测时间 |
是 |
6 |
jiancejieguo |
String |
检测结果 |
是 |
7 |
jiancetupian |
String |
检测图片 |
是 |
8 |
zhanghao |
String |
账号 |
是 |
9 |
xingming |
String |
姓名 |
是 |
10 |
yiyuanbianhao |
String |
医院编号 |
是 |
11 |
yiyuanmingcheng |
String |
医院名称 |
是 |
12 |
userid |
Integer |
用户id |
是 |
8用户表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
zhanghao |
String |
账号 |
是 |
4 |
mima |
String |
密码 |
是 |
5 |
xingming |
String |
姓名 |
是 |
6 |
xingbie |
String |
性别 |
是 |
7 |
shouji |
String |
手机 |
是 |
8 |
dizhi |
String |
地址 |
是 |
9 |
tupian |
String |
图片 |
是 |
9核酸检测表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
jiancemingcheng |
String |
检测名称 |
是 |
4 |
jianceleixing |
String |
检测类型 |
是 |
5 |
jianceyuliang |
Integer |
检测余量 |
是 |
6 |
jiancefeiyong |
float |
检测费用 |
是 |
7 |
xiangqingjieshao |
String |
详情介绍 |
是 |
8 |
jiancetupian |
String |
检测图片 |
是 |
9 |
yiyuanbianhao |
String |
医院编号 |
是 |
10 |
yiyuanmingcheng |
String |
医院名称 |
是 |
10核酸预约表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
jiancemingcheng |
String |
检测名称 |
是 |
4 |
jianceleixing |
String |
检测类型 |
是 |
5 |
jianceyuliang |
Integer |
检测余量 |
是 |
6 |
jiancefeiyong |
float |
检测费用 |
是 |
7 |
yuyueshijian |
datetime |
预约时间 |
是 |
8 |
jiancetupian |
String |
检测图片 |
是 |
9 |
yiyuanbianhao |
String |
医院编号 |
是 |
10 |
zhanghao |
String |
账号 |
是 |
11 |
xingming |
String |
姓名 |
是 |
12 |
crossuserid |
Integer |
跨表用户id |
是 |
13 |
crossrefid |
Integer |
跨表主键id |
是 |
14 |
sfsh |
String |
是否审核 |
是 |
15 |
shhf |
String |
审核回复 |
是 |
16 |
ispay |
String |
是否支付 |
是 |
17 |
userid |
Integer |
用户id |
是 |
11接种信息表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
addtime |
Date |
创建时间 |
是 |
3 |
yimiaomingcheng |
String |
疫苗名称 |
是 |
4 |
yimiaoleixing |
String |
疫苗类型 |
是 |
5 |
jiezhongshijian |
datetime |
接种时间 |
是 |
6 |
yimiaotupian |
String |
疫苗图片 |
是 |
7 |
zhanghao |
String |
账号 |
是 |
8 |
xingming |
String |
姓名 |
是 |
9 |
yiyuanbianhao |
String |
医院编号 |
是 |
10 |
yiyuanmingcheng |
String |
医院名称 |
是 |
11 |
userid |
Integer |
用户id |
是 |
第5章 系统实现
系统实现这个章节的内容主要还是展示系统的功能界面设计效果,在实现系统基本功能,比如修改,比如添加,比如删除等管理功能的同时,也显示出系统各个功能的界面实现效果,该部分内容一方面与前面提到的系统分析,系统设计的内容相呼应,另一方面也是一个实际成果的展示。
5.1管理员后台功能实现
5.1.1 用户管理
管理员可以对用户信息进行添加,修改,删除,查询操作。
图5-1 用户管理页面
5.1.2 医院管理
管理员可以对医院信息进行添加,修改,删除,查询操作。
图5-2 医院管理页面
5.1.3 防疫措施管理
管理员可以对防疫措施信息进行添加,修改,删除,查询操作。
图5-3 防疫措施页面
5.1.4 疫苗信息管理
医院可以对疫苗信息进行添加,修改,删除,查询操作。
图5-4 疫苗信息页面
5.2 微信小程序功能实现
5.2.1 首页
微信小程序输入正确的账号密码后就会默认进入首页显示界面。首页主要有轮播图,搜索框,以及下面的导航为主要组成部分。
图5-5 首页
5.2.2 疫苗信息
用户点击疫苗信息可以看到疫苗信息界面,有搜索栏,可以随便点击某个疫苗信息进行查看。
图5-6 疫苗信息页面
5.2.3 疫苗预约
用户可以对疫苗进行疫苗预约操作。
图5-7 疫苗预约页面
5.2.4 我的
我的里面主要是可以进行退出,点击小齿轮就可以选择退出当前账户,可以预约疫苗和核酸检查,可以查看到接种信息和检测结果。
图5-8 我的页面