基于springboot+vue+微信小程序的宠物领养系统

news/2025/1/18 7:35:19/

基于springboot+vue+微信小程序的宠物领养系统

一、介绍

本项目利用SpringBoot、Vue和微信小程序技术,构建了一个宠物领养系统。

本系统的设计分为两个层面,分别为管理层面与用户层面,也就是管理者与用户,管理权限与用户权限是不同的,具体角色分类与所具权限如下:

  1. 管理者:能够通过账户密码登录管理者界面,管理员有个人信息、修改密码、用户管理、公告管理、宠物管理、领养管理和社区管理功能。
  2. 用户:能够通过注册登录查看宠物信息、对于自己喜欢的宠物,可以申请领养。用户可以在社区发帖以及跟帖、且拥有公告查看、个人信息编辑、修改密码、参与用户调研、查看我的领养申请以及查看以及添加个人宠物的功能,且可以维护个人宠物的成长记录。
二、软件架构
功能架构:

在这里插入图片描述

技术栈:
  • 后端:Java、SpringBoot、Mybaits Plus ;
  • 前端:vue3、element-plus(https://element-plus.org/zh-CN/component/overview.html)、echarts;
  • 微信小程序:vant(https://vant-ui.github.io/vant-weapp/#/button)
  • 数据库: MySql
三、系统功能
用户功能需求
(1)注册功能

用户在小程序上进行账号注册。首先检查用户名和邮箱是否存在,如不存在即可进行注册;验证用户实名身分是否成年,只有满足身份证年龄18周岁以上的用户才可注册;注册成功后,将用户输入的密码进行MD5加密,注册成功后提示注册成功,并将用户信息保存到数据库中。

(2)登录功能

使用宠物领养系统前是需要用户登录个人账号。用户使用注册的账号登录小程序。
在这里插入图片描述

(3)首页

用户登录小程序后,首先可以看待宠物列表,可以浏览系统发布的宠物信息。(包括图片、视频、详细介绍),点击详情可以查看宠物详情,包含宠物基本信息、详情、审核信息和成长记录等信息。对于自己感兴趣的宠物,可以点击申请领养进行申请(申请领养前必须先完成用户信息调研)。
点击首页的“推荐”按钮,可以进入推荐列表:系统会根据用户调研信息的喜好结果,个性化推荐心仪的宠物。
在这里插入图片描述

(4)社区

用户通过申请领养到宠物后还可以在平台上实时记录宠物成长信息和在宠物社区进行发帖,与其他用户交流心得。还可以对他人发布的信息进行点赞、评论等操作。该部分功能分为晒宠物、求宠物、找领养等模块,用户发布的时候可以选择模块标签后进行发布。
在这里插入图片描述

(5)公告

用户可以查看管理员发布的系统公告
在这里插入图片描述

(6)个人信息编辑

用户在这里维护个人信息。

(7)修改密码

用户可以定期在这里修改密码,确保账号的安全性。

(8)用户调研

用户在这里参与用户调研,填写调查问卷后,系统会给用户推荐喜欢的宠物,用户也可以对自己感兴趣的宠物申请领养。
在这里插入图片描述

(9)我的领养申请

用户在这里查看自己的领养申请记录,分为全部、已申请、审核通过、审核未通过、已收货和已取消几类数据。
在这里插入图片描述

(10)我的宠物

首先,用户可以在该模块添加自己的宠物,添加后可以维护宠物的成长记录,该模块的数据管理员不可见,仅宠物主自己可看。如果用户想转让自己的宠物,点击转让按钮即可转让,转让后宠物会进入管理员界面,由管理员进行审核与发布。对于用户领养且已收货的宠物、点击领养tag按钮,即可查看宠物信息。
在这里插入图片描述

管理者功能需求
(1)登录

管理员使用系统,首先要登入系统。

(2)个人信息

管理员在这里维护个人信息。

(3)首页

首页是对平台数据的统计页面,这里使用echarts图对数据进行分析展示,管理员可以清晰的看到平台相关数据分析。
在这里插入图片描述

(4)修改密码

管理员可以定期在这里修改密码,确保账号的安全性。

(5)用户管理

管理者可以进入用户管理页面,可以看到目前所注册的用户相关信息,通过姓名,手机账号进行搜索,还可以对用户进行如下操作:
a)新增:点击新增按钮,输入用户信息,可添加新用户
b)搜索:输入用户名字和手机号码,点击搜索即可查询用户信息
c)编辑:编辑用户信息
d)重置密码:点击重置密码,可重置该用户密码
e)启用/停用:对用户账号状态进行修改,被停用的用户无法登录系统
f)删除:删除该账号
在这里插入图片描述
在这里插入图片描述

(6)公告管理

管理者进入公告管理页面,进行新增、修改、删除、停/启用以及查看详情等操作。
在这里插入图片描述
在这里插入图片描述

(7)宠物管理

管理者进入宠物管理页面,即可看到平台所有宠物列表,包含管理员添加的以及用户转让的宠物,且可以进行新增、查看详情、修改、删除、审核、启/停用、以及维护成长记录等操作。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(8)领养管理

管理员进入领养管理页面,可以看到用户所有的申请领养记录,可以对记录进行审核操作,且可以在这里查看宠物详情和领养详情。
在这里插入图片描述

(9)社区管理

管理宠物社区的帖子和评论,可以对违规信息进行删除操作。
在这里插入图片描述
在这里插入图片描述

四、安装教程

  • 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并执行项目的sql文件
  • 使用IDEA/Eclipse导入项目,若为maven项目请选择maven,等待依赖下载完成
  • 修改application.yml里面的数据库配置以及文件下载地址等配置,然后运行项目
  • (管理端前端)在编译器中打开terminal,进入pet-web目录下,执行npm install 依赖下载完成后执行 npm run dev,执行成功后会显示访问地址
  • 微信小程序)在微信开发者工具中打开pet-mini代码

五、工程目录结构

|house-second|-- pet-server 后端目录接口|-- pet-web 管理端前端|-- pet-web 用户端(微信小程序

六、表结构

表名说明功能
tbl_file文件信息表存储文件信息
tbl_user用户信息表存储系统用户信息
tbl_user_survey用户调研信息表保存用户调研信息
tbl_notice公告信息表存储公告信息
tb_pet_user个人宠物信息表存储用户个人宠物基础信息
tb_pet宠物信息表存储宠物库宠物基本信息
tb_pet_adopt宠物领养信息表存储领养信息
tb_pet_record宠物成长记录表存储宠物成长记录信息
tb_community社区信息表存储社区帖子信息
tb_community_collect社区点赞表存储社区帖子点赞和收藏信息
tb_community_comment社区评论表存储社区帖子评论信息

七、其它

微信小程序官方文档:https://developers.weixin.qq.com/miniprogram/dev/component/picker-view-column.html
vat文档:https://vant-ui.github.io/vant-weapp/#/button

源码地址:https://gitee.com/ymz-001/j-pet


http://www.ppmy.cn/news/1564095.html

相关文章

Goland项目内引入字符串标红的解决办法

当我在go项目内引入某个模块比如: import ( "log" "xxx.com/bird/models" ) 时,Goland会提示错误并标红这个引用,实际这个引用就走go.mod中配置着,但Goland就是不认,问了AI才知道解决办法如…

HTML5教程(中)

HTML5 浏览器支持 HTML5 浏览器支持 目前市面上的浏览器有很多版本,你可以让一些较早的浏览器(不支持HTML5)支持 HTML5。 HTML5 浏览器支持 现代的浏览器都支持 HTML5。 此外,所有浏览器,包括旧的和最新的&#xff…

2025年01月16日Github流行趋势

项目名称:tabby 项目地址url:https://github.com/TabbyML/tabby 项目语言:Rust 历史star数:27449 今日star数:1439 项目维护者:wsxiaoys, apps/autofix-ci, icycodes, liangfung, boxbeam 项目简介&#xf…

【全面解析】深入解析 TCP/IP 协议:网络通信的基石

深入解析 TCP/IP 协议:网络通信的基石 导语 你是否曾好奇,现代互联网是如何实现全球设备之间的高速、稳定和可靠通信的?无论是浏览网页、发送电子邮件,还是进行视频通话,背后都离不开 TCP/IP 协议 的支撑。作为互联网…

【深度学习基础】线性神经网络 | softmax回归的简洁实现

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…

clickhouse-介绍、安装、数据类型、sql

1、介绍 ClickHouse是俄罗斯的Yandex于2016年开源的列式存储数据库(DBMS),使用C语言编写,主要用于在线分析处理查询(OLAP),能够使用SQL查询实时生成分析数据报告。 OLAP(On-Line A…

Windows图形界面(GUI)-QT-C/C++ - QT 对话窗口

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 模态对话框 非模态对话框 文件对话框 基本概念 静态函数 常见属性 颜色对话框 基本概念 静态函数 常见属性 字体对话框 基本概念 静态函数 常见属性 输入对话框 基本概念 …

方法引用与lambda底层原理Java方法引用、lambda能被序列化么?

0.引入 最近笔者使用flink实现一些实时数据清洗(从kafka清洗数据写入到clickhouse)的功能,在编写flink作业后进行上传,发现运行的时候抛出:java.io.NotSerializableException,错误消息可能类似于 “org.apa…