# 云南智慧牛产业平台 - 总体架构文档 ## 1. 架构概述 本平台采用前后端分离的微服务/模块化单体架构,旨在构建一个覆盖肉牛产业全生命周期的数字化服务体系。平台由官网门户、管理后台、微信小程序和后端服务四大核心部分组成。 ## 2. 技术架构图 ```mermaid graph TD User[用户/企业/政府] -->|HTTPS| Gateway[Nginx 网关] subgraph "前端应用层 (Frontend)" Gateway -->|/| Website[官网门户 (Vue3 + Bootstrap5)] Gateway -->|/admin| Admin[管理后台 (Vue3 + Element Plus)] Gateway -->|/api| Backend[后端服务 API] User -->|微信| MiniProgram[微信小程序 (Uni-app)] MiniProgram -->|HTTPS| Backend end subgraph "后端服务层 (Backend)" Backend[Java Spring Boot / Node.js NestJS] Backend --> Service1[用户中心] Backend --> Service2[牛只档案] Backend --> Service3[交易中心] Backend --> Service4[金融服务] end subgraph "数据存储层 (Data)" Backend --> MySQL[(MySQL 主数据库)] Backend --> Redis[(Redis 缓存)] Backend --> OSS[(对象存储 - 图片/视频)] end ``` ## 3. 技术栈选型 ### 3.1 前端层 - **官网门户 (Website)** - **框架**: Vue 3 + Vite - **UI库**: Bootstrap 5 (响应式适配) - **图表**: ECharts 5 - **说明**: 侧重于品牌展示和信息发布,要求SEO友好和极致的响应式体验。 - **管理后台 (Admin System)** - **框架**: Vue 3 + Vite - **UI库**: Element Plus - **状态管理**: Pinia - **说明**: 侧重于复杂表单处理、数据管理和权限控制。 - **移动端/小程序 (Mini Program)** - **框架**: Uni-app (Vue 3 语法) - **说明**: 一套代码编译发布到微信小程序、H5等多端,方便养殖户和监管员现场作业。 ### 3.2 后端层 (Backend) - **开发语言**: Java (推荐) 或 Node.js - **核心框架**: Spring Boot 3 (Java) 或 NestJS (Node.js) - **ORM框架**: MyBatis-Plus / TypeORM - **API规范**: RESTful API + Swagger/OpenAPI 文档 ### 3.3 数据层 - **关系型数据库**: MySQL 8.0 (存储业务数据) - **缓存数据库**: Redis 6.0 (会话管理、热点数据) - **文件存储**: MinIO 或 阿里云 OSS (牛只照片、监控视频) ### 3.4 基础设施 & 运维 - **操作系统**: CentOS 10 - **容器化**: Docker + Docker Compose - **反向代理**: Nginx - **CI/CD**: Jenkins 或 GitLab CI (规划中) ## 4. 核心业务流程 1. **数据采集**: 养殖户通过小程序录入牛只信息(出生、防疫、称重)。 2. **数据上链**: 关键数据(如检疫证明)存证,确保不可篡改。 3. **交易撮合**: 买卖双方在平台发布需求,平台进行匹配并提供资金托管。 4. **金融授信**: 银行根据养殖户的资产数据(牛只数量、价值)进行授信放款。 5. **监管预警**: 异常移动、疫情风险自动触发预警推送给政府监管端。 ## 5. 目录结构规划 ``` / ├── website/ # 官网源代码 (Vue3 + Bootstrap) ├── admin-system/ # 管理后台源代码 (Vue3 + Element Plus) - 待初始化 ├── mini-program/ # 小程序源代码 (Uni-app) - 待初始化 ├── backend/ # 后端服务源代码 (Spring Boot) - 待初始化 ├── docs/ # 项目文档 ├── scripts/ # 运维脚本 └── README.md # 项目入口说明 ```