diy小程序开发平台_长沙建网站公司_西安app开发公司_福州做网站
第3章 系统设计 本章主要讨论的内容包括志愿者服务平台的功能模块设计、数据库系统设计。
本志愿者服务平台从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。
图3-1志愿者服务平台架构设计图
表现层(UI):又称UI层,主要完成本志愿者服务平台的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本志愿者服务平台时的舒适度。UI的界面设计也要适应不同版本的志愿者服务平台以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。
业务逻辑层(BLL):主要完成本志愿者服务平台的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。
数据层(DL):由于本志愿者服务平台的数据是放在服务端的MySQL数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本志愿者服务平台的数据存储和管理功能。
3.2.1 整体功能模块设计
在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本志愿者服务平台中的用例。那么接下来就要开始对志愿者服务平台主要功能进行设计。志愿者服务平台根据前面章节的需求分析得出,其总体功能模块图如下图4-2所示。
图3-2 SSM志愿者服务平台功能模块图
3.2.2用户模块设计
管理员能够实现对系统用户查询、新增、重置和删除操作,用户模块结构图如下图:
图3-3用户模块结构图
3.2.3志愿活动信息模块设计
志愿者服务平台是中需要存储不少志愿活动信息,其模块功能结构,具体的结构图如下:
图3-4志愿活动信息模块结构图
3.2.4报名申请模块设计
志愿者服务平台系统需要展示相关报名申请信息,其模块功能结构,具体的结构图如下:
图3-5报名申请模块结构图
3.3数据库设计
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
3.3.1 数据库概念结构设计
下面是整个志愿者服务平台中主要的数据库表总E-R实体关系图。
图4-3志愿者服务平台E-R图
3.3.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 | 用户编号: |
-
- 表activity_classification (活动分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | activity_classification_id | int | 10 | 0 | N | Y | | 活动分类ID |
2 | activity_classification | varchar | 64 | 0 | Y | N | | 活动分类 |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | 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: |
-
- 表demand_users (需求用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | demand_users_id | int | 10 | 0 | N | Y | | 需求用户ID |
2 | name_of_the_requesting_party | varchar | 64 | 0 | Y | N | | 需求方姓名 |
3 | gender_of_the_demand_side | varchar | 64 | 0 | Y | N | | 需求方性别 |
4 | id_number | varchar | 64 | 0 | Y | N | | 身份证号 |
5 | contact_information | varchar | 64 | 0 | Y | N | | 联系方式 |
6 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
-
- 表evaluation_information (评价信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | evaluation_information_id | int | 10 | 0 | N | Y | | 评价信息ID |
2 | demand_users | int | 10 | 0 | Y | N | 0 | 需求用户 |
3 | name_of_the_requesting_party | varchar | 64 | 0 | Y | N | | 需求方姓名 |
4 | volunteer_users | int | 10 | 0 | Y | N | 0 | 志愿用户 |
5 | volunteer_name | varchar | 64 | 0 | Y | N | | 志愿者姓名 |
6 | comment_time | datetime | 19 | 0 | Y | N | | 评论时间 |
7 | evaluation_by_the_demand_side | text | 65535 | 0 | Y | N | | 需求方评价 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
-
- 表forum (论坛)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | forum_id | mediumint | 8 | 0 | N | Y | | 论坛id |
2 | display | smallint | 5 | 0 | N | N | 100 | 排序 |
3 | user_id | mediumint | 8 | 0 | N | N | 0 | 用户ID |
4 | nickname | varchar | 16 | 0 | Y | N | | 昵称:[0,16] |
5 | praise_len | int | 10 | 0 | Y | N | 0 | 点赞数 |
6 | hits | int | 10 | 0 | N | N | 0 | 访问数 |
7 | title | varchar | 125 | 0 | N | N | | 标题 |
8 | keywords | varchar | 125 | 0 | Y | N | | 关键词 |
9 | description | varchar | 255 | 0 | Y | N | | 描述 |
10 | url | varchar | 255 | 0 | Y | N | | 来源地址 |
11 | tag | varchar | 255 | 0 | Y | N | | 标签 |
12 | img | text | 65535 | 0 | Y | N | | 封面图 |
13 | content | longtext | 2147483647 | 0 | Y | N | | 正文 |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
16 | avatar | varchar | 255 | 0 | Y | N | | 发帖人头像: |
17 | type | varchar | 64 | 0 | N | N | 0 | 论坛分类:[0,1000]用来搜索指定类型的论坛帖 |
-
- 表forum_type (论坛分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | | 分类ID:[0,10000] |
2 | name | varchar | 16 | 0 | N | N | | 分类名称:[2,16] |
3 | description | varchar | 255 | 0 | Y | N | | 描述:[0,255]描述该分类的作用 |
4 | url | varchar | 255 | 0 | Y | N | | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 |
5 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
6 | icon | varchar | 255 | 0 | Y | N | | 分类图标: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | 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: |
-
- 表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 | 更新时间: |
-
- 表points_mall (积分商城)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | points_mall_id | int | 10 | 0 | N | Y | | 积分商城ID |
2 | product_name | varchar | 64 | 0 | Y | N | | 商品名称 |
3 | product_images | varchar | 255 | 0 | Y | N | | 商品图片 |
4 | product_number | varchar | 64 | 0 | Y | N | | 商品编号 |
5 | redeem_points | int | 10 | 0 | Y | N | 0 | 兑换积分 |
6 | product_introduction | text | 65535 | 0 | Y | N | | 商品简介 |
7 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
8 | praise_len | 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 | 更新时间 |
-
- 表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已取消 |
-
- 表redemption_of_points (积分兑换)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | redemption_of_points_id | int | 10 | 0 | N | Y | | 积分兑换ID |
2 | volunteer_users | int | 10 | 0 | Y | N | 0 | 志愿用户 |
3 | volunteer_name | varchar | 64 | 0 | Y | N | | 志愿者姓名 |
4 | product_name | varchar | 64 | 0 | Y | N | | 商品名称 |
5 | redeem_points | int | 10 | 0 | Y | N | 0 | 兑换积分 |
6 | exchange_quantity | int | 10 | 0 | Y | N | 0 | 兑换数量 |
7 | total_points | varchar | 64 | 0 | Y | N | | 积分总数 |
8 | redemption_time | datetime | 19 | 0 | Y | N | | 兑换时间 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
-
- 表registration_information (报名信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | registration_information_id | int | 10 | 0 | N | Y | | 报名信息ID |
2 | volunteer_users | int | 10 | 0 | Y | N | 0 | 志愿用户 |
3 | volunteer_name | varchar | 64 | 0 | Y | N | | 志愿者姓名 |
4 | demand_users | int | 10 | 0 | Y | N | 0 | 需求用户 |
5 | name_of_the_requesting_party | varchar | 64 | 0 | Y | N | | 需求方姓名 |
6 | activity_name | varchar | 64 | 0 | Y | N | | 活动名称 |
7 | activity_time | varchar | 64 | 0 | Y | N | | 活动时间 |
8 | event_location | varchar | 64 | 0 | Y | N | | 活动地点 |
9 | activity_points | varchar | 64 | 0 | Y | N | | 活动积分 |
10 | number_of_applicants | int | 10 | 0 | Y | N | 0 | 报名人数 |
11 | registration_time | datetime | 19 | 0 | Y | N | | 报名时间 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
-
- 表sign_in_information (签到信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | sign_in_information_id | int | 10 | 0 | N | Y | | 签到信息ID |
2 | volunteer_users | int | 10 | 0 | Y | N | 0 | 志愿用户 |
3 | volunteer_name | varchar | 64 | 0 | Y | N | | 志愿者姓名 |
4 | demand_users | int | 10 | 0 | Y | N | 0 | 需求用户 |
5 | name_of_the_requesting_party | varchar | 64 | 0 | Y | N | | 需求方姓名 |
6 | activity_name | varchar | 64 | 0 | Y | N | | 活动名称 |
7 | sign_in_method | varchar | 64 | 0 | Y | N | | 签到方式 |
8 | sign_in_time | datetime | 19 | 0 | Y | N | | 签到时间 |
9 | execution_status | text | 65535 | 0 | Y | N | | 执行情况 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | 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 | open_id | varchar | 255 | 0 | Y | N | | 针对获取用户信息字段 |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | | 会员等级 |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
-
- 表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 | 更新时间: |
-
- 表volunteer_activities (志愿活动)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | volunteer_activities_id | int | 10 | 0 | N | Y | | 志愿活动ID |
2 | demand_users | int | 10 | 0 | Y | N | 0 | 需求用户 |
3 | name_of_the_requesting_party | varchar | 64 | 0 | Y | N | | 需求方姓名 |
4 | activity_name | varchar | 64 | 0 | Y | N | | 活动名称 |
5 | activity_classification | varchar | 64 | 0 | Y | N | | 活动分类 |
6 | event_cover | varchar | 255 | 0 | Y | N | | 活动封面 |
7 | activity_time | datetime | 19 | 0 | Y | N | | 活动时间 |
8 | event_location | varchar | 64 | 0 | Y | N | | 活动地点 |
9 | number_of_people_required | int | 10 | 0 | Y | N | 0 | 人数需求 |
10 | activity_points | int | 10 | 0 | Y | N | 0 | 活动积分 |
11 | service_content | text | 65535 | 0 | Y | N | | 服务内容 |
12 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
13 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
14 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
-
- 表volunteer_evaluation (志愿评价)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | volunteer_evaluation_id | int | 10 | 0 | N | Y | | 志愿评价ID |
2 | volunteer_users | int | 10 | 0 | Y | N | 0 | 志愿用户 |
3 | volunteer_name | varchar | 64 | 0 | Y | N | | 志愿者姓名 |
4 | demand_users | int | 10 | 0 | Y | N | 0 | 需求用户 |
5 | name_of_the_requesting_party | varchar | 64 | 0 | Y | N | | 需求方姓名 |
6 | evaluation_time | datetime | 19 | 0 | Y | N | | 评价时间 |
7 | volunteer_evaluation | text | 65535 | 0 | Y | N | | 志愿方评价 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
-
- 表volunteer_users (志愿用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | volunteer_users_id | int | 10 | 0 | N | Y | | 志愿用户ID |
2 | volunteer_name | varchar | 64 | 0 | N | N | | 志愿者姓名 |
3 | volunteer_gender | varchar | 64 | 0 | Y | N | | 志愿者性别 |
4 | id_number | varchar | 64 | 0 | Y | N | | 身份证号 |
5 | contact_information | varchar | 64 | 0 | Y | N | | 联系方式 |
6 | professional_skills | varchar | 64 | 0 | Y | N | | 专业技能 |
7 | volunteer_experience | varchar | 64 | 0 | Y | N | | 志愿经历 |
8 | volunteer_points | int | 10 | 0 | Y | N | 0 | 志愿积分 |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
第4章 系统实现
4.1 注册用户功能模块
4.1.1 首页界面
系统首页以上中下布局,正上方是系统的导航栏,中间是轮播图、下面是活动新闻、活动推荐信息。其界面如下图4-1所示:
图4-1 首页界面图
4.1.2用户登录界面
已注册用户点击首页右上方的“登录”按钮进入登录页面输入用户名和密码并点击“登录”按钮,系统会验证输入的信息与数据库中当前保存的用户信息是否一致,验证通过后即可完成登录;否则将会提示相应错误信息。其界面如下图4-2所示:
图4-2 用户登录界面图
登录代码如下:
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
QueryWrapper wrapper = new QueryWrapper<User>();
Map<String, String> map = new HashMap<>();
4.1.3 我的账户界面
点击“我的”下拉按钮中“我的账户”,用户可以查看和修改个人资料,主要包括头像、昵称和登录密码。其界面如下图4-3所示:
图4-3 我的账户界面图
4.1.4 志愿活动界面
用户可以查看志愿活动列表信息,点击某一志愿活动可以查看详情。其界面如下图4-4所示:
图4-4志愿活动界面图
4.1.5积分商城界面
用户可以查看积分商城列表中的某一积分商城信息详情并可以进行点赞、收藏操作。其界面如下图4-5所示:
图4-5 积分商城界面图
4.1.6社区论坛界面
用户可以查看社区论坛列表信息中的某一论坛详情并可以进行点赞、收藏和发表评论操作;点击详情上方的“发布内容”进入页面填写相关信息后点击“提交”即可完成社区论坛的发布。其界面如下图4-6所示。
图4-6社区论坛界面图
4.1.7个人中心界面
点击右上角“我的”下拉按钮“个人中心”,进入个人中心页面可以查看个人首页、报名信息、签到信息、积分兑换、评价信息、志愿评价。其界面如下图4-8所示。
图4-7 个人中心界面图
4.2 管理员功能模块
4.2.1后台首页界面
管理员可以对系统用户、志愿活动管理、报名信息管理、签到信息管理、积分商城管理、积分兑换管理、评价信息管理、志愿评价管理、活动分类管理、系统管理、通知公告管理、交流管理进行操作,查看报名信息统计折线图。其界面如下图4-9所示:
图4-9后台首页界面图
4.2.2用户管理界面
管理员可以查看某一用户详情,可以对系统用户进行查询、重置、新增和删除操作。其界面如下图4-10所示:
图4-10用户管理界面图
4.2.3 交流管理界面
管理员可以对论坛列表信息进行添加,可以查看论坛列表列表中的某一论坛列表详情和评论信息,可以对论坛列表进行查询、重置、新增和删除操作。其界面如下图4-11所示:
图4-11交流管理界面图
4.2.3 积分商城界面
管理员可以查看积分商城列表中的某一活动的详情和评论,可以对积分商城信息进行查询、重置、新增和删除操作。其界面如下图4-12所示:
图4-12积分商城界面图
4.2.4 志愿活动界面
管理员可以查看志愿活动列表中的某一活动信息详情并进行审核和回复,可以对志愿活动信息进行查询、重置、新增和删除操作。其界面如下图4-13所示:
图4-13志愿活动界面图
4.2.5 报名申请界面
管理员可以查看报名申请列表中的某一报名申请信息详情并进行审核和回复,可以对报名申请信息进行查询、重置、新增和删除操作。其界面如下图4-14所示:
图4-14报名申请界面图
4.2.6 评价信息管理界面
管理员可以查看评价信息列表中的某一评价信息详情并回复,可以对评价信息信息进行查询、重置和删除操作。其界面如下图4-15所示:
图4-15评价信息界面图
">