## 1. 项目介绍
宠物家园系统是一个基于springboot框架开发的综合性宠物服务平台,集成了宠物AI识别、宠物商城、宠物社区等功能。系统主要分为PC端管理后台和移动端用户应用两部分。通过人工智能技术,该系统能够实现宠物品种的智能识别,为用户提供便捷的宠物咨询、购物和交流平台。
### 1.1 系统目标
- 为用户提供宠物品种识别服务
- 提供宠物玩具商城,满足宠物主人购物需求
- 搭建宠物社区,促进宠物爱好者交流互动
- 提供宠物知识科普,帮助用户了解宠物习性
## 2. 技术架构
### 2.1 后端技术栈
- **基础框架**:Spring Boot 2.5.15
- **安全框架**:Spring Security 5.7.12
- **权限控制**:基于RBAC (Role-Based Access Control) 模型
- **持久层**:MyBatis + PageHelper (分页插件)
- **数据库**:MySQL 8.0
- **缓存**:Redis (可选)
- **任务调度**:Quartz
- **日志**:Logback 1.2.13
- **API文档**:Swagger 3.0.0
- **工具类**:
- Apache Commons
- FastJSON 2.0.53
- POI (Excel导出)
- JWT (JSON Web Token)
### 2.2 前端技术栈
#### 管理后台 (PC端)
- **基础框架**:Vue.js
- **UI组件库**:Element UI
- **状态管理**:Vuex
- **路由**:Vue Router
- **HTTP客户端**:Axios
- **构建工具**:Webpack
#### 用户应用 (移动端)
- **框架**:uni-app
- **UI组件**:uni-ui
- **状态管理**:Vuex
- **HTTP客户端**:uni.request (封装)
### 2.3 人工智能技术
- 基于百度AI开放平台的动物识别API
- 本地图像处理和缓存
### 2.4 系统架构图
## 4. 数据库设计 系统使用MySQL数据库,主要包含以下数据表: ### 4.1 业务相关表 #### 4.1.1 宠物识别相关 - **pet_recognition_records**: 宠物识别记录表 - `id`: 主键 - `image_md5`: 图片MD5值 - `image_url`: 图片URL - `pet_breed`: 宠物品种 - `confidence`: 识别置信度 - `description`: 品种描述 - `created_at`: 创建时间 - `updated_at`: 更新时间 - **user_recognition_records**: 用户识别记录表 - `id`: 主键 - `user_id`: 用户ID - `recognition_record_id`: 识别记录ID - `status`: 状态 - `remark`: 备注 - `created_at`: 创建时间 - `updated_at`: 更新时间 - `pet_breed`: 宠物名称 #### 4.1.2 宠物商城相关 - **pet_toy**: 宠物玩具表 - `id`: 玩具ID - `name`: 玩具名称 - `brand`: 品牌 - `price`: 价格 - `original_price`: 原价 - `suit_for`: 适用宠物 - `description`: 详情描述 - `material`: 材质 - `size`: 尺寸 - `weight`: 重量 - `origin`: 产地 - `shelf_life`: 保质期 - `tags`: 标签 - `shop_name`: 店铺名称 - `shop_phone`: 联系电话 - `shop_avatar`: 店铺头像 - `images`: 图片URL - `status`: 状态 - `create_time`: 创建时间 - `update_time`: 更新时间 - **cart_item**: 购物车表 - `id`: 购物车项ID - `user_id`: 用户ID - `toy_id`: 玩具ID - `quantity`: 商品数量 - `selected`: 是否选中 - `specs`: 规格信息 - `price`: 加入时的价格 - `create_time`: 创建时间 - `update_time`: 更新时间 - **pet_order**: 宠物玩具订单表 - `id`: 订单ID - `order_no`: 订单编号 - `user_id`: 用户ID - `total_amount`: 订单总金额 - `pay_amount`: 实付金额 - `freight_amount`: 运费金额 - `pay_type`: 支付方式 - `status`: 订单状态 - `address`: 收货地址 - `receiver`: 收货人 - `receiver_phone`: 收货人电话 - `note`: 订单备注 - `confirm_status`: 确认收货状态 - `create_time`: 创建时间 - `pay_time`: 支付时间 - `delivery_time`: 发货时间 - `receive_time`: 收货时间 #### 4.1.3 宠物社区相关 - **pet_post**: 宠物社区帖子表 - `id`: 帖子ID - `user_id`: 用户ID - `user_name`: 用户名称 - `user_avatar`: 用户头像 - `content`: 帖子内容 - `images`: 图片URL - `topic`: 话题 - `like_count`: 点赞数 - `comment_count`: 评论数 - `location`: 位置 - `status`: 状态 - `ip`: IP地址 - `create_time`: 创建时间 - `update_by`: 更新者 - `update_time`: 更新时间 #### 4.1.4 其他业务表 - **favorite**: 收藏表 - `id`: 收藏ID - `user_id`: 用户ID - `toy_id`: 玩具ID - `create_time`: 收藏时间 - **pet_favorite**: 宠物收藏表 - `id`: 主键