Skip to content

项目结构

后端

1. 核心框架

本项目后端采用Flask作为主要Web框架。Flask是一个轻量级的Python Web框架,提供了灵活性和可扩展性,非常适合构建API和Web服务。项目利用Flask的模块化特性,实现了清晰的代码组织结构和路由管理。

2. 数据访问层

2.1 数据库与ORM

  • SQLAlchemy:项目通过Flask-SQLAlchemy扩展集成了SQLAlchemy ORM框架,实现了对象关系映射
  • 数据映射模式:采用Mapper设计模式(如aircraftMapper.py, flightMapper.py等)处理数据转换,有效分离了数据访问逻辑和业务逻辑

2.2 数据库迁移

  • Alembic:用于数据库版本控制和迁移管理,确保数据库结构与应用模型同步

3. 异步任务处理

  • Celery:实现了异步任务队列,用于处理耗时操作,提高系统响应性能
  • 结合定时任务功能,能够按计划执行周期性任务

4. 数据验证与模型定义

  • Pydantic:用于数据验证、序列化和反序列化
  • 提供类型安全的数据模型,确保API接收和返回的数据符合预期格式

5. 高级数据存储

5.1 向量数据库

  • Weaviate:项目集成了Weaviate向量数据库,用于处理向量搜索和语义查询
  • 支持复杂的相似度搜索功能

5.2 缓存层

  • Redis:用作缓存系统和消息队列,与Celery协同工作提升系统性能

6. 图像处理与机器学习

  • OpenCV:提供强大的图像处理功能
  • 面部识别模块:实现了基于OpenCV的面部识别功能
  • 科学计算支持:集成NumPy和SciPy等库,用于数据处理和分析

7. 系统功能模块

7.1 权限管理

  • 基于角色的访问控制系统(RBAC)
  • 精细化的权限分配机制

7.2 审计日志

  • 完整的操作审计跟踪功能
  • 记录关键系统操作,支持合规性要求

7.3 业务领域模块

  • 航班管理:处理航班信息、调度和状态跟踪
  • 飞机管理:包括飞机信息、类型管理和参考图像
  • 检查记录:飞机检查流程和记录管理

8. 开发与测试支持

  • pytest:单元测试和集成测试框架
  • coverage:代码覆盖率分析工具,确保测试的完整性

前端

前端框架层

React 19.1.0
├── React DOM 19.1.0
├── TypeScript 5.8.3
└── @ant-design/v5-patch-for-react-19 1.0.3

构建工具链

Vite 6.3.5
├── @vitejs/plugin-react 4.4.1
├── ESLint 9.25.0
├── TypeScript ESLint 8.30.1
└── Terser 5.43.1

UI组件库

Ant Design 5.25.4
├── @lobehub/ui 2.5.6
├── Lucide React 0.513.0
└── react-nice-avatar 1.5.0

状态管理

Zustand 5.0.5
└── Immer 10.1.1

路由管理

React Router 7.6.2

3D渲染引擎

Three.js 0.177.0
├── @react-three/fiber 9.1.2
└── @react-three/drei 10.1.2

数据处理

Zod 3.25.56
├── Validator 13.15.15
├── QS 6.14.0
└── @uiw/react-json-view 2.0.0-alpha.32

项目架构说明

目录结构

src/
├── api/           # API接口层
├── components/    # 公共组件
├── pages/         # 页面组件
├── store/         # 状态管理
├── services/      # 业务服务
├── utils/         # 工具函数
├── assets/        # 静态资源
├── consts/        # 常量配置
└── publicTypes/   # 公共类型定义

发版/开发流程

开发流程

Released under the MIT License.