当前位置: 首页 > article >正文

基于微信小程序疫苗预约系统ssm+论文源码调试讲解

第四章 系统设计

到目前为止,市面上已经存在了各种各样的软件系统,从系统的分类着手,主要应用范围倾向于办公系统,娱乐系统,社交系统,然后下面有很多比较细的分支系统。很多系统已经经过了市场的考验,针对不同的业务场景已经开始出现了业务模块化,程序员减代码化的各种设计方式。到目前为止,当要设计一个系统的时候,首先根据业务模型基本上都可以在网上找到类似的模板,然后根据具体业务具体分析,进而实现具体功能,大众的就是最好的,毕竟符合市场主流的就代表着肯定符合常规操作流程。

4.1 系统设计目标

系统设计的时候,就要制定需要达成的目标。在功能上,要严格符合设计需求,不仅仅要减少操作步骤,也要符合预期。因此,在规范化的今天设计出符合项目要求的系统,必须要达到下面设定的目标。

第一个目标就是友好性:友好性主要体现在用户使用过程中,不会对系统的操作产生一种不满,减少操作者的愤怒,这是相当重要的一个体现。前几年好多软件在这个友好性方面失去了市场,就是因为在友好性这方面没有做好。国内互联网发展初期,软件设计的目的就是能用就行,至于友好性的对比,那是不存在的,因为硬件效率比较低,计算机属于新兴行业,所以大哥不说二哥,都是不友好的。随着计算机硬件的提升,很多开发者开始注意到要牺牲一定的计算器性能来提升友好性,因为计算机发展到现在,第一印象很重要,一个软件设计的不好看,会让大部分人对其产生质疑,所以要在友好性上面下很大功夫进行雕琢。

第二个目标就是安全性:安全性其实贯穿着整个软件行业的发展史,计算机就是为解决人类重复性计算以及数据存储的目的而诞生的,很多行业都需要计算机来进行计算,减少出错几率,并且把数据保留,可以实时查询,所以数据的安全性也很重要。

只要保证数据安全性的前提,开发出符合功能需求的友好界面操作,那么就达到了系统设计的目的。

4.2功能结构设计

本系统主要是基于数据的增加,修改,删除等操作,使用者能够通过提前设定的登录功能进入指定的操作区,这里对使用者设计的功能进行结构展示。

管理员功能结构图的绘制结果见图4-1。管理员登录进入本系统操作的功能包括管理疫苗信息,管理疫苗评价信息,管理疫苗收藏信息,管理疫苗预约信息,管理论坛,管理公告信息等。

图4-1 管理员功能结构图

用户功能结构图的绘制结果见图4-2。用户登录进入本系统操作的功能包括预约疫苗,对账户进行充值,评价预约的疫苗,查看疫苗预约信息,发布帖子,管理发布的帖子等。

图4-2 用户功能结构图

4.3数据库设计

如果说设计系统的功能很重要,那么设计该系统的数据库将更重要,毕竟系统服务于用户,数据库服务于系统,用户访问系统,操作系统的所有数据都要依赖于数据库,而系统的数据几乎都是保存在数据库中的,所以,一个高质量的程序,必然拥有一个安全,快速响应,稳定可靠的数据库。本系统的MySQL数据库可以通过SQL语言来实现对系统数据的管理,包括在指定表中插入数据,在规定的表中更改数据,以及删除指定表中的部分数据等操作。一般来说,像MySQL这样的关系型数据库,对于结构化查询语言SQL都能很好的进行支持。在编程中,通过合理运用SQL语言便能操作数据库的各种数据,真是非常方便快捷!

4.3.1 数据库概念设计

本节内容主要是使用图形的方式来描述数据库中的实体,每个实体的相应属性,还有实体之间的相互联系,常用的Visio工具即可满足绘制E-R图的需求。E-R图是由矩形,椭圆,菱形等图形元素组成,矩形框中主要写实体的名称,椭圆框中主要是登记该实体的属性,而菱形框中主要是登记实体之间的联系名称,最后使用实心线段把这些图形元素进行连接,即可完成E-R图的绘制。当初步得到一个E-R图时,需要进行检查,使用分析的方式去修改,重构E-R图,以达到消除数据冗余,或者是消除实体间联系冗余的目的。从而保持数据库的完整性,以及降低数据库维护上面的难度。

(1)使用Visio这样的常用的实体属性图绘制工具来绘制疫苗实体属性图,绘制结果见图4-3。

图4-3 疫苗实体属性图

(2)使用Visio这样的常用的实体属性图绘制工具来绘制疫苗预约实体属性图,绘制结果见图4-4。

图4-4 疫苗预约实体属性图

(3)使用Visio这样的常用的实体属性图绘制工具来绘制管理员实体属性图,绘制结果见图4-5。

图4-5 管理员实体属性图

(4)使用Visio这样的常用的实体属性图绘制工具来绘制用户实体属性图,绘制结果见图4-6。

图4-6 用户实体属性图

(5)绘制的上述实体间存在的联系见图4-7。

图4-7 实体间关系E-R图

4.3.2 数据库物理设计

本系统数据在数据库中都是通过各种二维表进行记录保存的,在数据库中设计这样的二维表也是比较重要的内容,因为它影响着数据的存储效率。在设计二维表也就是关系模型之前,一些有关二维表方面的常用概念需要进行充分了解。

关系:一张具体的数据表即表示关系,关系的名称与数据表的名称保持一致;

元组:数据表中,每行显示的数据即代表元组;

属性:数据表中,每列表示的数据即代表属性;

关键字:数据表中,为了与其他数据表进行区分,则需要在每张表中进行主键的设置;

通过上节内容可以知晓数据库中的各个实体,并通过一定方式把这些实体表示的内容进行数据表的转换,通常来说,每个实体都会对应一张具体的数据表,在本系统指定的数据库中创建命名好的数据库,才可以对数据表进行创建与设计。基于微信小程序的疫苗预约系统数据表设计结果展示如下:

表4-1 论坛表

字段

注释

类型

id (主键)

主键

int(11)

forum_name

帖子标题

varchar(200)

yonghu_id

用户

int(11)

users_id

管理员

int(11)

forum_content

发布内容

text

super_ids

父id

int(11)

forum_state_types

帖子状态

int(11)

insert_time

发帖时间

timestamp

update_time

修改时间

timestamp

create_time

创建时间

timestamp

表4-2 公告信息表

字段

注释

类型

id (主键)

主键

int(11)

news_name

公告标题

varchar(200)

news_types

公告类型

int(11)

news_photo

公告图片

varchar(200)

insert_time

添加时间

timestamp

news_content

公告详情

text

create_time

创建时间

timestamp

表4-3 管理员表

字段

注释

类型

id (主键)

主键

bigint(20)

username

用户名

varchar(100)

password

密码

varchar(100)

role

角色

varchar(100)

addtime

新增时间

timestamp

表4-4 疫苗信息表

字段

注释

类型

id (主键)

主键

int(11)

yimiao_name

疫苗名称

varchar(200)

yimiao_types

疫苗类型

int(11)

yimiao_photo

疫苗图片

varchar(200)

yimiao_kucun_number

剩余数量

int(11)

yimiao_new_money

疫苗价格

decimal(10,2)

yimiao_renqun

适宜接种人群

varchar(200)

yimiao_text

接种前后禁忌

text

yimiao_content

疫苗详情

text

yimiao_delete

逻辑删除

int(11)

create_time

创建时间

timestamp

表4-5 疫苗收藏表

字段

注释

类型

id (主键)

主键

int(11)

yimiao_id

疫苗

int(11)

yonghu_id

用户

int(11)

yimiao_collection_types

类型

int(11)

insert_time

收藏时间

timestamp

create_time

创建时间

timestamp

表4-6 疫苗评价表

字段

注释

类型

id (主键)

主键

int(11)

yimiao_id

疫苗

int(11)

yonghu_id

用户

int(11)

yimiao_commentback_text

评价内容

text

insert_time

评价时间

timestamp

reply_text

回复内容

text

update_time

回复时间

timestamp

create_time

创建时间

timestamp

表4-7 疫苗预约表

字段

注释

类型

id (主键)

主键

int(11)

yimiao_order_uuid_number

订单号

varchar(200)

yimiao_id

疫苗

int(11)

yonghu_id

用户

int(11)

buy_number

预约数量

int(11)

yimiao_order_true_price

实付价格

decimal(10,2)

yimiao_order_types

订单类型

int(11)

insert_time

创建时间

timestamp

create_time

创建时间

timestamp

表4-8 用户表

字段

注释

类型

id (主键)

主键

int(11)

username

账户

varchar(200)

password

密码

varchar(200)

yonghu_name

用户姓名

varchar(200)

yonghu_photo

头像

varchar(200)

yonghu_phone

手机号

varchar(200)

yonghu_email

电子邮箱

varchar(200)

sex_types

性别

int(11)

new_money

余额

decimal(10,2)

yonghu_delete

假删

int(11)

create_time

创建时间

timestamp


第五章 系统实现

这里主要是对系统设计实现进行描述,通过系统的设计和数据库的设计,通过编码后变成了可以进行操作的界面,让一切想法变成了结果,通过文字和具体程序操作界面的截图之间的配合,可以把功能更直观的描述起来。

5.1管理员功能实现

5.1.1 论坛管理

管理员进入如图5-1所示的论坛管理界面之后,管理员点击信息显示栏中最右侧的修改,删除帖子按钮可依次完成论坛帖子信息的修改,删除等操作,管理员也能在当前界面查看论坛帖子回复信息。

 

图5-1 论坛管理界面

5.1.2 疫苗信息管理

管理员进入如图5-2所示的疫苗信息管理界面之后,管理员点击信息显示栏中最右侧的修改,删除,增加库存,减少库存按钮可依次完成疫苗信息的修改,删除,疫苗库存增加,疫苗库存减少等操作。

 

图5-2 疫苗信息管理界面

5.1.3 疫苗评价管理

管理员进入如图5-3所示的疫苗评价管理界面之后,管理员点击信息显示栏右侧的回复,删除按钮可依次完成疫苗评价信息回复,删除等操作。

 

图5-3 疫苗评价管理界面

5.1.4 疫苗预约管理

管理员进入如图5-4所示的疫苗预约管理界面之后,管理员点击信息显示栏中最右侧的详情,删除按钮可依次完成疫苗预约信息的详情查看,删除操作,管理员在本界面也能查询疫苗预约信息等。

 

图5-4 疫苗预约管理界面

5.2用户功能实现

5.2.1 疫苗信息

用户进入如图5-5所示的疫苗信息界面之后,用户查看疫苗剩余数量,疫苗接种前后禁忌,适宜接种人群等信息,用户可以对能够预定的疫苗进行预约。

 

图5-5 疫苗信息界面

5.2.2 订单确认

用户进入如图5-6所示的订单确认界面之后,用户点击确认支付就可以支付订单。进入订单确认界面前,需要用户对疫苗进行预定,才可以进入订单确认界面。

 

图5-6 订单确认界面

5.2.3 我的疫苗预约

用户进入如图5-7所示的我的疫苗预约界面之后,用户可以查看疫苗预约信息,有已经评价的疫苗预约信息,有已支付的疫苗预约信息,有退款的疫苗预约信息等。

 

图5-7 我的疫苗预约界面

5.2.4 我的发帖

用户进入如图5-8所示的我的发帖界面之后,用户点击新增按钮即可编辑发布自己的帖子,本模块显示的帖子都是用户本人发布的帖子,用户可以修改,可以删除帖子。

 

图5-8 我的发帖界面

5.2.5 用户充值

用户进入如图5-9所示的用户充值界面之后,用户输入充值金额,然后提交就能对账户进行充值。

 

图5-9 用户充值界面


http://www.kler.cn/a/471624.html

相关文章:

  • flutter 专题二十四 Flutter性能优化在携程酒店的实践
  • 计算机网络之---有线网络的传输介质
  • LabVIEW之树形控件
  • (leetcode算法题)面试题 17.19. 消失的两个数字
  • SpringMVC的消息转换器
  • 新年到了!使用Python创建一个简易的接金元宝游戏
  • 计算机网络之---网络拓扑
  • 教育咨询系统架构与功能分析
  • Android车载音频系统目录
  • pycharm-pyspark 环境安装
  • Koi技术教程-Tauri基础教程-第二节 Tauri的核心概念下
  • 02- 三自由度串联机械臂运动学分析
  • 【MySQL系列文章】Linux环境下安装部署MySQL
  • Quartz如何实现分布式调度
  • 4. 多线程(2)---线程的状态和多线程带来的风险
  • 如何用代码提交spark任务并且获取任务权柄
  • 大数据技术(八)—— HBase数据读写流程和Api的使用
  • uniapp打包到宝塔并发布
  • 使用python将自己的程序封装成API
  • 使用Python实现医疗物联网设备:构建高效医疗监测系统
  • 快速排序进阶版(加入插入排序提高其性能)
  • 【代码随想录】刷题记录(93)-无重叠区间
  • Requests-数据解析bs4+xpath
  • UWB实操:用信号分析仪(频谱分析仪)抓取UWB频域的图像
  • 【JMeter】多接口关联
  • es 3期 第22节-Bucket特殊分桶聚合实战