# 实验室管理 **Repository Path**: clamwack/lab_manage ## Basic Information - **Project Name**: 实验室管理 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-21 - **Last Updated**: 2026-03-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 实验室管理系统 (Lab Manage) 一个基于Spring Boot的实验室综合管理平台,支持实验室信息管理、设备管理、课程管理、视频监控等多种功能。 ## 系统功能 ### 用户管理 - **教师管理**:教师信息的增删改查、登录认证 - **学生管理**:学生信息管理、登录认证 - **用户管理**:系统用户管理、角色管理 - **权限控制**:基于Token的认证机制,支持多种角色 ### 实验室管理 - **实验室信息**:实验室基本信息管理 - **实验室预约**:学生在线预约实验室 - **设备管理**:实验设备登记、状态管理 ### 课程管理 - **实验课程**:课程创建、任务管理、视频同步 - **任务审核**:课程任务审核流程 - **二维码生成**:课程二维码生成 ### 视频集成 - **RTSP转HLS**:支持将RTSP流转换为HLS格式 - **海康威视集成**:支持海康威视设备的实时流和回放 - **Mediamtx集成**:专业的流媒体服务器配置 ### 辅助功能 - **公告管理**:实验室公告发布与评论 - **知识库**:实验资料文档管理 - **采购记录**:设备采购信息记录 - **维修记录**:设备维修跟踪 - **收藏管理**:用户收藏功能 - **日志系统**:登录日志、操作日志记录 ## 技术栈 - **后端框架**:Spring Boot 2.x - **ORM框架**:MyBatis-Plus - **数据库**:MySQL - **视频处理**:FFmpeg、海康威视SDK - **流媒体**:Mediamtx - **任务调度**:Spring Scheduled - **日志记录**:AOP操作日志 ## 项目结构 ``` lab_manage/ ├── backend/ # 后端项目 │ ├── src/main/java/com/ │ │ ├── annotation/ # 自定义注解 │ │ ├── aspect/ # AOP切面 │ │ ├── config/ # 配置类 │ │ ├── controller/ # 控制器 │ │ ├── dao/ # 数据访问层 │ │ ├── entity/ # 实体类 │ │ ├── interceptor/ # 拦截器 │ │ ├── service/ # 服务层 │ │ └── utils/ # 工具类 │ ├── src/main/resources/ │ │ ├── application.yml # 应用配置 │ │ └── front/ # 前端资源 │ └── lib/ # 第三方库 └── docs/ # 文档 ``` ## 快速开始 ### 环境要求 - JDK 1.8+ - MySQL 5.7+ - Maven 3.x ### 数据库配置 1. 创建数据库 `lab_manage` 2. 执行SQL脚本初始化表结构 3. 配置 `application.yml` 中的数据库连接 ### 运行项目 ```bash # 编译项目 cd backend mvn clean package # 启动服务 java -jar target/lab_manage.jar ``` ### API文档 启动服务后访问:`http://localhost:8080/swagger-ui.html` ## 主要接口 ### 认证接口 - `POST /users/login` - 用户登录 - `POST /users/register` - 用户注册 - `POST /jiaoshi/login` - 教师登录 - `POST /xuesheng/login` - 学生登录 ### 实验室管理 - `GET /shiyanshixinxi/list` - 获取实验室列表 - `POST /shiyanshixinxi/save` - 保存实验室信息 - `POST /shiyanshiyuyue/save` - 预约实验室 ### 视频接口 - `POST /video/rtspToHls` - RTSP转HLS - `POST /video/hikvisionPlaybackToHls` - 海康回放转HLS - `POST /video/deleteHlsStream` - 删除HLS流 ## 视频配置 ### Mediamtx配置 在 `application.yml` 中配置: ```yaml mediamtx_api: http://127.0.0.1:9997 mediamtx_urls: http://127.0.0.1:8889 ``` ### 海康威视配置 需要配置以下参数: - 设备IP地址 - 用户名和密码 - 通道号 ## 日志说明 系统自动记录以下日志: - **登录日志**:记录用户登录时间、IP、状态 - **操作日志**:通过 `@OperationLog` 注解自动记录关键操作 ## License 本项目仅供学习和研究使用。