摘 要
助农捐赠服务平台是一款旨在帮助用户解决农产品滞销问题、促进农产品流通的在线平台。用户可以查看爱心机构、招募信息、交流论坛、助农资讯、留言反馈等详细情况。平台还提供了捐赠功能,允许用户向需要帮助的农民捐赠。这些捐赠将通过平台直接送达农民手中,帮助他们度过难关。助农捐赠服务平台为用户搭建了一个便捷、高效的交流渠道,有助于推动农业发展和社会进步。
通过本平台能够将用户的信息管理工作规范化、简单化,从而提高管理工作的效率。本论文主要包括用户、爱心机构、招募信息、分类、捐赠项目、捐赠信息、求助信息、报名信息、留言反馈、交流论坛、系统管理、个人资料等功能;在windows10的平台环境下,采用的编程语言为java和springboot框架,将mysql作为后台数据库来实现助农捐赠管理流程中的各种需求。
关键词:捐赠服务;java;mysql数据库;
第4章 平台设计
4.1平台功能设计
根据前期调研和分析,本平台分为管理员和用户两大模块。管理员具有对用户信息的增加、更改、查询、删除等功能。平台模块功能结构图如图4-1所示:
图4-1 平台模块功能结构图
4.4数据库表的设计(共18张表)
在平台开发中,数据库的功能是用于存储和处理数据,设计数据库模型时必须考虑模型功能的长期稳定性,尽量做到“以不变应万变”,即当用户的需求发生改变时,即使数据库设计总框架不更改,也可以适应用户的功能需求。
根据调研,分析平台需求,设计若干数据表用于存储平台的基本信息。本平台数据表如下表所示。
表4-1:留言反馈
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 留言人id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 4294967295 | 头像 | ||
content | longtext | 4294967295 | 留言内容 | ||
cpicture | longtext | 4294967295 | 留言图片 | ||
reply | longtext | 4294967295 | 回复内容 | ||
rpicture | longtext | 4294967295 | 回复图片 |
表4-2:捐赠信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
biaoti | varchar | 200 | 标题 | ||
fenlei | varchar | 200 | 分类 | ||
fengmian | longtext | 4294967295 | 封面 | ||
dizhi | varchar | 200 | 地址 | ||
juanzengjine | double | 捐赠金额 | |||
juanzengwuzi | varchar | 200 | 捐赠物资 | ||
juanzengshijian | date | 捐赠时间 | |||
yonghuzhanghao | varchar | 200 | 用户账号 | ||
yonghuxingming | varchar | 200 | 用户姓名 | ||
beizhu | longtext | 4294967295 | 备注 |
此处省略15张表。。。
表4-18:助农资讯
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
introduction | longtext | 4294967295 | 简介 | ||
typename | varchar | 200 | 分类名称 | ||
name | varchar | 200 | 发布人 | ||
headportrait | longtext | 4294967295 | 头像 | ||
clicknum | int | 点击次数 | 0 | ||
clicktime | datetime | 最近点击时间 | |||
thumbsupnum | int | 赞 | 0 | ||
crazilynum | int | 踩 | 0 | ||
storeupnum | int | 收藏数 | 0 | ||
picture | longtext | 4294967295 | 图片 | ||
content | longtext | 4294967295 | 内容 |
第5章 平台实现
在上一章中,已经本论文中的助农捐赠服务平台进行了全面的设计。接下来第五章对本助农捐赠服务平台的实现过程进行说明,包括对该助农捐赠服务平台所需的开发环境、运行环境的说明以及对上一章中提到的各种内容的实现。
5.1前台功能实现
5.1.1平台首页页面
当人们打开平台的网址后,首先看到的就是首页界面。在这里,人们能够看到平台的导航条,通过导航条导航进入各功能展示页面进行操作。平台首页界面如图5-1所示:
图5-1 平台首页界面
在注册流程中,用户在Vue前端填写必要信息(如用户名、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知用户完成注册。这个过程实现了新用户的数据收集、验证和存储。平台注册页面如图5-2所示:
图5-2平台注册页面
招募信息:在招募信息页面的输入栏中输入招募职位或地点进行查询,可以查看到招募详细信息;并根据需要进行收藏或报名等操作;招募信息页面如图5-3所示:
图5-3招募信息详细页面
捐赠项目:在捐赠项目页面的输入栏中输入标题进行查询,可以查看到捐赠项目详细信息,并根据需要进行收藏或捐赠等操作;捐赠项目页面如图5-4所示:
图5-4捐赠项目详细页面
5.1.2个人中心
个人中心:在个人中心页面可以对修改密码、捐赠信息、求助信息、报名信息、我的发布、我的收藏进行详细操作;如图5-5所示:
图5-5个人中心界面
5.2管理员功能实现
在登录流程中,用户首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给前端,允许用户访问平台。这个过程涵盖了从用户输入到平台验证和响应的全过程。如图5-6所示。
图5-6 后台登录界面
管理员进入主页面,主要功能包括对用户、爱心机构、招募信息、分类、捐赠项目、捐赠信息、求助信息、报名信息、留言反馈、交流论坛、系统管理、个人资料等进行操作。管理员主页面如图5-7所示:
图5-7管理员主界面
用户功能在视图层(view层)进行交互,比如点击“搜索、新增、删除或用户统计”按钮或填写用户信息表单。这些用户信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看,修改或删除用户信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便用户功能可以看到最新的信息或相应的操作反馈。如图5-8所示:
图5-8用户界面
爱心机构功能在视图层(view层)进行交互,比如点击“搜索、新增或删除”按钮或填写爱心机构信息表单。这些爱心机构信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除爱心机构信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便爱心机构功能可以看到最新的信息或相应的操作反馈。如图5-9所示:
图5-9爱心机构界面
招募信息功能在视图层(view层)进行交互,比如点击“搜索、新增、删除、招募人数统计或招募地点统计”按钮或填写招募信息表单。这些招募信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除招募信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便招募信息功能可以看到最新的信息或相应的操作反馈。如图5-10所示:
图5-10招募信息界面
分类功能在视图层(view层)进行交互,比如点击“搜索、新增或删除”按钮或填写分类信息表单。这些分类信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除分类信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便分类功能可以看到最新的信息或相应的操作反馈。如图5-11所示:
图5-11分类界面