docs: 重构API文档和系统架构文档,统一技术栈规范docs(architecture): 更新系统架构设计文档
- 重新组织文档结构,优化标题层级 - 添加系统架构图,直观展示系统组成- 补充前端架构、后端架构、数据架构等详细内容 - 更新安全架构、部署架构、性能优化策略等章节 - 增加扩展性设计和高可用设计章节 - 总结系统架构设计特点和优势
This commit is contained in:
@@ -1,502 +1,363 @@
|
||||
# 系统架构文档
|
||||
# 系统架构设计文档
|
||||
|
||||
## 1. 概述
|
||||
|
||||
本项目是一个综合性的畜牧业数字化管理平台,主要面向锡林郭勒盟地区的养殖产业,包含官网展示、后台管理、移动端小程序、大屏可视化等多个子系统。平台集成了养殖管理、金融服务(银行监管、保险监管)、政府监管、牛只交易、牛肉商城、数据分析等功能模块,旨在通过数字化手段提升整个产业链的管理效率和透明度。
|
||||
本项目采用前后端分离的架构设计,后端基于双技术栈(Java Spring Boot + Node.js)的微服务架构,前端采用Vue.js和Nuxt.js技术栈,支持Web端和微信小程序等多种客户端。
|
||||
|
||||
## 2. 技术栈
|
||||
|
||||
### 2.1 前端技术栈
|
||||
- **官网首页**: HTML5 + CSS3 + JavaScript
|
||||
- **后台管理系统**: Vue.js 3 + TypeScript + Ant Design Vue + Pinia
|
||||
- **大屏可视化系统**: Vue.js 3 + ECharts + 自定义可视化组件
|
||||
- **微信小程序矩阵**: 微信小程序原生开发 + uni-app
|
||||
- **管理后台**: Vue 3 + Element Plus
|
||||
- **用户端**: Nuxt 3 (SSR)
|
||||
- **微信小程序**: 微信小程序原生开发
|
||||
- **构建工具**: Vite, Webpack
|
||||
- **状态管理**: Pinia, Vuex
|
||||
- **HTTP客户端**: Axios
|
||||
|
||||
### 2.2 后端技术栈
|
||||
- **API服务**: Node.js + Express.js + TypeScript + RESTful API
|
||||
- **数据库**: MySQL
|
||||
- **缓存系统**: Redis
|
||||
- **消息队列**: RabbitMQ(用于异步处理)
|
||||
- **文件存储**: 腾讯云对象存储
|
||||
- **实时通信**: WebSocket(用于大屏数据推送和实时通知)
|
||||
|
||||
### 2.3 数据库配置
|
||||
#### 2.2.1 Java技术栈(主要)
|
||||
- **核心框架**: Spring Boot 2.7.x, Spring Cloud 2021.x
|
||||
- **服务注册与发现**: Eureka
|
||||
- **配置中心**: Spring Cloud Config
|
||||
- **API网关**: Spring Cloud Gateway
|
||||
- **数据库**: MySQL 8.0, Spring Data JPA
|
||||
- **缓存**: Redis
|
||||
- **消息队列**: RabbitMQ
|
||||
- **安全框架**: Spring Security + JWT
|
||||
- **构建工具**: Maven 3.8.x
|
||||
|
||||
#### 2.3.1 测试环境
|
||||
- **主机**: `192.168.0.240` (MySQL主机地址)
|
||||
- **端口**: `3306` (MySQL端口)
|
||||
- **用户名**: `root`
|
||||
- **密码**: `aiot$Aiot123`
|
||||
- **数据库**: `xlxumudata`
|
||||
#### 2.2.2 Node.js技术栈(辅助)
|
||||
- **运行环境**: Node.js 16.x
|
||||
- **Web框架**: Express.js
|
||||
- **数据库**: MySQL 8.0
|
||||
- **ORM**: Sequelize
|
||||
- **构建工具**: NPM/Yarn
|
||||
|
||||
#### 2.3.2 生产环境
|
||||
- **主机**: `129.211.213.226`
|
||||
- **端口**: `9527`(端口号)
|
||||
- **用户名**: `root`
|
||||
- **密码**: `aiotAiot123!`
|
||||
- **数据库**: `xlxumudata`
|
||||
|
||||
### 2.4 安全架构
|
||||
- **身份认证**: JWT (JSON Web Tokens)
|
||||
- **权限管理**: 基于角色的访问控制 (RBAC)
|
||||
- **数据传输**: HTTPS 加密传输
|
||||
- **API防护**: 接口限流、参数校验、防SQL注入等
|
||||
- **密码安全**: BCrypt加密存储
|
||||
- **操作审计**: 用户操作日志记录和审计
|
||||
|
||||
### 2.5 数据架构
|
||||
- **实时数据采集**: IoT设备数据接入
|
||||
- **数据处理**: ETL数据处理流程
|
||||
- **数据存储**: 分层数据存储(操作数据、历史数据、统计数据)
|
||||
- **大数据分析**: 数据分析引擎
|
||||
- **智能预警**: 基于规则的预警系统
|
||||
- **可视化展示**: 图表化数据展示平台
|
||||
### 2.3 基础设施
|
||||
- **容器化**: Docker
|
||||
- **容器编排**: Kubernetes
|
||||
- **反向代理**: Nginx
|
||||
- **监控**: Prometheus + Grafana
|
||||
- **日志**: ELK Stack (Elasticsearch, Logstash, Kibana)
|
||||
- **CI/CD**: Jenkins
|
||||
|
||||
## 3. 系统架构图
|
||||
|
||||
为了更直观地展示系统架构,我们提供了一个可视化的系统架构图:
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "客户端层"
|
||||
A[Web浏览器] --> B[管理后台 admin-system]
|
||||
C[Web浏览器] --> D[用户端 frontend]
|
||||
E[微信客户端] --> F[微信小程序 miniprogram]
|
||||
end
|
||||
|
||||

|
||||
subgraph "网关层"
|
||||
G[API网关 gateway]
|
||||
end
|
||||
|
||||
图中展示了以下主要层次和组件:
|
||||
subgraph "服务注册与配置中心"
|
||||
H[Eureka注册中心 registry]
|
||||
I[Config配置中心 config-server]
|
||||
end
|
||||
|
||||
1. **用户接入层**:包括官网首页、专业管理系统和微信小程序矩阵
|
||||
2. **API服务层**:基于Node.js的各个业务模块API服务
|
||||
3. **数据处理与存储层**:包括关系数据库、缓存系统、消息队列、文件存储和日志存储
|
||||
4. **数据分析与展示层**:包含大数据分析引擎、智能预警系统、可视化平台和实时数据推送
|
||||
5. **监控与日志层**:应用性能监控、服务器资源监控、日志收集与分析以及异常告警
|
||||
6. **部署架构层**:容器化部署、负载均衡、自动化部署和容灾备份
|
||||
subgraph "核心业务服务层(Java)"
|
||||
J[养殖管理服务<br/>farming-service:8081]
|
||||
K[用户中心服务<br/>user-center-service:8082]
|
||||
L[交易服务<br/>trade-service:8083]
|
||||
M[金融服务<br/>finance-service:8084]
|
||||
N[数据平台服务<br/>data-platform-service:8085]
|
||||
O[政务服务<br/>government-service:8086]
|
||||
P[大屏服务<br/>dashboard-service:8087]
|
||||
Q[商城服务<br/>mall-service:8088]
|
||||
end
|
||||
|
||||
此外,图中还展示了各组件之间的连接关系和数据流向。
|
||||
subgraph "辅助业务服务层(Node.js)"
|
||||
R[AI能力服务<br/>ai-service:3001]
|
||||
S[部分遗留服务<br/>legacy-service:3002]
|
||||
end
|
||||
|
||||
## 4. 前端系统架构
|
||||
subgraph "数据存储层"
|
||||
T[MySQL主数据库]
|
||||
U[Redis缓存]
|
||||
V[RabbitMQ消息队列]
|
||||
end
|
||||
|
||||
### 4.1 官网首页系统
|
||||
- 纯HTML5、CSS3、JavaScript实现
|
||||
- 响应式设计,适配多种设备
|
||||
- 突出锡林郭勒盟地域元素和蒙古族文化特色
|
||||
- 绿色草原主题风格
|
||||
- 集成Chart.js实现数据可视化展示
|
||||
- 通过官网API获取新闻资讯和统计数据
|
||||
subgraph "基础设施层"
|
||||
W[Docker容器]
|
||||
X[Kubernetes集群]
|
||||
Y[Nginx反向代理]
|
||||
end
|
||||
|
||||
### 4.2 专业管理系统
|
||||
B --> G
|
||||
D --> G
|
||||
F --> G
|
||||
|
||||
#### 4.2.1 养殖管理系统
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用Ant Design Vue组件库
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
G --> H
|
||||
G --> J
|
||||
G --> K
|
||||
G --> L
|
||||
G --> M
|
||||
G --> N
|
||||
G --> O
|
||||
G --> P
|
||||
G --> Q
|
||||
G --> R
|
||||
G --> S
|
||||
|
||||
##### 功能模块
|
||||
1. 牛只档案管理
|
||||
2. 饲养记录管理
|
||||
3. 繁殖管理
|
||||
4. 环境监测数据展示
|
||||
5. 健康监测管理
|
||||
6. 生产计划制定和执行跟踪
|
||||
J --> T
|
||||
K --> T
|
||||
L --> T
|
||||
M --> T
|
||||
N --> T
|
||||
O --> T
|
||||
P --> T
|
||||
Q --> T
|
||||
R --> T
|
||||
S --> T
|
||||
|
||||
#### 4.2.2 银行监管系统
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用Ant Design Vue组件库
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
J --> U
|
||||
K --> U
|
||||
L --> U
|
||||
M --> U
|
||||
N --> U
|
||||
O --> U
|
||||
P --> U
|
||||
Q --> U
|
||||
R --> U
|
||||
S --> U
|
||||
|
||||
##### 功能模块
|
||||
1. 贷款申请和审批流程管理
|
||||
2. 质押物(牛只)状态监控
|
||||
3. 还款计划跟踪
|
||||
4. 风险评估数据展示
|
||||
5. 财务报表生成
|
||||
6. 风控管理
|
||||
J --> V
|
||||
K --> V
|
||||
L --> V
|
||||
M --> V
|
||||
N --> V
|
||||
O --> V
|
||||
P --> V
|
||||
Q --> V
|
||||
R --> V
|
||||
S --> V
|
||||
|
||||
#### 4.2.3 保险监管系统
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用Ant Design Vue组件库
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
H --> W
|
||||
I --> W
|
||||
J --> W
|
||||
K --> W
|
||||
L --> W
|
||||
M --> W
|
||||
N --> W
|
||||
O --> W
|
||||
P --> W
|
||||
Q --> W
|
||||
R --> W
|
||||
S --> W
|
||||
T --> W
|
||||
U --> W
|
||||
V --> W
|
||||
|
||||
##### 功能模块
|
||||
1. 保险投保管理
|
||||
2. 理赔申请和处理流程
|
||||
3. 风险评估和预警
|
||||
4. 保险记录查询
|
||||
5. 数据统计分析
|
||||
|
||||
#### 4.2.4 政府监管平台
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用Ant Design Vue组件库
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
|
||||
##### 功能模块
|
||||
1. 产业数据总览
|
||||
2. 各类监管数据汇总
|
||||
3. 政策发布和通知
|
||||
4. 合规性检查
|
||||
5. 统计报表生成
|
||||
6. 用户管理(集中式用户权限管理)
|
||||
7. 系统配置管理
|
||||
|
||||
#### 4.2.5 活牛交易系统
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用Ant Design Vue组件库
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
|
||||
##### 功能模块
|
||||
1. 牛只信息发布和展示
|
||||
2. 在线交易撮合
|
||||
3. 合同管理
|
||||
4. 支付流程管理
|
||||
5. 交易记录查询
|
||||
6. 商户管理
|
||||
7. 行情管理
|
||||
|
||||
#### 4.2.6 商城管理系统
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用Ant Design Vue组件库
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
|
||||
##### 功能模块
|
||||
1. 商品信息管理
|
||||
2. 库存管理
|
||||
3. 订单处理
|
||||
4. 物流跟踪
|
||||
5. 售后服务管理
|
||||
6. 营销管理
|
||||
|
||||
#### 4.2.7 大屏可视化系统
|
||||
- 基于Vue.js 3 Composition API
|
||||
- 使用ECharts和自定义可视化组件
|
||||
- 状态管理采用Pinia
|
||||
- TypeScript增强代码可维护性
|
||||
- WebSocket实现实时数据推送
|
||||
|
||||
##### 功能模块
|
||||
1. 产业概览
|
||||
2. 养殖监控
|
||||
3. 金融服务
|
||||
4. 交易统计
|
||||
5. 运输跟踪
|
||||
6. 风险预警
|
||||
7. 生态指标
|
||||
8. 政府监管
|
||||
|
||||
### 4.3 微信小程序矩阵
|
||||
- 使用微信小程序原生开发框架
|
||||
- 跨平台支持采用uni-app
|
||||
- 包含8个专门的小程序应用
|
||||
|
||||
#### 4.3.1 牛肉商城小程序(消费者端)
|
||||
- 商品浏览和搜索
|
||||
- 在线下单和支付
|
||||
- 订单查询和跟踪
|
||||
- 售后服务申请
|
||||
- **认养功能**:用户可以认养特定牛只,跟踪其成长过程
|
||||
|
||||
#### 4.3.2 养殖管理小程序(牧民端)
|
||||
- 移动端牛只档案查看
|
||||
- 饲养记录录入
|
||||
- 健康状况上报
|
||||
- 通知消息接收
|
||||
- 数据统计查看
|
||||
|
||||
#### 4.3.3 银行监管小程序(银行端)
|
||||
- 移动端贷款审批
|
||||
- 质押物状态查看
|
||||
- 风险数据监控
|
||||
- 移动办公支持
|
||||
|
||||
#### 4.3.4 保险监管小程序(保险端)
|
||||
- 移动端保险处理
|
||||
- 理赔流程管理
|
||||
- 风险评估查看
|
||||
- 移动查勘支持
|
||||
|
||||
#### 4.3.5 活牛交易小程序(交易员端)
|
||||
- 活牛信息发布
|
||||
- 在线交易撮合
|
||||
- 合同查看和管理
|
||||
- 交易记录查询
|
||||
- 支付状态跟踪
|
||||
|
||||
#### 4.3.6 政府监管小程序(监管人员端)
|
||||
- 防疫任务执行
|
||||
- 补贴申请审核
|
||||
- 政策信息查看
|
||||
- 监管数据上报
|
||||
|
||||
#### 4.3.7 数据中台小程序(数据人员端)
|
||||
- 数据查询和导出
|
||||
- 统计报表查看
|
||||
- 数据服务申请
|
||||
|
||||
#### 4.3.8 AI能力小程序(养殖户/兽医端)
|
||||
- 牛只体况评估
|
||||
- 饲料配方推荐
|
||||
- 智能诊断辅助
|
||||
|
||||
## 5. 后端系统架构
|
||||
|
||||
### 5.1 API服务层
|
||||
- 基于Node.js和Express.js构建
|
||||
- 使用TypeScript增强代码健壮性
|
||||
- RESTful API设计风格
|
||||
- JWT身份认证机制
|
||||
- 微服务架构设计(按业务模块划分)
|
||||
|
||||
#### 5.1.1 养殖管理API (`/api/v1/farming`)
|
||||
- 牛只档案管理
|
||||
- 饲喂记录
|
||||
- 防疫管理
|
||||
- 繁殖管理
|
||||
|
||||
#### 5.1.2 金融服务API (`/api/v1/finance`)
|
||||
- 贷款申请
|
||||
- 保险购买
|
||||
- 理赔处理
|
||||
- 贷款审批
|
||||
|
||||
#### 5.1.3 政府监管API (`/api/v1/gov`)
|
||||
- 防疫任务下发
|
||||
- 补贴发放
|
||||
- 检疫监管
|
||||
- 任务状态跟踪
|
||||
|
||||
#### 5.1.4 交易管理API (`/api/v1/trades`)
|
||||
- 商品发布/下架
|
||||
- 订单创建/支付
|
||||
- 物流跟踪
|
||||
- 订单状态查询
|
||||
|
||||
#### 5.1.5 商城管理API (`/api/v1/mall`)
|
||||
- 商品管理
|
||||
- 订单处理
|
||||
- 库存管理
|
||||
- 用户评价
|
||||
|
||||
#### 5.1.6 数据中台API (`/api/v1/data`)
|
||||
- 数据血缘追踪
|
||||
- 接口调用分析
|
||||
- 数据质量监控
|
||||
|
||||
#### 5.1.7 AI能力API (`/api/v1/ai`)
|
||||
- 牛只体况评估
|
||||
- 饲料配方推荐
|
||||
- 智能诊断辅助
|
||||
|
||||
#### 5.1.8 用户中心API (`/api/v1/users`)
|
||||
- 用户注册/登录/注销
|
||||
- 个人信息管理
|
||||
- 权限控制
|
||||
|
||||
#### 5.1.9 官网API (`/api/v1/website`)
|
||||
- 新闻资讯管理
|
||||
- 平台数据展示
|
||||
- 用户留言处理
|
||||
- 平台信息配置
|
||||
|
||||
#### 5.1.10 大屏可视化API (`/api/v1/dashboard`)
|
||||
- 实时数据展示(支持 WebSocket)
|
||||
- 历史数据查询(支持分页和排序)
|
||||
- 数据可视化配置(增删改查)
|
||||
- 告警信息推送(订阅/取消订阅)
|
||||
- 数据导出(CSV/JSON 格式)
|
||||
|
||||
### 5.2 数据存储层
|
||||
- 主数据库:MySQL关系型数据库
|
||||
- 缓存系统:Redis(用于会话缓存、数据缓存)
|
||||
- 消息队列:RabbitMQ(用于异步任务处理)
|
||||
- 文件存储:腾讯云对象存储服务
|
||||
- 日志存储:Elasticsearch(用于日志分析)
|
||||
|
||||
### 5.3 安全架构
|
||||
- 基于JWT的无状态认证
|
||||
- RBAC角色权限管理系统(集中式用户管理)
|
||||
- HTTPS加密传输
|
||||
- API接口安全防护(限流、防注入等)
|
||||
- 数据加密存储(BCrypt等)
|
||||
- 操作日志审计
|
||||
|
||||
### 5.4 数据分析层
|
||||
- 实时数据采集系统(IoT设备数据、用户行为数据)
|
||||
- 大数据分析引擎
|
||||
- 智能预警系统
|
||||
- 数据可视化展示平台
|
||||
|
||||
## 6. 项目结构
|
||||
|
||||
```
|
||||
.
|
||||
├── admin-system/ # 管理系统
|
||||
│ ├── dashboard/ # 数据大屏
|
||||
│ ├── official-website/ # 官网
|
||||
│ ├── farming-management/ # 养殖管理系统
|
||||
│ ├── bank-supervision/ # 银行监管系统
|
||||
│ ├── insurance-supervision/ # 保险监管系统
|
||||
│ ├── government-platform/ # 政府监管平台
|
||||
│ ├── cattle-trading/ # 活牛交易系统
|
||||
│ └── mall-management/ # 商城管理系统
|
||||
├── mini_program/ # 小程序集合
|
||||
│ ├── farming-manager/ # 养殖管理小程序
|
||||
│ ├── beef-mall/ # 牛肉商城小程序
|
||||
│ ├── bank-supervision/ # 银行监管小程序
|
||||
│ ├── insurance-supervision/ # 保险监管小程序
|
||||
│ ├── cattle-trading/ # 活牛交易小程序
|
||||
│ └── government-supervision/ # 政府监管小程序
|
||||
├── website/ # 官方网站
|
||||
├── backend-java/ # 后端项目 (Java微服务架构)
|
||||
│ ├── api/ # API网关模块
|
||||
│ ├── gateway/ # Spring Cloud Gateway网关服务
|
||||
│ ├── registry/ # Eureka服务注册中心
|
||||
│ ├── config-server/ # Spring Cloud配置中心
|
||||
│ ├── services/ # 微服务模块
|
||||
│ │ ├── farming-service/ # 养殖管理服务
|
||||
│ │ ├── finance-service/ # 金融服务
|
||||
│ │ ├── government-service/ # 政府监管服务
|
||||
│ │ ├── trade-service/ # 交易管理服务
|
||||
│ │ ├── mall-service/ # 商城管理服务
|
||||
│ │ ├── data-platform-service/ # 数据中台服务
|
||||
│ │ ├── ai-service/ # AI能力服务
|
||||
│ │ └── user-center-service/ # 用户中心服务
|
||||
│ ├── common/ # 公共模块
|
||||
│ ├── docs/ # 后端文档
|
||||
│ ├── scripts/ # 后端脚本
|
||||
│ └── pom.xml # Maven父项目配置文件
|
||||
├── docs/ # 文档
|
||||
└── deployment/ # 部署相关配置
|
||||
W --> X
|
||||
X --> Y
|
||||
```
|
||||
|
||||
## 7. 用户权限管理架构
|
||||
## 4. 前端架构
|
||||
|
||||
### 7.1 集中式用户管理
|
||||
- 所有用户信息统一在政府监管平台进行管理
|
||||
- 各子系统仅负责登录验证和部分权限校验
|
||||
- 实现统一的RBAC权限模型
|
||||
- 通过用户中心API进行统一认证和授权
|
||||
### 4.1 管理后台 (admin-system)
|
||||
- 基于Vue 3和Element Plus构建
|
||||
- 采用组件化开发模式
|
||||
- 使用Vue Router管理路由
|
||||
- 使用Pinia进行状态管理
|
||||
- 通过Axios与后端API通信
|
||||
|
||||
### 7.2 权限体系
|
||||
- 基于角色的访问控制(RBAC)
|
||||
- 支持多角色分配
|
||||
- 细粒度权限控制(菜单权限、操作权限、数据权限)
|
||||
- 权限继承机制
|
||||
### 4.2 用户端 (frontend)
|
||||
- 基于Nuxt 3构建,支持SSR
|
||||
- 采用模块化架构设计
|
||||
- 使用Vue Router管理路由
|
||||
- 使用Vuex进行状态管理
|
||||
- 通过Axios与后端API通信
|
||||
|
||||
### 7.3 用户角色
|
||||
1. 超级管理员
|
||||
2. 政府监管员
|
||||
3. 银行信贷员
|
||||
4. 保险专员
|
||||
5. 交易管理员
|
||||
6. 商城管理员
|
||||
7. 养殖户
|
||||
8. 普通用户
|
||||
9. 数据分析师
|
||||
10. 系统审计员
|
||||
### 4.3 微信小程序 (miniprogram)
|
||||
- 基于微信小程序原生开发
|
||||
- 采用页面+组件的结构
|
||||
- 使用微信提供的API和组件
|
||||
- 通过wx.request与后端API通信
|
||||
|
||||
## 8. 大屏可视化系统架构
|
||||
## 5. 后端架构
|
||||
|
||||
### 8.1 系统概述
|
||||
大屏可视化系统是本项目的重要组成部分,主要用于展示锡林郭勒盟智慧养殖产业的整体数据、实时监控信息和分析结果。通过直观的图表和数据可视化方式,为管理者提供全面的产业洞察。
|
||||
### 5.1 微服务架构
|
||||
系统采用微服务架构设计,将业务功能拆分为独立的服务:
|
||||
|
||||
### 8.2 技术实现
|
||||
- **前端框架**: Vue.js 3 + ECharts + 自定义可视化组件
|
||||
- **可视化库**: Apache ECharts + D3.js
|
||||
- **响应式设计**: 支持多种大屏比例(16:9, 4:3等)
|
||||
- **实时数据**: WebSocket实时数据推送
|
||||
- **性能优化**: 虚拟滚动、数据分页等技术
|
||||
#### 5.1.1 Java微服务(主要)
|
||||
1. **养殖管理服务 (farming-service:8081)**
|
||||
- 功能:养殖场管理、牲畜档案、饲养记录等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
### 8.3 功能模块
|
||||
1. **产业概览**: 展示整体产业规模、产值、增长率等关键指标
|
||||
2. **养殖监控**: 实时展示各牧场的养殖情况、环境数据
|
||||
3. **金融服务**: 展示贷款、保险等金融服务数据
|
||||
4. **交易统计**: 牛只交易量、价格趋势、区域分布等数据
|
||||
5. **运输跟踪**: 牛只运输实时状态和路径展示
|
||||
6. **风险预警**: 风险事件展示和预警信息推送
|
||||
7. **生态指标**: 环保数据、可持续发展指标展示
|
||||
8. **政府监管**: 展示政府监管相关数据和政策执行效果
|
||||
2. **用户中心服务 (user-center-service:8082)**
|
||||
- 功能:用户管理、权限控制、认证授权等
|
||||
- 技术:Spring Boot, Spring Security, JWT
|
||||
|
||||
### 8.4 设计特色
|
||||
- 融入锡林郭勒盟草原绿色主题
|
||||
- 采用蒙古族文化元素的UI设计
|
||||
- 支持多维度数据钻取和交互
|
||||
- 通过大屏可视化API获取实时和历史数据
|
||||
3. **交易服务 (trade-service:8083)**
|
||||
- 功能:活牛交易、订单管理、支付处理等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
## 9. 系统集成架构
|
||||
4. **金融服务 (finance-service:8084)**
|
||||
- 功能:贷款申请、保险购买、金融产品等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
### 9.1 外部系统集成
|
||||
1. 银行系统对接
|
||||
2. 政府监管平台对接
|
||||
3. 第三方系统集成(LDAP/AD、OAuth2.0等)
|
||||
4. 物联网设备集成(MQTT/CoAP协议)
|
||||
5. 云服务集成(腾讯云COS、短信服务等)
|
||||
5. **数据平台服务 (data-platform-service:8085)**
|
||||
- 功能:数据统计、报表生成、数据分析等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
### 9.2 数据交换机制
|
||||
- RESTful API接口
|
||||
- 消息队列异步处理
|
||||
- 文件传输
|
||||
- 数据库同步
|
||||
6. **政务服务 (government-service:8086)**
|
||||
- 功能:政策发布、监管上报、审批流程等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
## 10. 性能优化策略
|
||||
7. **大屏服务 (dashboard-service:8087)**
|
||||
- 功能:数据可视化、实时监控、大屏展示等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
### 10.1 前端优化
|
||||
- 代码分割和按需加载
|
||||
- 图片懒加载和压缩
|
||||
- CDN加速静态资源
|
||||
- 浏览器缓存策略
|
||||
- 虚拟滚动处理大数据量展示
|
||||
- CDN加速静态资源
|
||||
- 浏览器缓存策略
|
||||
- 虚拟滚动处理大数据量展示
|
||||
8. **商城服务 (mall-service:8088)**
|
||||
- 功能:商品管理、购物车、订单处理等
|
||||
- 技术:Spring Boot, Spring Data JPA
|
||||
|
||||
### 10.2 后端优化
|
||||
- 数据库索引优化
|
||||
- API响应缓存(Redis)
|
||||
- 数据库连接池
|
||||
- 负载均衡部署
|
||||
- 异步任务处理(RabbitMQ)
|
||||
#### 5.1.2 Node.js服务(辅助)
|
||||
1. **AI能力服务 (ai-service:3001)**
|
||||
- 功能:图像识别、智能分析等AI相关功能
|
||||
- 技术:Node.js, Express.js
|
||||
|
||||
## 11. 系统监控与日志
|
||||
2. **遗留服务 (legacy-service:3002)**
|
||||
- 功能:部分原有系统功能的兼容
|
||||
- 技术:Node.js, Express.js
|
||||
|
||||
### 11.1 监控系统
|
||||
- 应用性能监控(APM)
|
||||
- 服务器资源监控(CPU、内存、磁盘等)
|
||||
- 数据库性能监控
|
||||
- 网络监控
|
||||
- 业务指标监控
|
||||
### 5.2 核心组件
|
||||
|
||||
### 11.2 日志系统
|
||||
- 统一日志格式
|
||||
- 日志分级管理(DEBUG、INFO、WARN、ERROR)
|
||||
- 日志收集与分析(ELK Stack)
|
||||
- 日志存储策略
|
||||
- 异常日志告警
|
||||
#### 5.2.1 API网关 (gateway)
|
||||
- 技术:Spring Cloud Gateway
|
||||
- 功能:
|
||||
- 请求路由转发
|
||||
- 负载均衡
|
||||
- 认证鉴权
|
||||
- 限流熔断
|
||||
- 日志记录
|
||||
|
||||
## 12. 部署架构
|
||||
#### 5.2.2 服务注册中心 (registry)
|
||||
- 技术:Eureka Server
|
||||
- 功能:
|
||||
- 服务注册与发现
|
||||
- 服务健康检查
|
||||
- 服务状态监控
|
||||
|
||||
### 12.1 开发环境
|
||||
- 本地开发服务器
|
||||
- 热重载功能
|
||||
- 代理配置解决跨域问题
|
||||
#### 5.2.3 配置中心 (config-server)
|
||||
- 技术:Spring Cloud Config
|
||||
- 功能:
|
||||
- 集中化配置管理
|
||||
- 配置动态刷新
|
||||
- 环境隔离配置
|
||||
|
||||
### 12.2 生产环境
|
||||
- Nginx反向代理服务器
|
||||
- 负载均衡配置
|
||||
- SSL证书配置
|
||||
- 日志收集和监控系统
|
||||
- 容器化部署(Docker)
|
||||
- 自动化部署(CI/CD)
|
||||
## 6. 数据架构
|
||||
|
||||
## 13. 容灾与备份策略
|
||||
### 6.1 数据库设计
|
||||
- **主数据库**: MySQL 8.0
|
||||
- **读写分离**: 主从复制
|
||||
- **分库分表**: 根据业务模块分库
|
||||
- **索引优化**: 合理设计索引提升查询性能
|
||||
|
||||
### 13.1 数据备份
|
||||
- 定时全量备份
|
||||
- 增量备份机制
|
||||
- 备份数据异地存储
|
||||
- 备份恢复演练
|
||||
### 6.2 缓存设计
|
||||
- **缓存技术**: Redis
|
||||
- **缓存策略**:
|
||||
- 热点数据缓存
|
||||
- 会话缓存
|
||||
- 分布式锁
|
||||
- **缓存更新**: 通过消息队列实现缓存同步
|
||||
|
||||
### 13.2 系统容灾
|
||||
- 多节点部署
|
||||
- 故障自动切换
|
||||
- 数据同步机制
|
||||
- 灾难恢复预案
|
||||
### 6.3 消息队列
|
||||
- **消息中间件**: RabbitMQ
|
||||
- **应用场景**:
|
||||
- 异步处理
|
||||
- 服务解耦
|
||||
- 流量削峰
|
||||
- 日志收集
|
||||
|
||||
## 7. 安全架构
|
||||
|
||||
### 7.1 认证授权
|
||||
- **认证方式**: JWT Token
|
||||
- **授权机制**: RBAC权限模型
|
||||
- **安全传输**: HTTPS加密
|
||||
- **密码安全**: BCrypt加密存储
|
||||
|
||||
### 7.2 数据安全
|
||||
- **数据传输**: SSL/TLS加密
|
||||
- **数据存储**: 敏感信息加密
|
||||
- **访问控制**: 基于角色的访问控制
|
||||
- **审计日志**: 关键操作日志记录
|
||||
|
||||
## 8. 部署架构
|
||||
|
||||
### 8.1 容器化部署
|
||||
- **容器技术**: Docker
|
||||
- **镜像管理**: Harbor私有镜像仓库
|
||||
- **容器编排**: Kubernetes
|
||||
- **服务发现**: Kubernetes Service
|
||||
|
||||
### 8.2 负载均衡
|
||||
- **反向代理**: Nginx
|
||||
- **负载策略**: 轮询、权重、IP哈希
|
||||
- **健康检查**: 定期检查服务状态
|
||||
- **SSL终止**: Nginx处理SSL加密解密
|
||||
|
||||
### 8.3 监控告警
|
||||
- **指标监控**: Prometheus
|
||||
- **可视化**: Grafana
|
||||
- **日志收集**: ELK Stack
|
||||
- **告警机制**: 邮件、短信、微信通知
|
||||
|
||||
## 9. 性能优化策略
|
||||
|
||||
### 9.1 前端优化
|
||||
- **资源压缩**: JS/CSS压缩合并
|
||||
- **图片优化**: WebP格式、懒加载
|
||||
- **缓存策略**: HTTP缓存、浏览器缓存
|
||||
- **代码分割**: 路由懒加载、组件懒加载
|
||||
|
||||
### 9.2 后端优化
|
||||
- **数据库优化**: 索引优化、查询优化
|
||||
- **缓存优化**: 多级缓存、缓存预热
|
||||
- **接口优化**: 接口合并、数据批量处理
|
||||
- **异步处理**: 消息队列异步处理耗时操作
|
||||
|
||||
### 9.3 网络优化
|
||||
- **CDN加速**: 静态资源CDN分发
|
||||
- **压缩传输**: Gzip压缩
|
||||
- **连接复用**: HTTP/2协议
|
||||
- **边缘计算**: 靠近用户的边缘节点处理
|
||||
|
||||
## 10. 扩展性设计
|
||||
|
||||
### 10.1 水平扩展
|
||||
- **服务拆分**: 微服务架构支持独立扩展
|
||||
- **数据库扩展**: 读写分离、分库分表
|
||||
- **缓存扩展**: Redis集群
|
||||
- **消息队列扩展**: RabbitMQ集群
|
||||
|
||||
### 10.2 弹性伸缩
|
||||
- **自动扩缩容**: Kubernetes HPA
|
||||
- **资源监控**: 实时监控资源使用情况
|
||||
- **负载均衡**: 动态调整流量分配
|
||||
- **故障自愈**: 自动重启失败服务
|
||||
|
||||
## 11. 高可用设计
|
||||
|
||||
### 11.1 服务高可用
|
||||
- **多实例部署**: 关键服务多实例运行
|
||||
- **故障转移**: 服务故障自动切换
|
||||
- **健康检查**: 定期检查服务状态
|
||||
- **超时重试**: 网络异常自动重试
|
||||
|
||||
### 11.2 数据高可用
|
||||
- **数据备份**: 定期备份重要数据
|
||||
- **主从复制**: 数据库主从同步
|
||||
- **灾难恢复**: 制定数据恢复预案
|
||||
- **一致性保证**: 分布式事务处理
|
||||
|
||||
## 12. 总结
|
||||
|
||||
本系统采用现代化的微服务架构设计,通过合理的技术选型和架构规划,能够满足畜牧管理系统的业务需求,具备良好的可扩展性、可维护性和高可用性。Java技术栈作为主要后端技术,Node.js作为辅助技术,能够充分发挥各自优势,构建一个稳定、高效的畜牧管理系统。
|
||||
@@ -13,7 +13,8 @@
|
||||
- **微信小程序矩阵**: 微信小程序原生开发 + uni-app
|
||||
|
||||
### 2.2 后端技术栈
|
||||
- **API服务**: Node.js + Express.js + RESTful API
|
||||
- **主要后端技术栈**: Java 8+ + Spring Boot + Spring Cloud
|
||||
- **辅助后端技术栈**: Node.js + Express.js + RESTful API
|
||||
- **数据库**: MySQL
|
||||
- **缓存**: Redis(用于会话管理和高频数据缓存)
|
||||
- **消息队列**: RabbitMQ(用于异步任务处理)
|
||||
@@ -21,52 +22,88 @@
|
||||
- **安全**: JWT认证 + 数据加密
|
||||
- **文件存储**: 腾讯云存储
|
||||
|
||||
### 2.3 开发优先级
|
||||
### 2.3 微服务架构规划
|
||||
|
||||
#### 核心业务服务(Java)
|
||||
| 服务名称 | 端口 | 功能描述 |
|
||||
|---------|------|----------|
|
||||
| farming-service | 8081 | 养殖管理服务 |
|
||||
| user-center-service | 8082 | 用户中心服务 |
|
||||
| finance-service | 8083 | 金融服务服务 |
|
||||
| government-service | 8084 | 政府监管服务 |
|
||||
| trade-service | 8085 | 交易服务 |
|
||||
| mall-service | 8086 | 商城服务 |
|
||||
| data-platform-service | 8087 | 数据平台服务 |
|
||||
| ai-service | 8088 | AI能力服务 |
|
||||
|
||||
#### 基础设施服务(Java)
|
||||
| 服务名称 | 端口 | 功能描述 |
|
||||
|---------|------|----------|
|
||||
| gateway | 8000 | 网关服务 |
|
||||
| registry | 8761 | 服务注册中心 |
|
||||
| config-server | 8888 | 配置服务器 |
|
||||
|
||||
#### 辅助服务(Node.js)
|
||||
| 服务名称 | 端口 | 功能描述 |
|
||||
|---------|------|----------|
|
||||
| dashboard-service | 3001 | 大屏可视化服务 |
|
||||
| website-service | 3002 | 官网服务 |
|
||||
|
||||
### 2.4 开发优先级
|
||||
1. **第一阶段(2025-09-01至2025-10-31)**: 核心功能(养殖管理、银行监管)
|
||||
2. **第二阶段(2025-11-01至2025-12-31)**: 扩展功能(保险监管、政府监管)
|
||||
3. **第三阶段(2026-01-01至2026-02-28)**: 交易和商城功能
|
||||
|
||||
### 2.4 技术风险与应对
|
||||
- **风险1**: 高并发场景下的数据库性能瓶颈
|
||||
### 2.5 技术风险与应对
|
||||
- **风险1**: 微服务间通信复杂性
|
||||
- **应对**: 使用Spring Cloud Gateway统一管理服务间通信,实施服务熔断和降级机制
|
||||
- **风险2**: 数据一致性问题
|
||||
- **应对**: 引入分布式事务解决方案(如Seata)
|
||||
- **风险3**: 高并发场景下的数据库性能瓶颈
|
||||
- **应对**: 引入读写分离和分库分表策略
|
||||
- **风险2**: 第三方服务(如微信支付)的集成稳定性
|
||||
- **风险4**: 第三方服务(如微信支付)的集成稳定性
|
||||
- **应对**: 设计降级方案和本地Mock服务
|
||||
|
||||
### 2.5 开发工具
|
||||
### 2.6 开发工具
|
||||
- VS Code (推荐IDE)
|
||||
- IntelliJ IDEA (Java开发推荐IDE)
|
||||
- Git (版本控制)
|
||||
- ESLint + Prettier (代码规范)
|
||||
- Jest/Vitest (单元测试)
|
||||
- ESLint + Prettier (前端代码规范)
|
||||
- Checkstyle (Java代码规范)
|
||||
- JUnit/TestNG (Java单元测试)
|
||||
- Jest/Vitest (前端单元测试)
|
||||
|
||||
## 3. 开发阶段规划
|
||||
|
||||
### 阶段一:项目初始化与基础架构搭建 (2周)
|
||||
### 阶段一:项目初始化与基础架构搭建 (3周)
|
||||
|
||||
#### 3.1 环境配置 (2天)
|
||||
- 搭建开发环境
|
||||
#### 3.1 环境配置 (3天)
|
||||
- 搭建Java开发环境(JDK、Maven)
|
||||
- 搭建Node.js开发环境
|
||||
- 配置代码编辑器
|
||||
- 初始化Git仓库
|
||||
- 配置ESLint和Prettier
|
||||
- 配置代码规范工具
|
||||
|
||||
#### 3.2 项目脚手架搭建 (3天)
|
||||
- 官网首页静态页面搭建
|
||||
- 6个专业管理系统Vue项目初始化(养殖管理、银行监管、保险监管、政府监管、活牛交易、商城管理)
|
||||
- 大屏可视化系统初始化
|
||||
- 微信小程序项目初始化(5个小程序)
|
||||
- 后端API服务搭建
|
||||
#### 3.2 微服务架构搭建 (5天)
|
||||
- 创建微服务基础项目结构
|
||||
- 配置服务注册中心
|
||||
- 配置配置服务器
|
||||
- 配置网关服务
|
||||
- 实现服务间通信机制
|
||||
|
||||
#### 3.3 基础设施集成 (3天)
|
||||
#### 3.3 基础设施集成 (4天)
|
||||
- 数据库设计和初始化
|
||||
- Redis缓存配置
|
||||
- 腾讯云存储服务集成
|
||||
- JWT身份认证实现
|
||||
- 基础权限管理框架
|
||||
|
||||
#### 3.4 开发规范制定 (2天)
|
||||
- 制定代码规范
|
||||
- 制定前后端代码规范
|
||||
- 确定目录结构
|
||||
- 编写开发文档
|
||||
|
||||
### 阶段二:核心功能开发 (8周)
|
||||
### 阶段二:核心功能开发 (10周)
|
||||
|
||||
#### 3.5 用户认证和权限系统 (1周)
|
||||
- 用户注册/登录功能
|
||||
@@ -110,77 +147,82 @@
|
||||
- 合同管理
|
||||
- 支付流程管理
|
||||
|
||||
### 阶段三:商城和小程序开发 (4周)
|
||||
|
||||
#### 3.12 商城管理系统 (1周)
|
||||
- 商品信息管理
|
||||
- 库存管理
|
||||
- 订单处理
|
||||
- 物流跟踪
|
||||
|
||||
#### 3.13 牛肉商城小程序(含认养功能) (1周)
|
||||
#### 3.13 数据平台服务 (1周)
|
||||
- 数据采集接口
|
||||
- 数据处理和分析
|
||||
- 报表生成
|
||||
|
||||
### 阶段三:小程序开发 (4周)
|
||||
|
||||
#### 3.14 牛肉商城小程序(含认养功能) (1周)
|
||||
- 商品浏览和搜索
|
||||
- 在线下单和支付
|
||||
- 订单查询和跟踪
|
||||
- 认养功能实现
|
||||
- 售后服务申请
|
||||
|
||||
#### 3.14 养殖管理小程序 (1周)
|
||||
#### 3.15 养殖管理小程序 (1周)
|
||||
- 移动端牛只档案查看
|
||||
- 饲养记录录入
|
||||
- 健康状况上报
|
||||
- 通知消息接收
|
||||
|
||||
#### 3.15 银行和保险监管小程序 (1周)
|
||||
#### 3.16 银行和保险监管小程序 (1周)
|
||||
- 银行监管小程序功能开发
|
||||
- 保险监管小程序功能开发
|
||||
|
||||
#### 3.16 活牛交易小程序 (1周)
|
||||
#### 3.17 活牛交易小程序 (1周)
|
||||
- 活牛信息发布
|
||||
- 在线交易撮合
|
||||
- 合同查看和管理
|
||||
|
||||
### 阶段四:数据系统和特色功能 (3周)
|
||||
|
||||
#### 3.17 数据分析系统 (1周)
|
||||
- 实时数据采集(IoT设备数据接入、用户行为数据采集)
|
||||
- 大数据分析引擎(数据清洗和预处理、统计分析模型)
|
||||
- 智能预警系统(异常数据检测、风险预警机制)
|
||||
### 阶段四:特色功能和大屏可视化 (3周)
|
||||
|
||||
#### 3.18 大屏可视化系统 (1周)
|
||||
- 数据图表展示
|
||||
- 仪表盘设计
|
||||
- 报表生成和导出
|
||||
|
||||
#### 3.19 特色功能实现 (1周)
|
||||
#### 3.19 AI能力服务 (1周)
|
||||
- 图像识别(牛只识别、健康状况识别)
|
||||
- 预测分析(市场价格预测、产犊预测)
|
||||
- 智能推荐
|
||||
|
||||
#### 3.20 特色功能实现 (1周)
|
||||
- 锡林郭勒盟地域元素融入
|
||||
- 蒙古族文化特色设计
|
||||
- 安格斯牛品牌突出展示
|
||||
|
||||
### 阶段五:系统集成与测试 (2周)
|
||||
### 阶段五:系统集成与测试 (3周)
|
||||
|
||||
#### 3.20 系统集成 (3天)
|
||||
#### 3.21 系统集成 (4天)
|
||||
- 内蒙古畜牧云对接(数据同步、接口规范)
|
||||
- 金融机构API对接(银行接口、保险接口)
|
||||
- 第三方服务集成
|
||||
|
||||
#### 3.21 测试用例编写 (3天)
|
||||
#### 3.22 测试用例编写 (4天)
|
||||
- 单元测试编写(核心功能模块单元测试覆盖率不低于80%)
|
||||
- 集成测试实现
|
||||
- E2E测试配置
|
||||
|
||||
#### 3.22 Bug修复与优化 (3天)
|
||||
#### 3.23 Bug修复与优化 (4天)
|
||||
- 功能测试与Bug修复
|
||||
- 性能调优(关键操作响应时间<2秒)
|
||||
- 用户体验优化
|
||||
|
||||
#### 3.23 部署准备 (3天)
|
||||
#### 3.24 部署准备 (3天)
|
||||
- 生产环境配置
|
||||
- 构建脚本优化
|
||||
- 部署文档编写
|
||||
- Docker配置
|
||||
|
||||
#### 3.24 项目验收与交付 (1天)
|
||||
#### 3.25 项目验收与交付 (1天)
|
||||
- 用户验收测试
|
||||
- 项目文档完善
|
||||
- 代码交接
|
||||
@@ -198,13 +240,14 @@
|
||||
|
||||
### 4.2 后端开发团队
|
||||
- 后端架构师(1名):负责后端架构设计和技术选型
|
||||
- API开发工程师(3名):负责后端API服务开发
|
||||
- Java微服务开发工程师(5名):负责Java微服务开发
|
||||
- Node.js开发工程师(2名):负责Node.js服务开发
|
||||
- 数据库工程师(1名):负责数据库设计和优化
|
||||
- 运维工程师(1名):负责部署和运维工作
|
||||
|
||||
### 4.3 数据分析团队
|
||||
- 数据分析师(1名):负责数据分析和可视化
|
||||
- 算法工程师(1名):负责智能预警系统开发
|
||||
- 算法工程师(1名):负责AI能力服务开发
|
||||
|
||||
### 4.4 测试团队
|
||||
- 测试工程师(2名):负责测试用例编写和执行
|
||||
@@ -212,9 +255,10 @@
|
||||
## 5. 质量保障
|
||||
|
||||
### 5.1 代码质量控制
|
||||
- 使用ESLint和Prettier统一代码风格
|
||||
- 使用ESLint和Prettier统一前端代码风格
|
||||
- 使用Checkstyle统一Java代码风格
|
||||
- 通过Code Review确保代码质量
|
||||
- 使用TypeScript增强代码可维护性
|
||||
- 使用TypeScript增强前端代码可维护性
|
||||
|
||||
### 5.2 测试策略
|
||||
- 单元测试:核心功能模块单元测试覆盖率不低于80%
|
||||
@@ -235,6 +279,7 @@
|
||||
- 支持Docker容器化部署
|
||||
- 支持云平台部署(腾讯云)
|
||||
- 支持负载均衡部署
|
||||
- 微服务独立部署和扩缩容
|
||||
|
||||
### 6.2 监控体系
|
||||
- 系统运行状态监控
|
||||
|
||||
@@ -12,12 +12,18 @@
|
||||
### 1.2 基础路径
|
||||
`/api/v1/farming`
|
||||
|
||||
### 1.3 权限控制
|
||||
### 1.3 技术栈
|
||||
- **后端**: Java Spring Boot + Spring Cloud (farming-service, 端口: 8081)
|
||||
- **数据库**: MySQL
|
||||
- **缓存**: Redis
|
||||
- **API文档**: Swagger
|
||||
|
||||
### 1.4 权限控制
|
||||
- 公开接口(无需认证):数据查询
|
||||
- 管理接口(需要认证):数据录入和管理
|
||||
- 系统接口(高级权限):批量操作和配置
|
||||
|
||||
### 1.4 全局错误码
|
||||
### 1.5 全局错误码
|
||||
| 状态码 | 说明 |
|
||||
|--------|--------------------|
|
||||
| 400 | 请求参数无效 |
|
||||
@@ -50,7 +56,8 @@ POST /cattles
|
||||
"id": "CATTLE001",
|
||||
"ear_tag": "NM000001",
|
||||
"created_at": "2024-01-20T10:00:00Z"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-01-20T10:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -77,7 +84,8 @@ POST /cattles/batch
|
||||
"error": "耳标号格式错误"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-01-20T10:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -104,7 +112,8 @@ POST /vaccinations
|
||||
"cattle_id": "CATTLE001",
|
||||
"vaccine_type": "口蹄疫",
|
||||
"created_at": "2024-01-20T10:30:00Z"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-01-20T10:30:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -121,7 +130,8 @@ POST /vaccinations
|
||||
- 新增: 按照API文档规范标准统一格式
|
||||
- 优化: 统一响应格式和错误处理
|
||||
- 功能: 完善养殖管理接口定义
|
||||
## 3. 版本历史
|
||||
- 新增: Java后端技术栈说明
|
||||
- 新增: timestamp字段
|
||||
|
||||
### v1.0.0 (2024-01-20)
|
||||
- 新增: 按照API文档规范标准统一格式
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# 养殖助手小程序 API 文档
|
||||
# 养殖助手小程序 API 文档 (v1.1.0)
|
||||
|
||||
## 1. 接口概述
|
||||
|
||||
@@ -10,6 +10,12 @@
|
||||
### 1.2 基础路径
|
||||
`/api/mini/farming`
|
||||
|
||||
### 1.3 后端技术栈
|
||||
- **主要后端**: Java Spring Boot + Spring Cloud (farming-service, 端口: 8081)
|
||||
- **辅助后端**: Node.js + Express.js
|
||||
- **数据库**: MySQL
|
||||
- **缓存**: Redis
|
||||
|
||||
## 2. 接口明细
|
||||
|
||||
### 2.1 添加饲喂记录
|
||||
@@ -30,4 +36,13 @@ POST /vaccinations
|
||||
|
||||
## 3. 数据规范
|
||||
- 时间字段格式: YYYY-MM-DD HH:mm:ss
|
||||
- 数量单位统一使用kg
|
||||
- 数量单位统一使用kg
|
||||
|
||||
## 4. 版本历史
|
||||
|
||||
### v1.1.0 (2024-01-20)
|
||||
- 新增: Java后端技术栈说明
|
||||
- 优化: 接口规范说明
|
||||
|
||||
### v1.0.0 (2024-01-20)
|
||||
- 新增: 基础接口定义
|
||||
@@ -1,4 +1,4 @@
|
||||
# 用户中心系统 API 文档 (v1.0.0)
|
||||
# 用户中心系统 API 文档 (v1.1.0)
|
||||
|
||||
## 1. 接口概述
|
||||
|
||||
@@ -8,14 +8,20 @@
|
||||
- 权限控制
|
||||
|
||||
### 1.2 基础路径
|
||||
`/api/v1/[系统名称]`
|
||||
`/api/v1/users`
|
||||
|
||||
### 1.3 权限控制
|
||||
### 1.3 技术栈
|
||||
- **后端**: Java Spring Boot + Spring Cloud (user-center-service, 端口: 8082)
|
||||
- **数据库**: MySQL
|
||||
- **缓存**: Redis
|
||||
- **API文档**: Swagger
|
||||
|
||||
### 1.4 权限控制
|
||||
- 公开接口(无需认证):数据查询
|
||||
- 管理接口(需要认证):数据管理
|
||||
- 系统接口(高级权限):配置管理
|
||||
|
||||
### 1.4 全局错误码
|
||||
### 1.5 全局错误码
|
||||
| 状态码 | 说明 |
|
||||
|--------|--------------------|
|
||||
| 400 | 请求参数无效 |
|
||||
@@ -23,7 +29,6 @@
|
||||
| 403 | 权限不足 |
|
||||
| 404 | 资源不存在 |
|
||||
| 500 | 服务器内部错误 |
|
||||
`/api/v1/users`
|
||||
|
||||
## 2. 接口明细
|
||||
|
||||
@@ -48,7 +53,8 @@ POST /register
|
||||
"username": "testuser",
|
||||
"phone": "13800138000",
|
||||
"created_at": "2024-01-20T10:00:00Z"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-01-20T10:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -75,7 +81,8 @@ POST /login
|
||||
"roles": ["user"]
|
||||
},
|
||||
"expires_in": 86400
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-01-20T10:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -85,7 +92,15 @@ POST /login
|
||||
| 200 | 成功 |
|
||||
| 400 | 参数校验失败 |
|
||||
| 401 | 认证失败 |
|
||||
## 3. 版本历史
|
||||
|
||||
## 4. 版本历史
|
||||
|
||||
### v1.1.0 (2024-01-20)
|
||||
- 新增: 按照API文档规范标准统一格式
|
||||
- 优化: 统一响应格式和错误处理
|
||||
- 功能: 完善用户中心接口定义
|
||||
- 新增: Java后端技术栈说明
|
||||
- 新增: timestamp字段
|
||||
|
||||
### v1.0.0 (2024-01-20)
|
||||
- 新增: 按照API文档规范标准统一格式
|
||||
|
||||
Reference in New Issue
Block a user