/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */
#content_views .toc,
/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */
#content_views.markdown_views > p:empty:has(+ .toc),
#content_views.markdown_views > .toc + p:empty,
/* 富文本旧版目录标记 */
#content_views.htmledit_views #main-toc,
#content_views.htmledit_views #hr-toc,
#content_views.htmledit_views p[id*=\”-toc\”] {
display: none !important;
}
/* 目录去掉后,紧跟的首个标题不再多出一块上边距 */
#content_views.markdown_views > .toc + h1,
#content_views.markdown_views > .toc + h2,
#content_views.markdown_views > .toc + h3,
#content_views.markdown_views > .toc + h4,
#content_views.markdown_views > .toc + p:empty + h1,
#content_views.markdown_views > .toc + p:empty + h2,
#content_views.markdown_views > .toc + p:empty + h3,
#content_views.markdown_views > .toc + p:empty + h4 {
margin-top: 0 !important;
}
温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片!
摘要
本系统以 Java 语言和 SpringBoot 框架为后端技术底座,MySQL 作为数据库,面向普通宠物主人、入驻服务商家、社区运营管理员三类角色,打造集宠物档案、社区互动、生活服务于一体的宠物综合服务平台。系统包含宠物电子档案管理、健康与疫苗提醒、宠物社区晒宠发帖、领养信息发布、寄养与美容服务预约、服务商家展示、宠物用品选购、订单管理、评价互动、内容审核等功能模块。宠物主人可以为自己的宠物建立完整档案,按时收到疫苗驱虫提醒,在社区分享养宠日常,发布或申请宠物领养,在线预约附近商家寄养、洗澡、美容服务;入驻商家维护服务项目与档期,处理预约订单;运营管理员审核领养信息与社区内容、审核商家资质、统计平台活跃与服务数据。系统把原本分散在社交群聊、线下门店的养宠信息集中到一个平台,让主人有档案可查、有社区可交流、有服务可预约,同时为救助领养信息提供规范发布与审核通道,减少随意弃养与盲目领养,提升宠物生活服务的便利性与公益性。
技术栈
后端采用 SpringBoot 作为核心框架,结合 MyBatis-Plus 简化数据库操作,快速实现宠物档案、社区帖子、服务预约等业务数据持久化。MySQL 存储用户、宠物、帖子、商家、预约、订单等业务数据,Redis 缓存社区热帖、热门商家、登录 token,缓解数据库压力。前端使用 Vue3 搭配 Element Plus 组件库搭建页面,ECharts 实现社区活跃度、预约量、服务类目占比等数据可视化。项目通过 Maven 管理依赖,JWT 实现多角色身份认证,区分宠物主人、商家、管理员权限。集成 OSS 上传宠物照片与商家环境实拍,站内消息与提醒推送负责疫苗、预约到期通知,EasyExcel 导出预约与订单报表,全局异常处理器统一处理接口异常。整套技术方案成熟稳定,扩展性强,后续可拓展宠物走失寻回、宠物用品团购等功能。
系统设计
系统采用表现层、业务逻辑层、数据访问层三层架构,按业务划分为六大模块。用户模块实现注册登录、宠物档案建档、健康与疫苗提醒设置;社区模块支持发帖晒宠、评论点赞、话题分类、内容举报;领养模块发布待领养宠物信息、提交领养申请、审核与回访登记;服务模块展示入驻商家与寄养美容项目,支持在线预约与档期管理;用品模块提供宠物用品浏览、购物车、下单与订单跟踪;后台管理模块实现领养信息与商家资质审核、社区内容审核、用户与商家管理、数据统计。三类角色权限相互隔离,宠物主人侧重建档、发帖、领养申请与服务预约;商家侧重维护服务项目、处理预约订单;管理员拥有全部审核与数据管控权限。各模块低耦合,通过接口交互,便于后续拓展宠物走失寻回、用品团购等功能。
具体实现截图

核心代码
@RestController
@RequestMapping("/petHome")
public class PetHomeController {
@Autowired
private IPetProfileService petProfileService;
@Autowired
private IAdoptService adoptService;
// 新建或修改宠物档案
@PostMapping("/savePetProfile")
public Result savePetProfile(@RequestBody PetProfile profile) {
boolean flag = petProfileService.saveOrUpdate(profile);
return flag ? Result.success("宠物档案保存成功") : Result.error("档案保存失败");
}
// 分页查询待领养宠物
@GetMapping("/adoptList")
public Result adoptList(@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "10") Integer pageSize,
@RequestParam(required = false) String petType) {
Page<AdoptInfo> page = new Page<>(pageNum, pageSize);
LambdaQueryWrapper<AdoptInfo> wrapper = Wrappers.lambdaQuery();
if (StringUtils.isNotEmpty(petType)) {
wrapper.eq(AdoptInfo::getPetType, petType);
}
wrapper.eq(AdoptInfo::getAuditStatus, 1);
wrapper.eq(AdoptInfo::getAdoptStatus, 0);
wrapper.orderByDesc(AdoptInfo::getCreateTime);
return Result.success(adoptService.page(page, wrapper));
}
// 提交领养申请
@PostMapping("/applyAdopt")
public Result applyAdopt(@RequestBody AdoptApply apply) {
boolean flag = adoptService.saveApply(apply);
return flag ? Result.success("领养申请提交成功,等待审核") : Result.error("申请失败,您已提交过该宠物的申请");
}
}
数据库设计
数据库基于 MySQL 设计,根据宠物之家业务实体建立数据表,设置关联关系保证数据完整性与一致性。核心数据表包括用户表 user,存储账号、密码、昵称、角色、手机号、创建时间;宠物档案表 pet_profile,关联主人用户 id,记录宠物名字、品种、性别、生日、体重、绝育情况、疫苗记录;社区帖子表 community_post,记录发帖人 id、话题分类、标题、图文内容、点赞数、审核状态;领养信息表 adopt_info,记录发布人 id、宠物基础信息、照片、领养要求、审核状态、领养状态;领养申请表 adopt_apply,关联领养信息 id 与申请人 id,保存居住条件、养宠经验、审核意见;服务商家表 merchant,记录商家名称、服务类目、地址、资质状态;服务预约表 service_book,关联商家 id 与用户 id,记录服务项目、预约时间、订单状态;用品表 pet_goods,记录用品名称、分类、价格、库存、销量。所有数据表统一设置自增主键,添加创建时间、更新时间字段,针对领养状态、商家类目、预约时间查询建立索引,优化查询性能,降低数据冗余,满足宠物之家平台业务的数据存储需求。
系统测试
系统采用单元测试结合黑盒功能测试开展测试工作。单元测试重点对领养申请去重、预约档期冲突检测、宠物档案保存校验、权限拦截等核心逻辑编写测试用例,验证重复申请拦截、同一时段重复预约判断是否正确。黑盒测试模拟宠物主人、商家、管理员三类角色,依次测试登录注册、宠物建档、社区发帖互动、浏览领养信息、提交领养申请、预约寄养美容服务、用品下单、商家处理预约、后台审核领养与商家资质等完整业务流程。同时覆盖异常场景,重复提交同一宠物领养申请、预约已满时段、越权审核他人发布信息、下架服务项目预约、空内容发帖、非法参数等,记录接口返回、页面展示与数据变化,及时修复发现的缺陷。经过多轮测试,系统运行稳定,领养与预约流程准确,审核机制有效,权限控制可靠,数据读写无误,页面交互流畅,满足宠物之家管理系统的业务需求。
网硕互联帮助中心






评论前必须登录!
注册