流浪动物救助微信小程序springboot+论文源码调试讲解
第4章 系统设计
4.1系统设计目标
系统设计是系统实现的前提,只有设计完成后才可以按照设计进行实现。系统设计的目标是考虑系统实现的所有可能遇到的问题并想出解决办法,正确、完整的系统设计是可以减短系统实现的时间。系统设计包括系统功能结构设计和数据库设计。
4.2系统功能结构图
功能结构是把系统功能分析中分析的功能进行具体化,在系统实现的时候可以按照系统的功能结构图进行实现。并且可以在完成实现后进行对比、分析。系统功能结构图是必不可少的步骤,也是其它人员了解系统功能的主要方式。本系统的功能结构分为前台、用户、管理员。具体的功能结构以下图4.1系统功能结构图展示
图4.1系统功能结构图
4.3系统的数据库设计
4.3.1数据库概念结构设计
数据库的概念结构设计以数据ER图展示,概念结构研究的是数据实体和数据实体属性。本系统主要的数据为管理员信息、动物信息、领养信息、分类信息等。
(1)管理员数据的实体设计属性为编号、密码和账号。管理员数据ER图如下图4.2所示:
图4.2管理员ER图
(2)注册用户数据的实体设计的属性为姓名、性别、电话等。注册用户数据ER图如下图4.3所示:
图4.3注册用户ER图
(3)动物数据设计的属性为名称、图片、状态等。动物数据ER图如下图4.4所示:
图4.4动物ER图
(4)分类数据实体的属性设计为编号、名称、添加时间。分类数据实体的ER图如下图4.5所示:
图4.5分类信息实体ER图
(5)系统的实体关系ER图如下图4.6所示:
图4.6系统关系ER图
4.3.2数据库逻辑结构设计
数据库逻辑结构表现为数据库表,数据库表的设计是以数据ER图为基础,按照数据ER图里的属性来建立数据库表可以保证数据的完整性。同时一个好的数据库是可以保证系统里数据的准确。本数据库的逻辑结构包括管理员信息表、动物信息表、用户信息表、领养信息表等。本系统的数据库表如下表4.1-4.10所示:
表4.1 config
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | name | varchar | 100 | 否 | ||||||
3 | value | varchar | 100 | 是 |
表4.2 dictionary
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 20 | 是 | 是 | 否 | auto_increment | |||
2 | dic_code | varchar | 200 | 是 | ||||||
3 | dic_name | varchar | 200 | 是 | ||||||
4 | code_index | int | 11 | 是 | ||||||
5 | index_name | varchar | 200 | 是 | ||||||
6 | super_id | int | 11 | 是 | ||||||
7 | beizhu | varchar | 200 | 是 | ||||||
8 | create_time | timestamp | 是 |
表4.3 forum
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 11 | 是 | 是 | 否 | auto_increment | |||
2 | forum_name | varchar | 200 | 是 | ||||||
3 | yonghu_id | int | 11 | 是 | ||||||
4 | forum_content | text | 是 | |||||||
5 | super_ids | int | 11 | 是 | ||||||
6 | forum_state_types | int | 11 | 是 | ||||||
7 | insert_time | timestamp | 是 | |||||||
8 | update_time | timestamp | 是 | |||||||
9 | create_time | timestamp | 是 |
表4.4 lingyang
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 11 | 是 | 是 | 否 | auto_increment | |||
2 | xinxifabu_id | int | 11 | 是 | ||||||
3 | yonghu_id | int | 11 | 是 | ||||||
4 | insert_time | timestamp | 是 | |||||||
5 | create_time | timestamp | 是 |
表4.5 news
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 11 | 是 | 是 | 否 | auto_increment | |||
2 | news_name | varchar | 200 | 是 | ||||||
3 | news_types | int | 11 | 是 | ||||||
4 | news_photo | varchar | 200 | 是 | ||||||
5 | insert_time | timestamp | 是 | |||||||
6 | news_content | text | 是 | |||||||
7 | create_time | timestamp | 是 |
表4.6 token
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto | |||
2 | userid | bigint | 20 | 否 | ||||||
3 | username | varchar | 100 | 否 | ||||||
4 | tablename | varchar | 100 | 是 | ||||||
5 | role | varchar | 100 | 是 | ||||||
6 | token | varchar | 200 | 否 | ||||||
7 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
8 | expiratedtime | timestamp | 否 | CURRENT_TIMESTAMP |
表4.7 users
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto | |||
2 | username | varchar | 100 | 否 | ||||||
3 | password | varchar | 100 | 否 | ||||||
4 | role | varchar | 100 | 是 | 管理员 | |||||
5 | addtime | timestamp | 否 | CURRENT_TIMESTAMP |
表4.8 xinxifabu
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 11 | 是 | 是 | 否 | auto_increment | |||
2 | xinxifabu_name | varchar | 255 | 是 | ||||||
3 | xinxifabu_types | int | 4 | 是 | ||||||
4 | yonghu_id | int | 4 | 是 | ||||||
5 | xinxifabu_photo | varchar | 255 | 是 | ||||||
6 | xinxifabu_address | varchar | 255 | 是 | ||||||
7 | chongwu_types | int | 4 | 是 | ||||||
8 | xinxifabu_time | timestamp | 是 | |||||||
9 | xinxi_types | int | 4 | 是 | ||||||
10 | xinxifabu_content | varchar | 255 | 是 | ||||||
11 | create_time | timestamp | 是 |
表4.9 xinxifabu_liuyan
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 11 | 是 | 是 | 否 | auto | |||
2 | xinxifabu_id | int | 11 | 是 | ||||||
3 | yonghu_id | int | 11 | 是 | ||||||
4 | shouhou_commentback_text | text | 是 | |||||||
5 | insert_time | timestamp | 是 | |||||||
6 | create_time | timestamp | 是 |
表4.10 yonghu
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | int | 11 | 是 | 是 | 否 | auto_increment | |||
2 | username | varchar | 200 | 是 | ||||||
3 | password | varchar | 200 | 是 | ||||||
4 | yonghu_name | varchar | 200 | 是 | ||||||
5 | sex_types | int | 11 | 是 | ||||||
6 | yonghu_id_number | varchar | 200 | 是 | ||||||
7 | yonghu_phone | varchar | 200 | 是 | ||||||
8 | yonghu_photo | varchar | 200 | 是 | ||||||
9 | create_time | timestamp | 是 |
第5章 系统实现
5.1前台界面的实现
在前台界面里采用导航栏,标题、变幻图、动物信息、搜索框等元素进行设计,前台界面的设计原则采用内容丰富、界面干净整洁的思想。前台是本系统的门面,所有共享信息都可以在此界面找到。管理员负责本界面信息的更新管理。前台界面的实现效果如下图5.1所示:
图5.1前台界面的实现效果
5.1.1主人寻宠功能的实现界面
主人寻宠界面里以列表框的方式进行展示,在每个列表框里都展示了信息的标题、简介和所属类型等。主人寻宠功能的实现界面如下图5.2所示:
图5.2主人寻宠功能的浏览界面
5.1.2宠物寻主功能的实现界面
此界面的信息由管理员、用户发布,用户可以浏览其它用户发布的寻主信息并进行评论、领养。宠物寻主功能的展示界面如下图5.3所示:
图5.3宠物寻主功能的展示界面
5.1.3领养记录功能的实现界面
用户可以在宠物寻主详情里进行领养,加入领养记录里可以在我的界面里查看具体的领养情况。领养记录功能的实现界面如下图5.4所示:
图5.4领养记录功能的实现界面
5.1.4用户注册、登录功能的实现界面
游客想要成为用户就必须注册,用户注册界面采用信息填写框设置。用户注册界面的实现界面如下图5.5所示:
图5.5用户注册功能的实现界面
注册成功后可以进入登录界面,在登录界面里设计了注册用户的按钮,实现界面如下图5.6所示:
图5.6用户登录功能的实现界面
5.1.5评论功能的实现界面
用户可以评论宠物寻主、主人寻宠信息。用户发表评论的实现界面如下图5.7所示:
图5.7用户发表评论功能的实现界面
5.1.6信息发布功能的实现界面
用户可以发布自己的需求,需要填写具体的资料。实现界面如下图5.8所示:
图5.8信息发布的功能实现界面
5.1.7动物小圈功能的实现界面
本界面里可以看到关于动物的帖子,用户可以回复和发布帖子。动物小圈功能的实现界面如下图5.9所示:
图5.9动物小圈功能的实现界面
5.2我的功能的实现界面
用户在我的界面里可以管理自己发布信息以及查询附近的宠物医院、管理发布的评论、查看领养记录、求助日报等。我的功能的实现界面如下图5.10所示:
图5.10我的功能的实现界面
5.3管理员角色的功能实现界面
管理员可以管理管理员信息、信息发布信息、求助日报信息、领养记录信息、动物小圈信息、个人中心信息、用户信息等。管理员设计的目的是起到监督和信息审核的作用。管理员角色的功能实现界面如下图5.11所示:
图5.11管理员角色的功能实现界面