温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片!
系统介绍
流浪狗救助工作大多依靠民间救助团队自发开展,救助资金、物资来源分散,捐赠信息不透明,救助进展难以同步给爱心人士,物资流向和资金使用缺少统一的线上公示渠道。基于 SpringBoot3 的网上流浪狗救助捐赠平台,划分爱心捐赠人、救助站工作人员、平台管理员三类角色。爱心人士可以浏览救助项目,在线进行资金或物资捐赠,查看捐赠记录、救助动态与财务公示;救助站工作人员发布流浪狗救助信息、上传救助素材、登记物资使用情况、更新流浪狗领养状态;平台管理员负责审核救助项目、管理用户账号、处理违规信息、维护平台基础分类。平台搭建线上捐赠和信息公示渠道,让救助过程公开透明,汇聚社会爱心资源,助力流浪狗救助与领养工作开展。
技术介绍
后端采用 SpringBoot3 框架,整合 MyBatis-Plus 实现数据持久化,Spring Security 完成身份认证与权限控制;前端使用 Vue3 + Element Plus,采用前后端分离架构;数据库选用 MySQL,存储救助项目、捐赠记录、流浪动物信息、物资台账、用户信息、领养申请等数据。接口遵循 RESTful 设计规范,支持图片上传、分页查询、多条件筛选,方便后续拓展捐赠证书生成、消息提醒等功能。
系统截图













文档截图

核心代码
@RestController
@RequestMapping("/rescue")
public class RescueProjectController {
@Autowired
private RescueProjectService rescueProjectService;
// 新增救助项目
@PostMapping("/add")
public Result addProject(RescueProject rescueProject){
rescueProjectService.save(rescueProject);
return Result.success();
}
// 查询救助项目列表
@GetMapping("/list")
public Result list(){
List<RescueProject> list = rescueProjectService.list();
return Result.success(list);
}
// 提交捐赠记录
@PostMapping("/donate")
public Result donateProject(@RequestParam Long projectId, @RequestParam Long userId){
rescueProjectService.donateProject(projectId,userId);
return Result.success();
}
// 更新救助项目进度
@PostMapping("/updateProgress")
public Result updateProgress(@RequestParam Long projectId){
rescueProjectService.updateProgress(projectId);
return Result.success();
}
// 删除救助项目
@DeleteMapping("/delete/{id}")
public Result delete(@PathVariable Long id){
rescueProjectService.removeById(id);
return Result.success();
}
}
系统测试
本系统采用黑盒功能测试,围绕三类角色的业务流程设计测试用例,覆盖账号登录、救助项目发布、捐赠提交、捐赠记录查询、领养申请、项目进度更新、后台审核等模块。测试过程中发现表单校验不全、项目状态流转逻辑异常等问题,经过调整调试后全部修复。系统能够拦截非法输入,角色权限隔离有效,捐赠人只能查看和参与项目,不能修改救助站内部台账信息。系统业务流程运转顺畅,运行稳定,无数据错乱、程序崩溃等严重缺陷,满足业务需求。
结论
本文完成基于 SpringBoot3 的网上流浪狗救助捐赠平台的设计与实现,实现救助项目发布、线上捐赠、救助动态更新、领养申请、捐赠记录管理等核心功能。平台打通爱心人士和流浪狗救助站之间的信息通道,实现捐赠信息公开化,提升救助资源筹集效率。系统仍存在优化空间,后续可以增加捐赠资金流向明细公示、领养评估表单、消息推送、爱心排行等功能,进一步完善平台的公益服务能力。