# 系统架构文档 ## 1. 概述 本项目是一个综合性的畜牧业数字化管理平台,主要面向锡林郭勒盟地区的养殖产业,包含官网展示、后台管理、移动端小程序、大屏可视化等多个子系统。平台集成了养殖管理、金融服务(银行监管、保险监管)、政府监管、牛只交易、牛肉商城、数据分析等功能模块,旨在通过数字化手段提升整个产业链的管理效率和透明度。 ## 2. 技术栈 ### 2.1 前端技术栈 - **官网首页**: HTML5 + CSS3 + JavaScript - **后台管理系统**: Vue.js 3 + TypeScript + Ant Design Vue + Pinia - **大屏可视化系统**: Vue.js 3 + ECharts + 自定义可视化组件 - **微信小程序矩阵**: 微信小程序原生开发 + uni-app ### 2.2 后端技术栈 - **API服务**: Node.js + Express.js + TypeScript + RESTful API - **数据库**: MySQL - **缓存系统**: Redis - **消息队列**: RabbitMQ(用于异步处理) - **文件存储**: 腾讯云对象存储 - **实时通信**: WebSocket(用于大屏数据推送和实时通知) ### 2.3 数据库配置 #### 2.3.1 测试环境 - **主机**: `192.168.0.240` (MySQL主机地址) - **端口**: `3306` (MySQL端口) - **用户名**: `root` - **密码**: `aiot$Aiot123` - **数据库**: `xlxumudata` #### 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数据处理流程 - **数据存储**: 分层数据存储(操作数据、历史数据、统计数据) - **大数据分析**: 数据分析引擎 - **智能预警**: 基于规则的预警系统 - **可视化展示**: 图表化数据展示平台 ## 3. 系统架构图 ``` ┌─────────────────────────────────────────────────────────────────────────────────────────────┐ │ 用户端接入层 │ ├─────────────────┬─────────────────────────────────────────────────────────────────────────┤ │ 官网首页 │ 专业管理系统 │ │ (HTML5展示) ├─────────────────────────────────────────────────────────────────────────┤ │ │ - 养殖管理系统 (Vue.js 3 + Ant) │ │ │ - 银行监管系统 (Vue.js 3 + Ant) │ │ │ - 保险监管系统 (Vue.js 3 + Ant) │ │ │ - 政府监管平台 (Vue.js 3 + Ant) │ │ │ - 活牛交易系统 (Vue.js 3 + Ant) │ │ │ - 商城管理系统 (Vue.js 3 + Ant) │ │ │ - 大屏可视化系统 (Vue.js 3 + ECharts) │ ├─────────────────┼─────────────────────────────────────────────────────────────────────────┤ │ 微信小程序矩阵 │ │ - 牛肉商城小程序 │ │ - 养殖管理小程序 │ │ - 银行监管小程序 │ │ - 保险监管小程序 │ │ - 活牛交易小程序 │ │ - 政府监管小程序 │ │ - 数据中台小程序 │ │ - AI能力小程序 │ ├─────────────────┴─────────────────────────────────────────────────────────────────────────┤ │ API服务层 (Node.js) │ ├─────────────────────────────────────────────────────────────────────────────────────────────┤ │ 数据处理与存储层 │ ├─────────────────────────────────────────────────────────────────────────────────────────────┤ │ 关系数据库(MySQL) │ 缓存系统(Redis) │ 消息队列(RabbitMQ) │ 文件存储(腾讯云) │ ├─────────────────────────────────────────────────────────────────────────────────────────────┤ │ 数据分析与展示层 │ ├─────────────────────────────────────────────────────────────────────────────────────────────┤ │ 大数据分析引擎 │ 智能预警系统 │ 可视化平台 │ 实时数据推送 │ └─────────────────────────────────────────────────────────────────────────────────────────────┘ ``` ## 4. 前端系统架构 ### 4.1 官网首页系统 - 纯HTML5、CSS3、JavaScript实现 - 响应式设计,适配多种设备 - 突出锡林郭勒盟地域元素和蒙古族文化特色 - 绿色草原主题风格 ### 4.2 专业管理系统 #### 4.2.1 养殖管理系统 - 基于Vue.js 3 Composition API - 使用Ant Design Vue组件库 - 状态管理采用Pinia - TypeScript增强代码可维护性 ##### 功能模块 1. 牛只档案管理 2. 饲养记录管理 3. 繁殖管理 4. 环境监测数据展示 5. 健康监测管理 6. 生产计划制定和执行跟踪 #### 4.2.2 银行监管系统 - 基于Vue.js 3 Composition API - 使用Ant Design Vue组件库 - 状态管理采用Pinia - TypeScript增强代码可维护性 ##### 功能模块 1. 贷款申请和审批流程管理 2. 质押物(牛只)状态监控 3. 还款计划跟踪 4. 风险评估数据展示 5. 财务报表生成 6. 风控管理 #### 4.2.3 保险监管系统 - 基于Vue.js 3 Composition API - 使用Ant Design Vue组件库 - 状态管理采用Pinia - TypeScript增强代码可维护性 ##### 功能模块 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.2 数据存储层 - 主数据库:MySQL关系型数据库 - 缓存系统:Redis(用于会话缓存、数据缓存) - 消息队列:RabbitMQ(用于异步任务处理) - 文件存储:腾讯云对象存储服务 - 日志存储:Elasticsearch(用于日志分析) ### 5.3 安全架构 - 基于JWT的无状态认证 - RBAC角色权限管理系统(集中式用户管理) - HTTPS加密传输 - API接口安全防护(限流、防注入等) - 数据加密存储(BCrypt等) - 操作日志审计 ### 5.4 数据分析层 - 实时数据采集系统(IoT设备数据、用户行为数据) - 大数据分析引擎 - 智能预警系统 - 数据可视化展示平台 ## 6. 项目结构 ``` . ├── frontend/ # 前端项目 │ ├── website/ # 官网首页 │ ├── farming-management/ # 养殖管理系统 │ ├── bank-supervision/ # 银行监管系统 │ ├── insurance-supervision/ # 保险监管系统 │ ├── government-platform/ # 政府监管平台 │ ├── cattle-trading/ # 活牛交易系统 │ ├── mall-management/ # 商城管理系统 │ ├── dashboard/ # 大屏可视化系统 │ └── mini-programs/ # 微信小程序矩阵 │ ├── beef-mall/ # 牛肉商城小程序 │ ├── farming-manager/ # 养殖管理小程序 │ ├── bank-supervision/ # 银行监管小程序 │ ├── insurance-supervision/ # 保险监管小程序 │ ├── cattle-trading/ # 活牛交易小程序 │ ├── gov-supervision/ # 政府监管小程序 │ ├── data-platform/ # 数据中台小程序 │ └── ai-capabilities/ # AI能力小程序 ├── backend/ # 后端项目 │ ├── api/ # API服务 │ │ ├── farming/ # 养殖管理API │ │ ├── finance/ # 金融服务API │ │ ├── government/ # 政府监管API │ │ ├── trade/ # 交易管理API │ │ ├── mall/ # 商城管理API │ │ ├── data-platform/ # 数据中台API │ │ ├── ai/ # AI能力API │ │ └── user-center/ # 用户中心API │ ├── database/ # 数据库脚本 │ ├── utils/ # 工具函数 │ └── services/ # 微服务模块 ├── docs/ # 文档 └── deployment/ # 部署相关配置 ``` ## 7. 用户权限管理架构 ### 7.1 集中式用户管理 - 所有用户信息统一在政府监管平台进行管理 - 各子系统仅负责登录验证和部分权限校验 - 实现统一的RBAC权限模型 ### 7.2 权限体系 - 基于角色的访问控制(RBAC) - 支持多角色分配 - 细粒度权限控制(菜单权限、操作权限、数据权限) - 权限继承机制 ### 7.3 用户角色 1. 超级管理员 2. 政府监管员 3. 银行信贷员 4. 保险专员 5. 交易管理员 6. 商城管理员 7. 养殖户 8. 普通用户 9. 数据分析师 10. 系统审计员 ## 8. 大屏可视化系统架构 ### 8.1 系统概述 大屏可视化系统是本项目的重要组成部分,主要用于展示锡林郭勒盟安格斯牛养殖产业的整体数据、实时监控信息和分析结果。通过直观的图表和数据可视化方式,为管理者提供全面的产业洞察。 ### 8.2 技术实现 - **前端框架**: Vue.js 3 + ECharts + 自定义可视化组件 - **可视化库**: Apache ECharts + D3.js - **响应式设计**: 支持多种大屏比例(16:9, 4:3等) - **实时数据**: WebSocket实时数据推送 - **性能优化**: 虚拟滚动、数据分页等技术 ### 8.3 功能模块 1. **产业概览**: 展示整体产业规模、产值、增长率等关键指标 2. **养殖监控**: 实时展示各牧场的养殖情况、环境数据 3. **金融服务**: 展示贷款、保险等金融服务数据 4. **交易统计**: 牛只交易量、价格趋势、区域分布等数据 5. **运输跟踪**: 牛只运输实时状态和路径展示 6. **风险预警**: 风险事件展示和预警信息推送 7. **生态指标**: 环保数据、可持续发展指标展示 8. **政府监管**: 展示政府监管相关数据和政策执行效果 ### 8.4 设计特色 - 融入锡林郭勒盟草原绿色主题 - 采用蒙古族文化元素的UI设计 - 突出安格斯牛品牌形象 - 支持多维度数据钻取和交互 ## 9. 系统集成架构 ### 9.1 外部系统集成 1. 银行系统对接 2. 政府监管平台对接 3. 第三方系统集成(LDAP/AD、OAuth2.0等) 4. 物联网设备集成(MQTT/CoAP协议) 5. 云服务集成(腾讯云COS、短信服务等) ### 9.2 数据交换机制 - RESTful API接口 - 消息队列异步处理 - 文件传输 - 数据库同步 ## 10. 性能优化策略 ### 10.1 前端优化 - 代码分割和按需加载 - 图片懒加载和压缩 - CDN加速静态资源 - 浏览器缓存策略 - 虚拟滚动处理大数据量展示 ### 10.2 后端优化 - 数据库索引优化 - API响应缓存(Redis) - 数据库连接池 - 负载均衡部署 - 异步任务处理(RabbitMQ) ## 11. 部署架构 ### 11.1 开发环境 - 本地开发服务器 - 热重载功能 - 代理配置解决跨域问题 ### 11.2 生产环境 - Nginx反向代理服务器 - 负载均衡配置 - SSL证书配置 - 日志收集和监控系统 - 容器化部署(Docker) - 自动化部署(CI/CD)