Skip to content

项目介绍

Hertz System 是由重庆瀚驰网络科技有限公司旗下赫兹工作室打造的智能管理与 AI 应用平台,采用前后端分离架构:

  • 后端:Hertz Server Django(Django + DRF + Channels)
  • 前端:hertz_server_diango_ui_2(Vue 3 + Ant Design Vue + Vite + Pinia)
  • AI / YOLO 子系统:集成 Ollama、YOLO 检测与训练、系统监控等能力

本页作为「总览」,帮助你从整体上理解项目结构和功能模块。更细节的前后端说明分别见:

整体架构

项目整体可以概括为三层:

  1. 前端层(Web UI):Vue3 管理端 + 检测端 + AI 端
  2. 后端服务层(Django):REST API + WebSocket + YOLO/AI 服务
  3. 基础设施层:数据库(MySQL/SQLite)、缓存(Redis)、文件与模型存储

一个典型的调用链路如下:

text
浏览器(用户)
  └─ 前端 hertz_server_diango_ui_2(Vue3)
       └─ Axios 请求后端 /api/... 接口
            └─ Django + DRF 业务处理
                 ├─ 访问数据库 / Redis
                 ├─ 调用 YOLO / AI 模块
                 └─ 通过 HertzResponse 统一返回结果

业务功能地图

  • 仪表盘:统一概览检测次数、告警数量、趋势统计及快捷入口
  • 用户 / 组织与权限:用户、部门、角色、菜单管理与权限分配
  • 文章 / 知识库管理:文章分类、内容发布、审核与版本管理
  • 通知与日志:系统通知发布、站内消息,以及操作日志审计
  • YOLO 模块:模型管理、数据集管理、训练任务、实时/离线检测与告警处理
  • 系统监控:CPU / 内存 / 磁盘 / 网络等实时监控视图
  • AI 助手:基于 Ollama 的多会话对话与知识问答
  • 知识库 / 文档中心:面向终端用户的知识文档浏览
  • 个人中心 / 消息中心:个人资料、密码修改与消息通知

🎨 前端项目结构 (hertz_server_diango_ui_2)

text
hertz_server_diango_ui_2/
├── public/                      // 静态资源目录
│   └── vite.svg                 // 应用图标
├── src/                         // 源代码目录
│   ├── api/                     // API接口定义
│   │   ├── auth.ts              // 认证相关API
│   │   ├── user.ts              // 用户管理API
│   │   ├── ai.ts                // AI助手API
│   │   ├── captcha.ts           // 验证码API
│   │   ├── dashboard.ts         // 仪表板API
│   │   ├── department.ts        // 部门管理API
│   │   ├── knowledge.ts         // 知识库API
│   │   ├── log.ts               // 日志管理API
│   │   ├── menu.ts              // 菜单管理API
│   │   ├── notice_user.ts       // 通知API
│   │   ├── password.ts          // 密码管理API
│   │   ├── role.ts              // 角色管理API
│   │   ├── System_monitor.ts    // 系统监控API
│   │   └── index.ts             // API统一导出
│   ├── components/              // 公共组件
│   │   └── HelloWorld.vue       // 示例组件
│   ├── views/                   // 页面组件
│   │   ├── Home.vue             // 首页
│   │   ├── Login.vue            // 登录页
│   │   ├── NotFound.vue         // 404页面
│   │   ├── admin_page/          // 管理员页面
│   │   ├── user_pages/          // 用户页面
│   │   └── demo/                // 演示页面
│   ├── router/                  // 路由配置
│   │   ├── index.ts             // 主路由配置
│   │   ├── admin_menu.ts        // 管理员菜单路由
│   │   ├── user_menu.ts         // 用户菜单路由
│   │   └── user_menu_ai.ts      // AI功能路由
│   ├── stores/                  // 状态管理 (Pinia)
│   │   ├── Hertz_app.ts         // 应用状态
│   │   └── Hertz_user.ts        // 用户状态
│   ├── utils/                   // 工具函数
│   │   ├── Hertz_request.ts     // HTTP请求封装
│   │   ├── Hertz_captcha.ts     // 验证码工具
│   │   ├── Hertz_env.ts         // 环境变量管理
│   │   ├── Hertz_error_handler.ts // 错误处理
│   │   ├── Hertz_permission.ts  // 权限控制
│   │   ├── Hertz_router_utils.ts // 路由工具
│   │   ├── Hertz_utils.ts       // 通用工具
│   │   └── menu_mapping.ts      // 菜单映射
│   ├── types/                   // TypeScript类型定义
│   │   ├── env.d.ts             // 环境变量类型
│   │   └── Hertz_types.ts       // 业务类型定义
│   ├── locales/                 // 国际化文件
│   │   ├── index.ts             // 国际化配置
│   │   ├── zh-CN.ts             // 中文语言包
│   │   └── en-US.ts             // 英文语言包
│   ├── styles/                  // 样式文件
│   │   ├── index.scss           // 全局样式
│   │   └── variables.scss       // 样式变量
│   ├── assets/                  // 静态资源
│   │   └── vue.svg              // Vue图标
│   ├── App.vue                  // 根组件
│   ├── main.ts                  // 应用入口
│   ├── style.css                // 全局CSS
│   └── vite-env.d.ts            // Vite类型声明
├── .vscode/                     // VSCode配置
│   └── extensions.json          // 推荐扩展
├── package.json                 // 项目依赖配置
├── package-lock.json            // 依赖锁定文件
├── vite.config.ts               // Vite构建配置
├── tsconfig.json                // TypeScript配置
├── tsconfig.app.json            // 应用TS配置
├── tsconfig.node.json           // Node.js TS配置
├── eslint.config.js             // ESLint配置
├── components.d.ts              // 组件类型声明
├── .editorconfig                // 编辑器配置
├── .env                         // 环境变量文件
├── .gitignore                   // Git忽略文件
├── index.html                   // HTML入口文件
└── README.md                    // 前端项目说明

⚙️ 技术栈说明

后端技术栈

  • Django 5.2.6: Python Web框架,提供强大的ORM和管理后台
  • Django REST Framework: 构建RESTful API的强大工具
  • Redis: 高性能缓存和会话存储
  • MySQL/SQLite: 关系型数据库支持
  • Ollama: 本地大语言模型集成
  • WebSocket: 实时通信支持

前端技术栈

  • Vue 3.5.21: 渐进式JavaScript框架,使用组合式API
  • TypeScript 5.8.3: 提供类型安全的JavaScript开发
  • Vite 7.1.6: 快速的前端构建工具
  • Pinia 3.0.3: Vue的现代状态管理库
  • Vue Router 4.5.1: Vue官方路由管理器
  • Ant Design Vue: UI 组件库
  • ECharts 6.0.0: 数据可视化图表库
  • Axios 1.12.2: HTTP客户端请求库
  • Vue I18n: 国际化支持
  • Socket.IO: 实时双向通信

模块路径对照

模块/服务目录路径API 前缀 / 入口核心能力
核心配置hertz_server_django/settings.py, urls.py全局配置、路由、ASGI/WSGI 入口
启动器start_server.pyCLI自动迁移、数据初始化、菜单同步、Daphne 启动
权限体系hertz_studio_django_auth//api/auth/用户、角色、菜单、JWT、部门
验证码hertz_studio_django_captcha//api/captcha/图形验证码生成与校验
AI 对话hertz_studio_django_ai//api/ai/Ollama 对话、历史记录
系统监控hertz_studio_django_system_monitor//api/system/主机资源、进程监控
通知公告hertz_studio_django_notice//api/notice/公告发布、用户通知
日志审计hertz_studio_django_log//api/log/操作日志记录、查询、导出
知识库hertz_studio_django_wiki//api/wiki/分类树、文章管理、发布审核
代码生成hertz_studio_django_codegen//api/codegen/CRUD 代码 & 菜单自动生成
YOLO 检测hertz_studio_django_yolo//api/yolo/ + WebSocket模型配置、告警、检测历史
Demo 演示hertz_demo//demo//ws/demo/验证码、邮件、WebSocket 示例
工具库hertz_studio_django_utils/-菜单/部门配置、加密、邮件、校验、YOLO 工具
前端工程hertz_server_diango_ui_2/npm run devVue3 管理端、权限菜单、主题系统
静态资源static//static/FFmpeg 工具、YOLO 模型权重与训练结果

模块深度解析

hertz_server_django(主配置层)

  • 关键文件:settings.pyurls.pyasgi.py
  • 注意事项:USE_REDIS_AS_DB 控制数据库配置分支,生产通常为 False + MySQL

start_server.py(自动化启动器)

  • 流程:注册应用 → 迁移 → 初始化数据 → 同步菜单 → 启动 Daphne + 热重启

hertz_studio_django_auth

  • 模型:用户、角色、菜单、部门、角色菜单映射
  • 接口:登录、注册、菜单树、角色分配、部门树

hertz_studio_django_ai

  • 能力:Ollama 模型对话、模型列表、历史、流式回复

hertz_studio_django_yolo

  • 能力:模型管理、类别/告警、图像/视频检测、告警推送、历史查询
  • 默认:初始化 YOLOv12 示例模型

更多模块

  • 验证码、通知公告、系统监控、日志、知识库、代码生成、工具库、Demo 等,详见 README 对应条目