01 · 模块定位
远程巡课中心
总部可在地图中定位校区和教室摄像头,打开直播或回放,完成督课记录、教学质量评分并生成整改任务。业务目标
接入存量千台级教室摄像头,支持海康威视、宇视两类已有视频平台设备,支撑地图监控、在线巡课、录像回放、督课任务、教学质量评分和课堂质检闭环。
使用终端
PC Web 地图监控、直播墙、录像回放和督课评分工作台。
验收主线
总部可在地图中定位校区和教室摄像头,打开直播或回放,完成督课记录、教学质量评分并生成整改任务。
02 · 范围边界
明确本模块负责什么、依赖什么、不负责什么
边界清晰后,原型、接口和数据库设计才能避免重复建设。模块内范围
- 摄像头台账
- 地图监控
- 视频直播墙
- 录像回放
- 督课任务
- 课堂评价
- 教学质量评分
- 异常整改
- 设备维修工单
- 设备恢复校验
- 督课评分规则版本
上游依赖
- 组织校区与账号权限
- 课程/客户/合同等主数据
- 审批流、消息模板、文件中心
- 必要的第三方接口密钥
下游输出
- 业务状态和待办
- 消息通知和审批记录
- 报表指标和数据快照
- 审计日志和接口回执
03 · 确认口径、后台配置与默认实施规则
远程巡课中心必须承接的已确认规则
本章节来自待决策与澄清清单的收口结果,已经转为本模块 PRD 的正式需求、配置项或默认实施规则。| 分类 | 事项 | 本模块落地要求 | 责任方 |
|---|---|---|---|
| 已确认口径 | 视频平台范围 | 远程巡课和督课支持海康威视、宇视两类已有视频平台;其他平台地址、账号、协议参数、门店网关、集中机房存储、录像保留 90 天循环覆盖均做后台配置。 | 产品/技术/信息化 |
| 已确认口径 | 校区地图点位与设备清单 | 校区经纬度、校区大头钉、摄像头编码、品牌、教室、平台/网关关系、在线状态、设备总数均由后台动态维护,不作为静态初始化一次性数据。 | 产品/运营/信息化 |
| 后台配置项 | 视频平台配置 | 配置 vendorCode=HIKVISION/UNIVIEW、platformCode、apiEndpoint、authConfig、storageCenter、retentionDays、gatewayCode、accessMode 和同步计划。 | 信息化/运维 |
| 后台配置项 | 校区点位与设备台账 | 配置 campusLatitude、campusLongitude、campusPinName、cameraCode、classroomId、brand、onlineStatusMapping、streamPolicy、recordSearchPolicy。 | 运营/信息化/校区 |
| 默认实施规则 | 录像并发容量 | 本阶段容量口径聚焦权限访问、播放鉴权、访问留痕、90 天留存提示和异常提示;大规模并发压测作为专项容量评估独立输出。 | 产品/技术 |
| 默认实施规则 | 接口设计说明书组织方式 | 采用单独 HTML 文件集中管理接口协议;模块 PRD 保留模块级接口摘要,避免每个模块重复写通用协议。 | 产品/研发 |
| 默认实施规则 | 数据库分区与归档策略 | 设备事件、直播互动、接口日志、视频会话、操作审计按时间分区和归档,交易主表保留业务索引和审计快照。 | DBA/后端 |
| 默认实施规则 | 接口错误码与重试中间件 | 所有外部接口和内部异步任务统一错误码、幂等键、重试次数、告警阈值和回执归档策略。 | 后端/测试/运维 |
04 · 业务流程
远程巡课中心主流程
流程用于指导原型图的页面顺序、按钮状态和异常分支。摄像头台账需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
地图监控展示区域、校区、教室点位、在线离线和异常状态
视频直播墙需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
录像回放按校区、教室、课次、班级、教师和时间检索
督课任务需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
课堂评价需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
教学质量评分需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
异常整改需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
05 · 功能清单
按子模块拆到可设计、可开发、可测试的颗粒度
每一行功能都需要在原型中体现入口、状态、按钮、字段和反馈。| 一级功能 | 二级功能 | 功能说明 | 规则/验收 |
|---|---|---|---|
| 摄像头台账 | 基础维护 | 摄像头台账支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 摄像头台账 | 业务处理 | 摄像头台账需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 摄像头台账 | 异常闭环 | 摄像头离线处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 地图监控 | 基础维护 | 地图监控支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 地图监控 | 业务处理 | 地图监控展示区域、校区、教室点位、在线离线和异常状态 | 必须联动状态、权限、消息、审批和指标 |
| 地图监控 | 异常闭环 | 直播拉流失败处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 视频直播墙 | 基础维护 | 视频直播墙支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 视频直播墙 | 业务处理 | 视频直播墙需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 视频直播墙 | 异常闭环 | 录像缺失处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 录像回放 | 基础维护 | 录像回放支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 录像回放 | 业务处理 | 录像回放按校区、教室、课次、班级、教师和时间检索 | 必须联动状态、权限、消息、审批和指标 |
| 录像回放 | 异常闭环 | 评分数据不足处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 督课任务 | 基础维护 | 督课任务支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 督课任务 | 业务处理 | 督课任务需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 督课任务 | 异常闭环 | 门店网关离线处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 课堂评价 | 基础维护 | 课堂评价支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 课堂评价 | 业务处理 | 课堂评价需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 课堂评价 | 异常闭环 | 摄像头恢复失败处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 教学质量评分 | 基础维护 | 教学质量评分支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 教学质量评分 | 业务处理 | 教学质量评分需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 教学质量评分 | 异常闭环 | 评分规则版本失效处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 异常整改 | 基础维护 | 异常整改支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 异常整改 | 业务处理 | 异常整改需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 异常整改 | 异常闭环 | 摄像头离线处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 设备维修工单 | 基础维护 | 设备维修工单支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 设备维修工单 | 业务处理 | 设备维修工单需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 设备维修工单 | 异常闭环 | 直播拉流失败处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 设备恢复校验 | 基础维护 | 设备恢复校验支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 设备恢复校验 | 业务处理 | 设备恢复校验需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 设备恢复校验 | 异常闭环 | 录像缺失处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 督课评分规则版本 | 基础维护 | 督课评分规则版本支持新增、编辑、启用/停用、查询、导入导出和操作审计。 | 编码唯一、数据范围过滤、逻辑删除和审计留痕 |
| 督课评分规则版本 | 业务处理 | 督课评分规则版本需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 督课评分规则版本 | 异常闭环 | 评分数据不足处理 | 失败原因可见、可重试、可转人工、可追溯 |
功能到数据对象/接口/表映射
| 功能域 | 承接对象 | 核心表 | 代表接口 | 状态机/状态字段 | 研发落地校验 |
|---|---|---|---|---|---|
| 摄像头台账 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/01 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 地图监控 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/02 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 视频直播墙 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/03 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 录像回放 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/04 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 督课任务 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/05 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 课堂评价 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/06 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 教学质量评分 | TeachingQualityScore | patrol_quality_score | 接口资源组 /api/v1/pat/features/07 | score_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 异常整改 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/08 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 设备维修工单 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/09 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 设备恢复校验 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/10 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 督课评分规则版本 | VideoPlatformConfig、VideoGatewayConfig、ClassroomCamera、CampusMapPoint | video_platform_config、video_gateway_config、video_classroom_camera、video_campus_map_point | 接口资源组 /api/v1/pat/features/11 | network_status、camera_status、point_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
06 · 原子级功能需求
用于研发任务拆分和测试用例追踪
需求编号可直接进入项目管理工具。| 编号 | 需求描述 | 入口页面 | 关键动作 | 输入校验 | 输出结果 | 异常处理 | 验收标准 |
|---|---|---|---|---|---|---|---|
| FR-PAT-001 | 支持一千多台存量教室摄像头批量导入、校区教室绑定和在线状态巡检 | 摄像头台账 | 导入摄像头 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 摄像头离线 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-002 | 支持海康威视、宇视两类摄像头统一纳管和品牌型号字段管理 | 地图监控 | 地图巡课 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 直播拉流失败 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-003 | 地图监控展示区域、校区、教室点位、在线离线和异常状态 | 指标异常处理 | 异常订阅、责任人处理或口径审批 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 指标延迟、责任人缺失或口径版本不一致 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-004 | 在线巡课支持单画面、多画面、轮巡、重点课堂置顶和权限控制 | 录像回放 | 检索回放 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 评分数据不足 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-005 | 录像回放按校区、教室、课次、班级、教师和时间检索 | 回放发布与访问 | 回放发布、下架、过期或权限校验 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 回放已下架、已过期或权限不足 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-006 | 督课评分需融合学生出勤、课堂参与、作业完成、测评提升、学习进度、教师点评、教师教态、课堂节奏、教学目标达成和课堂纪律 | 作业草稿箱/作业提交 | 保存草稿、恢复草稿或提交作业 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 草稿冲突、附件失败或作业已关闭 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-007 | 系统自动生成质量初评分,督课老师可复核评分,校长或总部可抽检确认 | 督课评分规则版本 | 导入摄像头 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 评分规则版本失效 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-008 | 评分结果联动教师考核、教研复盘、培训计划、优秀案例库、问题整改和校区教学质量排行 | 视频平台配置 | 地图巡课 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 摄像头离线 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-009 | 远程巡课设备离线需从告警转入维修工单,支持按摄像头、门店网关、电源、网络、平台账号分类排查,恢复后自动回测直播、回放和录像索引。 | 资产生命周期/图书进销存 | 领用、维修、责任人变更、盘点或图书出入库 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 责任人缺失、维修超期或库存不足 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-PAT-010 | 督课评分规则需支持版本管理、权重配置、生效范围、审批发布、历史追溯和教师申诉时的规则版本锁定。 | 存储策略 | 检索回放 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 录像缺失 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
07 · 关联闭环补充需求
远程巡课中心在跨模块闭环中的责任边界
本章节承接最终闭环核对清单,明确本模块需要补齐的页面、接口对象、异常兜底和验收口径。| 闭环项 | 本模块责任 | 关键场景 | 页面/功能补充 | 关联对象/接口 | 验收口径 |
|---|---|---|---|---|---|
| 设备维修工单 | 负责巡课摄像头、门店侧网关、视频平台通道异常的发现和派单 | 海康/宇视设备离线、直播断流、回放缺失、存储异常 | 地图监控、设备列表、异常详情、维修派单、处理复核 | ClassroomCamera/PatrolRecord/TeachingQualityScore、AssetLifecycle/Maintenance | 设备异常关闭前必须有处理记录、复核结果和恢复时间 |
| 督课评分规则版本 | 负责评分维度、权重、扣分项、证据类型和版本生效范围 | 不同区域、课程、教师类型采用不同评分规则或规则升级 | 评分规则配置、在线巡课评分、证据截图、整改复核、历史版本 | TeachingQualityScore、MetricSnapshot、/api/v1/patrol/quality-scores | 评分结果必须绑定规则版本、评分人、证据和复核状态 |
08 · 页面与原型设计说明
页面清单、布局要求、按钮字段和状态
原型图设计需要覆盖列表、详情、表单、弹窗、空状态、异常状态和权限状态。| 终端 | 页面 | 用户 | 页面目标 | 布局结构 | 关键按钮 | 关键字段 | 异常状态 | 原型备注 |
|---|---|---|---|---|---|---|---|---|
| PC Web | 摄像头台账 | 设备管理员/教务督导 | 维护摄像头品牌、型号、序列号、校区教室绑定和在线状态 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-摄像头台账;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web | 地图监控 | 总部/区域/校长 | 按地图、区域、校区、楼层和教室查看摄像头分布与异常 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-地图监控;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web | 视频直播墙 | 总部/教研督导 | 单画面、多画面、轮巡、重点课堂置顶和直播巡课记录 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-视频直播墙;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web | 录像回放 | 教研督导/校长 | 按校区、教室、课次、教师和时间检索录像并标记片段 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-录像回放;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web | 教学质量评分 | 教研督导/校长/总部教学管理 | 基于学生、教师、课堂过程和学习结果生成教学质量分并复核 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-教学质量评分;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| 设备/巡课运维端 | 设备维修工单 | 技术运营/校区 | 摄像头或网关离线后派单、接单、排查、恢复校验、关闭和升级 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-设备维修工单;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web | 督课评分规则版本 | 教研督导/总部教研 | 配置评分维度、权重、版本、生效范围、审批发布和历史追溯 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-督课评分规则版本;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 视频平台配置 | 督导/校长/运维 | 围绕视频接入完善视频平台配置的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-视频平台配置;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 网关配置 | 督导/校长/运维 | 围绕视频接入完善网关配置的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-网关配置;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 存储策略 | 督导/校长/运维 | 围绕视频接入完善存储策略的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-存储策略;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 校区地图 | 督导/校长/运维 | 围绕地图巡课完善校区地图的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-校区地图;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 设备详情 | 督导/校长/运维 | 围绕地图巡课完善设备详情的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-设备详情;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 直播页 | 督导/校长/运维 | 围绕地图巡课完善直播页的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-直播页;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 回放页 | 督导/校长/运维 | 围绕地图巡课完善回放页的入口、字段、状态、异常提示、处理进度和验收反馈 | PC 端采用顶部筛选、左侧列表或导航、中部主工作区、右侧详情抽屉,复杂操作进入弹窗或步骤条。 | 查询、新增、编辑、提交、导出、查看日志、导入摄像头、地图巡课 | 校区、教室、摄像头品牌、设备在线状态、直播状态、录像时间、评分规则版本、整改状态 | 空数据、无权限、加载失败、保存失败、审批驳回、批量部分失败 | 管理员端沿用统一框架,原型重点标注信息架构、表单弹窗、状态流和异常处理。 建议 Figma Frame:PAT-回放页;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 督课任务 | 督导/校长/运维 | 围绕督课评分完善督课任务的入口、字段、状态、异常提示、处理进度和验收反馈 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-督课任务;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 评分表 | 督导/校长/运维 | 围绕督课评分完善评分表的入口、字段、状态、异常提示、处理进度和验收反馈 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-评分表;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/视频大屏 | 整改复核 | 督导/校长/运维 | 围绕督课评分完善整改复核的入口、字段、状态、异常提示、处理进度和验收反馈 | 巡课页以地图/视频墙/回放检索/评分面板切换,设备异常和整改任务通过右侧抽屉闭环处理。 | 查看地图、展开校区设备、打开直播、检索回放、截图取证、提交评分、派发整改、生成维修工单 | 校区经纬度、设备品牌、设备总数、在线状态、录像时间、评分维度、证据附件、整改状态、校区、教室 | 设备离线、网关离线、直播断流、录像缺失、存储异常、评分规则未发布 | 需画校区地图大头钉、设备列表展开、海康/宇视配置、回放片段标记、评分规则版本和整改复核。 建议 Figma Frame:PAT-整改复核;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
09 · 页面到接口的前后端闭环矩阵
把原型页面、后端接口、数据对象、状态和消息审批绑定到一起
设计原型时,每个关键页面必须能解释前端展示什么、后端提交什么、状态怎么变、异常怎么处理。| 原型页面 | 关键接口 | 关联对象 | 状态流 | 审批/权限触发 | 消息/待办触达 | 原型验收要求 |
|---|---|---|---|---|---|---|
| 摄像头台账 | POST/GET /api/v1/patrol/cameras | VideoPlatformConfig | 未开始 -> 巡课中 -> 已记录 -> 待评分 -> 待整改 -> 整改中 -> 已复盘 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 巡课整改通知 -> 校长/教师/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 地图监控 | GET /api/v1/patrol/map | VideoGatewayConfig | 待派单 -> 已派单 -> 已接单 -> 排查中 -> 待恢复校验 -> 已恢复 -> 已关闭 -> 已升级 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 教学质量评分通知 -> 教师/校长/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 视频直播墙 | POST /api/v1/patrol/live-streams | ClassroomCamera | 草稿 -> 待审核 -> 已发布 -> 已生效 -> 已停用 -> 已归档 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 巡课整改通知 -> 校长/教师/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 录像回放 | GET /api/v1/patrol/records | CampusMapPoint | 未开始 -> 巡课中 -> 已记录 -> 待评分 -> 待整改 -> 整改中 -> 已复盘 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 教学质量评分通知 -> 教师/校长/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 教学质量评分 | POST /api/v1/patrol/quality-scores | PatrolRecord | 待派单 -> 已派单 -> 已接单 -> 排查中 -> 待恢复校验 -> 已恢复 -> 已关闭 -> 已升级 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 巡课整改通知 -> 校长/教师/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 设备维修工单 | POST/GET /api/v1/patrol/cameras | TeachingQualityScore | 草稿 -> 待审核 -> 已发布 -> 已生效 -> 已停用 -> 已归档 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 教学质量评分通知 -> 教师/校长/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 督课评分规则版本 | GET /api/v1/patrol/map | RectificationTask | 未开始 -> 巡课中 -> 已记录 -> 待评分 -> 待整改 -> 整改中 -> 已复盘 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 巡课整改通知 -> 校长/教师/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 视频平台配置 | POST /api/v1/patrol/live-streams | SnapshotEvidence | 待派单 -> 已派单 -> 已接单 -> 排查中 -> 待恢复校验 -> 已恢复 -> 已关闭 -> 已升级 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 教学质量评分通知 -> 教师/校长/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 网关配置 | GET /api/v1/patrol/records | VideoPlatformConfig | 草稿 -> 待审核 -> 已发布 -> 已生效 -> 已停用 -> 已归档 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 巡课整改通知 -> 校长/教师/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 存储策略 | POST /api/v1/patrol/quality-scores | VideoGatewayConfig | 未开始 -> 巡课中 -> 已记录 -> 待评分 -> 待整改 -> 整改中 -> 已复盘 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 教学质量评分通知 -> 教师/校长/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 校区地图 | POST/GET /api/v1/patrol/cameras | ClassroomCamera | 待派单 -> 已派单 -> 已接单 -> 排查中 -> 待恢复校验 -> 已恢复 -> 已关闭 -> 已升级 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 巡课整改通知 -> 校长/教师/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 设备详情 | GET /api/v1/patrol/map | CampusMapPoint | 草稿 -> 待审核 -> 已发布 -> 已生效 -> 已停用 -> 已归档 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 教学质量评分通知 -> 教师/校长/教研督导 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
10 · 原型、UI、研发、测试交付补充
把关键闭环补强为下一阶段可执行任务
本章节为正式 PRD 的交付要求,面向原型图、UI、开发、联调和测试分工。| 能力域 | 功能补充要求 | 原型交付要求 | UI 交互要求 | 研发实现要求 | 测试验收要求 |
|---|---|---|---|---|---|
| 视频接入 | 明确品牌、平台地址、鉴权参数、公网直连、网关、集中机房录像存储和 90 天循环覆盖配置。 | 视频平台配置、网关配置、存储策略 需要在原型中拆到列表、详情、表单、弹窗、空状态、失败态、无权限态和处理进度。 | UI 需清晰呈现状态标签、流程节点、主次按钮、危险操作确认、移动/平板/TV 适配和错误提示;PC 管理端遵循统一框架,仅输出信息架构和交互说明。 | 后端需提供接口幂等、权限校验、状态机、审计日志、消息/审批触发、异步补偿和跨模块数据一致性保障。 | 测试需覆盖主流程、异常流、权限流、重复提交、批量部分失败和数据一致性;新增校区或设备无需改代码,通过后台配置即可接入。 |
| 地图巡课 | 补齐地图监控、点位详情、设备列表、直播播放器、回放时间轴、录像缺失和存储异常提示。 | 校区地图、设备详情、直播页、回放页 需要在原型中拆到列表、详情、表单、弹窗、空状态、失败态、无权限态和处理进度。 | UI 需清晰呈现状态标签、流程节点、主次按钮、危险操作确认、移动/平板/TV 适配和错误提示;PC 管理端遵循统一框架,仅输出信息架构和交互说明。 | 后端需提供接口幂等、权限校验、状态机、审计日志、消息/审批触发、异步补偿和跨模块数据一致性保障。 | 测试需覆盖主流程、异常流、权限流、重复提交、批量部分失败和数据一致性;点击校区点位可看到设备总数、在线离线数并进入直播/回放。 |
| 督课评分 | 补齐评分规则版本、评分维度、截图/片段证据、整改任务、教师反馈和复核关闭。 | 督课任务、评分表、整改复核 需要在原型中拆到列表、详情、表单、弹窗、空状态、失败态、无权限态和处理进度。 | UI 需清晰呈现状态标签、流程节点、主次按钮、危险操作确认、移动/平板/TV 适配和错误提示;PC 管理端遵循统一框架,仅输出信息架构和交互说明。 | 后端需提供接口幂等、权限校验、状态机、审计日志、消息/审批触发、异步补偿和跨模块数据一致性保障。 | 测试需覆盖主流程、异常流、权限流、重复提交、批量部分失败和数据一致性;每次评分都能追溯规则版本、证据、责任人和整改结果。 |
11 · 数据对象与字段字典
明确页面、接口、数据库共同使用的数据语言
字段涉及敏感、人脸、财务、绩效时,原型需体现脱敏、授权和审计。核心对象
| 对象 | 说明 |
|---|---|
| VideoPlatformConfig | 海康威视/宇视视频平台配置;落地表:video_platform_config |
| VideoGatewayConfig | 门店侧网关与公网直连配置;落地表:video_gateway_config |
| ClassroomCamera | 教室摄像头设备清单;落地表:video_classroom_camera |
| CampusMapPoint | 校区地图点位和设备汇总;落地表:video_campus_map_point |
| PatrolRecord | 在线巡课记录;落地表:patrol_record |
| TeachingQualityScore | 教学质量评分;落地表:patrol_quality_score |
| RectificationTask | 督课整改与复核;落地表:patrol_rectification_task |
| SnapshotEvidence | 巡课截图和证据归档;落地表:patrol_snapshot_evidence |
关联引用对象
| 对象 | 说明 |
|---|---|
| Organization | 集团、区域、校区、部门组织树;引用来源:FND / sys_organization |
| User/Employee | 统一登录账号;引用来源:FND / sys_user |
| Employee | 员工基础档案;引用来源:FND / sys_employee |
| Role | 角色定义;引用来源:FND / sys_role |
| ApprovalFlow | 审批流配置;引用来源:FND / sys_approval_flow |
| MessageTemplate | 消息模板与多端触达配置;引用来源:FND / sys_message_template |
| AuditLog | 全平台操作审计日志;引用来源:FND / sys_audit_log |
| IntegrationLog | 接口调用日志;引用来源:OPEN / int_integration_log |
| SensitiveFieldPolicy | 敏感字段脱敏策略;引用来源:SEC / sec_sensitive_field_policy |
| CampusProfile | 校区档案、经纬度和监管基础信息;引用来源:FND / sys_campus_profile |
| Schedule/Lesson | 课次和排课;引用来源:EDU / edu_lesson |
| Asset | 固定资产台账;引用来源:MAT / mat_asset |
| AssetLifecycle/Maintenance | 资产维修与生命周期;引用来源:MAT / mat_maintenance_order |
| LiveRoom | 直播间;引用来源:LIVE / live_room |
| MetricSnapshot | 指标快照;引用来源:BI / bi_metric_snapshot |
完整字段字典
| 对象 | 字段 | 类型 | 必填 | 规则 | 数据级别 |
|---|---|---|---|---|---|
| VideoPlatformConfig | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| VideoPlatformConfig | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| VideoPlatformConfig | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| VideoPlatformConfig | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| VideoPlatformConfig | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| VideoPlatformConfig | created_at | DATETIME | 是 | 创建时间 | 普通 |
| VideoPlatformConfig | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| VideoPlatformConfig | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| VideoPlatformConfig | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| VideoPlatformConfig | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| VideoPlatformConfig | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| VideoPlatformConfig | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| VideoPlatformConfig | platform_code | VARCHAR(64) | 是 | 平台编码,唯一 | 普通 |
| VideoPlatformConfig | vendor_code | VARCHAR(32) | 是 | HIKVISION/UNIVIEW | 普通 |
| VideoPlatformConfig | platform_name | VARCHAR(128) | 是 | 平台名称 | 普通 |
| VideoPlatformConfig | api_base_url | VARCHAR(512) | 是 | 接口地址 | 普通 |
| VideoPlatformConfig | auth_config | JSON | 是 | 鉴权参数,密钥加密存储 | 高敏 |
| VideoPlatformConfig | record_retention_days | INT | 是 | 录像保留天数,默认 90 | 普通 |
| VideoPlatformConfig | enabled | TINYINT | 是 | 是否启用 | 普通 |
| VideoGatewayConfig | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| VideoGatewayConfig | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| VideoGatewayConfig | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| VideoGatewayConfig | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| VideoGatewayConfig | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| VideoGatewayConfig | created_at | DATETIME | 是 | 创建时间 | 普通 |
| VideoGatewayConfig | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| VideoGatewayConfig | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| VideoGatewayConfig | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| VideoGatewayConfig | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| VideoGatewayConfig | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| VideoGatewayConfig | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| VideoGatewayConfig | gateway_code | VARCHAR(64) | 是 | 网关编码,唯一 | 普通 |
| VideoGatewayConfig | platform_id | BIGINT | 是 | 视频平台 ID | 普通 |
| VideoGatewayConfig | access_mode | VARCHAR(32) | 是 | 公网直连/门店侧网关 | 普通 |
| VideoGatewayConfig | gateway_address | VARCHAR(512) | 否 | 网关地址 | 普通 |
| VideoGatewayConfig | network_status | VARCHAR(32) | 是 | 在线/离线/异常 | 普通 |
| VideoGatewayConfig | heartbeat_at | DATETIME | 否 | 最近心跳 | 普通 |
| ClassroomCamera | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| ClassroomCamera | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| ClassroomCamera | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| ClassroomCamera | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| ClassroomCamera | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| ClassroomCamera | created_at | DATETIME | 是 | 创建时间 | 普通 |
| ClassroomCamera | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| ClassroomCamera | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| ClassroomCamera | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| ClassroomCamera | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| ClassroomCamera | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| ClassroomCamera | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| ClassroomCamera | camera_code | VARCHAR(64) | 是 | 摄像头编码,唯一 | 普通 |
| ClassroomCamera | camera_name | VARCHAR(128) | 是 | 摄像头名称 | 普通 |
| ClassroomCamera | platform_id | BIGINT | 是 | 所属视频平台 | 普通 |
| ClassroomCamera | gateway_id | BIGINT | 否 | 门店网关 ID | 普通 |
| ClassroomCamera | classroom_id | BIGINT | 否 | 教室 ID | 普通 |
| ClassroomCamera | stream_address | VARCHAR(512) | 否 | 直播流地址 | 普通 |
| ClassroomCamera | camera_status | VARCHAR(32) | 是 | 在线/离线/停用/异常 | 普通 |
| CampusMapPoint | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| CampusMapPoint | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| CampusMapPoint | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| CampusMapPoint | campus_id | BIGINT | 是 | 所属校区,跨校区或总部级数据为空;本表业务要求必填 | 普通 |
| CampusMapPoint | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| CampusMapPoint | created_at | DATETIME | 是 | 创建时间 | 普通 |
| CampusMapPoint | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| CampusMapPoint | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| CampusMapPoint | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| CampusMapPoint | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| CampusMapPoint | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| CampusMapPoint | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| CampusMapPoint | longitude | DECIMAL(12,8) | 是 | 经度,后台动态配置 | 普通 |
| CampusMapPoint | latitude | DECIMAL(12,8) | 是 | 纬度,后台动态配置 | 普通 |
| CampusMapPoint | device_total | INT | 是 | 地图大头钉展示设备总数 | 普通 |
| CampusMapPoint | online_total | INT | 是 | 在线设备数 | 普通 |
| CampusMapPoint | point_status | VARCHAR(32) | 是 | 正常/异常/未配置 | 普通 |
| PatrolRecord | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| PatrolRecord | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| PatrolRecord | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| PatrolRecord | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| PatrolRecord | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| PatrolRecord | created_at | DATETIME | 是 | 创建时间 | 普通 |
| PatrolRecord | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| PatrolRecord | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| PatrolRecord | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| PatrolRecord | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| PatrolRecord | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| PatrolRecord | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| PatrolRecord | patrol_no | VARCHAR(64) | 是 | 巡课编号,唯一 | 普通 |
| PatrolRecord | camera_id | BIGINT | 是 | 摄像头 ID | 普通 |
| PatrolRecord | lesson_id | BIGINT | 否 | 课次 ID | 普通 |
| PatrolRecord | patrol_user_id | BIGINT | 是 | 巡课人员 ID | 普通 |
| PatrolRecord | start_at | DATETIME | 是 | 巡课开始时间 | 普通 |
| PatrolRecord | end_at | DATETIME | 否 | 巡课结束时间 | 普通 |
| PatrolRecord | patrol_status | VARCHAR(32) | 是 | 进行中/已完成/异常中断 | 普通 |
| TeachingQualityScore | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| TeachingQualityScore | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| TeachingQualityScore | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| TeachingQualityScore | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| TeachingQualityScore | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| TeachingQualityScore | created_at | DATETIME | 是 | 创建时间 | 普通 |
| TeachingQualityScore | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| TeachingQualityScore | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| TeachingQualityScore | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| TeachingQualityScore | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| TeachingQualityScore | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| TeachingQualityScore | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| TeachingQualityScore | score_no | VARCHAR(64) | 是 | 评分编号,唯一 | 普通 |
| TeachingQualityScore | patrol_record_id | BIGINT | 是 | 巡课记录 ID | 普通 |
| TeachingQualityScore | teacher_id | BIGINT | 否 | 教师 ID | 普通 |
| TeachingQualityScore | student_dimension_json | JSON | 否 | 学生维度评分 | 普通 |
| TeachingQualityScore | teacher_dimension_json | JSON | 否 | 教师维度评分 | 普通 |
| TeachingQualityScore | total_score | DECIMAL(6,2) | 是 | 综合得分 | 普通 |
| TeachingQualityScore | score_status | VARCHAR(32) | 是 | 草稿/已提交/已复核/已驳回 | 普通 |
| RectificationTask | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| RectificationTask | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| RectificationTask | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| RectificationTask | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| RectificationTask | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| RectificationTask | created_at | DATETIME | 是 | 创建时间 | 普通 |
| RectificationTask | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| RectificationTask | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| RectificationTask | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| RectificationTask | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| RectificationTask | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| RectificationTask | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| RectificationTask | task_no | VARCHAR(64) | 是 | 整改任务编号,唯一 | 普通 |
| RectificationTask | score_id | BIGINT | 是 | 评分 ID | 普通 |
| RectificationTask | owner_id | BIGINT | 是 | 责任人 ID | 普通 |
| RectificationTask | rectify_requirement | TEXT | 是 | 整改要求 | 普通 |
| RectificationTask | deadline_at | DATETIME | 是 | 整改截止时间 | 普通 |
| RectificationTask | verify_result | VARCHAR(32) | 否 | 复核结果 | 普通 |
| RectificationTask | task_status | VARCHAR(32) | 是 | 待整改/待复核/已关闭/逾期 | 普通 |
| SnapshotEvidence | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| SnapshotEvidence | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| SnapshotEvidence | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| SnapshotEvidence | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| SnapshotEvidence | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| SnapshotEvidence | created_at | DATETIME | 是 | 创建时间 | 普通 |
| SnapshotEvidence | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| SnapshotEvidence | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| SnapshotEvidence | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| SnapshotEvidence | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| SnapshotEvidence | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| SnapshotEvidence | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| SnapshotEvidence | patrol_record_id | BIGINT | 是 | 巡课记录 ID | 普通 |
| SnapshotEvidence | capture_at | DATETIME | 是 | 截图时间 | 普通 |
| SnapshotEvidence | file_id | BIGINT | 是 | 图片或视频文件 ID | 普通 |
| SnapshotEvidence | evidence_type | VARCHAR(32) | 是 | 截图/片段/备注/异常 | 普通 |
| SnapshotEvidence | evidence_desc | VARCHAR(512) | 否 | 证据说明 | 普通 |
| SnapshotEvidence | visible_scope | VARCHAR(32) | 是 | 总部/校区/责任人/审计 | 普通 |
引用对象字段字典
| 引用表 | 对象 | 字段 | 类型 | 必填 | 规则 | 数据级别 |
|---|---|---|---|---|---|---|
| sys_organization | Organization | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_organization | Organization | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_organization | Organization | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_organization | Organization | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_organization | Organization | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_organization | Organization | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_organization | Organization | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_organization | Organization | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_organization | Organization | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_organization | Organization | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_organization | Organization | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_organization | Organization | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_organization | Organization | org_code | VARCHAR(64) | 是 | 组织编码,租户内唯一 | 普通 |
| sys_organization | Organization | org_name | VARCHAR(128) | 是 | 组织名称 | 普通 |
| sys_organization | Organization | org_type | VARCHAR(32) | 是 | 集团/区域/校区/部门/法人主体 | 普通 |
| sys_organization | Organization | parent_id | BIGINT | 否 | 上级组织 ID,根节点为空 | 普通 |
| sys_organization | Organization | sort_no | INT | 否 | 同级排序 | 普通 |
| sys_organization | Organization | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_user | User/Employee | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_user | User/Employee | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_user | User/Employee | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_user | User/Employee | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_user | User/Employee | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_user | User/Employee | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_user | User/Employee | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_user | User/Employee | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_user | User/Employee | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_user | User/Employee | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_user | User/Employee | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_user | User/Employee | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_user | User/Employee | user_no | VARCHAR(64) | 是 | 账号编号,唯一 | 普通 |
| sys_user | User/Employee | login_name | VARCHAR(64) | 是 | 登录名,唯一 | 普通 |
| sys_user | User/Employee | mobile | VARCHAR(32) | 否 | 手机号,敏感脱敏展示 | 敏感 |
| sys_user | User/Employee | password_hash | VARCHAR(255) | 否 | 密码哈希,禁止前端返回 | 高敏 |
| sys_user | User/Employee | user_type | VARCHAR(32) | 是 | 员工/学员/家长/外部账号 | 普通 |
| sys_user | User/Employee | login_status | VARCHAR(32) | 是 | 正常/锁定/停用/待激活 | 普通 |
| sys_employee | Employee | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_employee | Employee | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_employee | Employee | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_employee | Employee | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_employee | Employee | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_employee | Employee | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_employee | Employee | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_employee | Employee | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_employee | Employee | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_employee | Employee | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_employee | Employee | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_employee | Employee | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_employee | Employee | employee_no | VARCHAR(64) | 是 | 工号,唯一 | 普通 |
| sys_employee | Employee | user_id | BIGINT | 否 | 关联账号 ID | 普通 |
| sys_employee | Employee | employee_name | VARCHAR(64) | 是 | 员工姓名 | 普通 |
| sys_employee | Employee | primary_campus_id | BIGINT | 否 | 主校区 ID | 普通 |
| sys_employee | Employee | job_title | VARCHAR(64) | 否 | 岗位名称 | 普通 |
| sys_employee | Employee | hire_status | VARCHAR(32) | 是 | 在职/试用/离职/停用 | 普通 |
| sys_role | Role | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_role | Role | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_role | Role | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_role | Role | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_role | Role | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_role | Role | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_role | Role | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_role | Role | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_role | Role | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_role | Role | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_role | Role | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_role | Role | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_role | Role | role_code | VARCHAR(64) | 是 | 角色编码,唯一 | 普通 |
| sys_role | Role | role_name | VARCHAR(128) | 是 | 角色名称 | 普通 |
| sys_role | Role | role_level | VARCHAR(32) | 是 | 总部/区域/校区/个人 | 普通 |
| sys_role | Role | data_scope_type | VARCHAR(32) | 是 | 数据范围类型 | 普通 |
| sys_role | Role | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_approval_flow | ApprovalFlow | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_approval_flow | ApprovalFlow | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_approval_flow | ApprovalFlow | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_approval_flow | ApprovalFlow | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_approval_flow | ApprovalFlow | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_approval_flow | ApprovalFlow | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_approval_flow | ApprovalFlow | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_approval_flow | ApprovalFlow | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_approval_flow | ApprovalFlow | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_approval_flow | ApprovalFlow | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_approval_flow | ApprovalFlow | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_approval_flow | ApprovalFlow | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_approval_flow | ApprovalFlow | flow_code | VARCHAR(64) | 是 | 审批流编码,唯一 | 普通 |
| sys_approval_flow | ApprovalFlow | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sys_approval_flow | ApprovalFlow | flow_name | VARCHAR(128) | 是 | 审批流名称 | 普通 |
| sys_approval_flow | ApprovalFlow | condition_json | JSON | 否 | 触发条件 | 普通 |
| sys_approval_flow | ApprovalFlow | node_json | JSON | 是 | 节点、审批人和超时规则 | 普通 |
| sys_approval_flow | ApprovalFlow | version_no | INT | 是 | 审批流版本号 | 普通 |
| sys_approval_flow | ApprovalFlow | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_message_template | MessageTemplate | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_message_template | MessageTemplate | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_message_template | MessageTemplate | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_message_template | MessageTemplate | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_message_template | MessageTemplate | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_message_template | MessageTemplate | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_message_template | MessageTemplate | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_message_template | MessageTemplate | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_message_template | MessageTemplate | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_message_template | MessageTemplate | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_message_template | MessageTemplate | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_message_template | MessageTemplate | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_message_template | MessageTemplate | template_code | VARCHAR(64) | 是 | 模板编码,唯一 | 普通 |
| sys_message_template | MessageTemplate | template_name | VARCHAR(128) | 是 | 模板名称 | 普通 |
| sys_message_template | MessageTemplate | channel | VARCHAR(32) | 是 | 站内信/短信/微信小程序/企微/Push | 普通 |
| sys_message_template | MessageTemplate | receiver_rule | JSON | 是 | 接收人规则 | 普通 |
| sys_message_template | MessageTemplate | content_template | TEXT | 是 | 模板内容 | 普通 |
| sys_message_template | MessageTemplate | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_audit_log | AuditLog | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_audit_log | AuditLog | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_audit_log | AuditLog | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_audit_log | AuditLog | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_audit_log | AuditLog | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_audit_log | AuditLog | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_audit_log | AuditLog | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_audit_log | AuditLog | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_audit_log | AuditLog | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_audit_log | AuditLog | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_audit_log | AuditLog | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_audit_log | AuditLog | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_audit_log | AuditLog | operator_id | BIGINT | 是 | 操作人 ID | 普通 |
| sys_audit_log | AuditLog | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sys_audit_log | AuditLog | biz_id | BIGINT | 否 | 业务主键 ID | 普通 |
| sys_audit_log | AuditLog | action_code | VARCHAR(64) | 是 | 操作编码 | 普通 |
| sys_audit_log | AuditLog | before_snapshot | JSON | 否 | 变更前快照 | 普通 |
| sys_audit_log | AuditLog | after_snapshot | JSON | 否 | 变更后快照 | 普通 |
| sys_audit_log | AuditLog | ip_address | VARCHAR(64) | 否 | 操作 IP | 普通 |
| int_integration_log | IntegrationLog | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| int_integration_log | IntegrationLog | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| int_integration_log | IntegrationLog | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| int_integration_log | IntegrationLog | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| int_integration_log | IntegrationLog | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| int_integration_log | IntegrationLog | created_at | DATETIME | 是 | 创建时间 | 普通 |
| int_integration_log | IntegrationLog | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| int_integration_log | IntegrationLog | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| int_integration_log | IntegrationLog | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| int_integration_log | IntegrationLog | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| int_integration_log | IntegrationLog | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| int_integration_log | IntegrationLog | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| int_integration_log | IntegrationLog | request_id | VARCHAR(128) | 是 | 请求 ID,幂等键 | 普通 |
| int_integration_log | IntegrationLog | system_code | VARCHAR(64) | 是 | 外部系统编码 | 普通 |
| int_integration_log | IntegrationLog | api_path | VARCHAR(512) | 是 | 接口路径 | 普通 |
| int_integration_log | IntegrationLog | biz_type | VARCHAR(64) | 否 | 业务类型 | 普通 |
| int_integration_log | IntegrationLog | biz_id | BIGINT | 否 | 业务 ID | 普通 |
| int_integration_log | IntegrationLog | request_payload | JSON | 否 | 请求报文,敏感字段脱敏 | 敏感 |
| int_integration_log | IntegrationLog | response_payload | JSON | 否 | 响应报文 | 普通 |
| int_integration_log | IntegrationLog | call_status | VARCHAR(32) | 是 | 成功/失败/超时/重试中 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | field_code | VARCHAR(128) | 是 | 字段编码,唯一 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | mask_rule | VARCHAR(64) | 是 | 脱敏规则 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | view_requires_approval | TINYINT | 是 | 明文查看是否需审批 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | watermark_required | TINYINT | 是 | 是否加水印 | 普通 |
| sys_campus_profile | CampusProfile | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_campus_profile | CampusProfile | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_campus_profile | CampusProfile | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_campus_profile | CampusProfile | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_campus_profile | CampusProfile | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_campus_profile | CampusProfile | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_campus_profile | CampusProfile | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_campus_profile | CampusProfile | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_campus_profile | CampusProfile | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_campus_profile | CampusProfile | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_campus_profile | CampusProfile | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_campus_profile | CampusProfile | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_campus_profile | CampusProfile | campus_code | VARCHAR(64) | 是 | 校区编码,唯一 | 普通 |
| sys_campus_profile | CampusProfile | campus_name | VARCHAR(128) | 是 | 校区名称 | 普通 |
| sys_campus_profile | CampusProfile | legal_entity_id | BIGINT | 否 | 所属法人主体 | 普通 |
| sys_campus_profile | CampusProfile | address | VARCHAR(255) | 否 | 校区地址 | 普通 |
| sys_campus_profile | CampusProfile | longitude | DECIMAL(12,8) | 否 | 地图经度,后台动态配置 | 普通 |
| sys_campus_profile | CampusProfile | latitude | DECIMAL(12,8) | 否 | 地图纬度,后台动态配置 | 普通 |
| sys_campus_profile | CampusProfile | business_hours | JSON | 否 | 营业时间配置 | 普通 |
| edu_lesson | Schedule/Lesson | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| edu_lesson | Schedule/Lesson | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| edu_lesson | Schedule/Lesson | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| edu_lesson | Schedule/Lesson | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| edu_lesson | Schedule/Lesson | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| edu_lesson | Schedule/Lesson | created_at | DATETIME | 是 | 创建时间 | 普通 |
| edu_lesson | Schedule/Lesson | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| edu_lesson | Schedule/Lesson | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| edu_lesson | Schedule/Lesson | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| edu_lesson | Schedule/Lesson | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| edu_lesson | Schedule/Lesson | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| edu_lesson | Schedule/Lesson | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| edu_lesson | Schedule/Lesson | lesson_no | VARCHAR(64) | 是 | 课次编号,唯一 | 普通 |
| edu_lesson | Schedule/Lesson | class_id | BIGINT | 是 | 班级 ID | 普通 |
| edu_lesson | Schedule/Lesson | teacher_id | BIGINT | 是 | 授课教师 ID | 普通 |
| edu_lesson | Schedule/Lesson | classroom_id | BIGINT | 否 | 教室 ID | 普通 |
| edu_lesson | Schedule/Lesson | start_at | DATETIME | 是 | 上课开始时间 | 普通 |
| edu_lesson | Schedule/Lesson | end_at | DATETIME | 是 | 上课结束时间 | 普通 |
| edu_lesson | Schedule/Lesson | lesson_status | VARCHAR(32) | 是 | 待上课/上课中/已下课/已取消/需补课 | 普通 |
| mat_asset | Asset | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| mat_asset | Asset | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| mat_asset | Asset | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| mat_asset | Asset | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| mat_asset | Asset | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| mat_asset | Asset | created_at | DATETIME | 是 | 创建时间 | 普通 |
| mat_asset | Asset | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| mat_asset | Asset | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| mat_asset | Asset | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| mat_asset | Asset | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| mat_asset | Asset | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| mat_asset | Asset | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| mat_asset | Asset | asset_no | VARCHAR(64) | 是 | 资产编号,唯一 | 普通 |
| mat_asset | Asset | sku_id | BIGINT | 是 | 资产 SKU | 普通 |
| mat_asset | Asset | owner_org_id | BIGINT | 否 | 归属组织 | 普通 |
| mat_asset | Asset | keeper_id | BIGINT | 否 | 保管人 | 普通 |
| mat_asset | Asset | purchase_date | DATE | 否 | 购置日期 | 普通 |
| mat_asset | Asset | asset_status | VARCHAR(32) | 是 | 在用/闲置/维修/报废/调拨中 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | created_at | DATETIME | 是 | 创建时间 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | maintenance_no | VARCHAR(64) | 是 | 维修单编号,唯一 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | asset_id | BIGINT | 是 | 资产 ID | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | fault_desc | VARCHAR(512) | 是 | 故障描述 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | repair_vendor_id | BIGINT | 否 | 维修供应商 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | repair_amount | DECIMAL(18,2) | 否 | 维修金额 | 普通 |
| mat_maintenance_order | AssetLifecycle/Maintenance | maintenance_status | VARCHAR(32) | 是 | 待维修/维修中/已完成/已报废 | 普通 |
| live_room | LiveRoom | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| live_room | LiveRoom | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| live_room | LiveRoom | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| live_room | LiveRoom | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| live_room | LiveRoom | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| live_room | LiveRoom | created_at | DATETIME | 是 | 创建时间 | 普通 |
| live_room | LiveRoom | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| live_room | LiveRoom | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| live_room | LiveRoom | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| live_room | LiveRoom | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| live_room | LiveRoom | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| live_room | LiveRoom | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| live_room | LiveRoom | room_no | VARCHAR(64) | 是 | 直播间编号,唯一 | 普通 |
| live_room | LiveRoom | live_type | VARCHAR(32) | 是 | 教学直播/活动直播/集团会议直播 | 普通 |
| live_room | LiveRoom | provider_code | VARCHAR(32) | 是 | 启用供应商 | 普通 |
| live_room | LiveRoom | biz_type | VARCHAR(64) | 是 | 绑定业务类型 | 普通 |
| live_room | LiveRoom | biz_id | BIGINT | 是 | 绑定业务 ID | 普通 |
| live_room | LiveRoom | start_at | DATETIME | 否 | 计划开始时间 | 普通 |
| live_room | LiveRoom | end_at | DATETIME | 否 | 计划结束时间 | 普通 |
| live_room | LiveRoom | room_status | VARCHAR(32) | 是 | 待开播/直播中/已结束/异常 | 普通 |
| bi_metric_snapshot | MetricSnapshot | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| bi_metric_snapshot | MetricSnapshot | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| bi_metric_snapshot | MetricSnapshot | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| bi_metric_snapshot | MetricSnapshot | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| bi_metric_snapshot | MetricSnapshot | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| bi_metric_snapshot | MetricSnapshot | created_at | DATETIME | 是 | 创建时间 | 普通 |
| bi_metric_snapshot | MetricSnapshot | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| bi_metric_snapshot | MetricSnapshot | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| bi_metric_snapshot | MetricSnapshot | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| bi_metric_snapshot | MetricSnapshot | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| bi_metric_snapshot | MetricSnapshot | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| bi_metric_snapshot | MetricSnapshot | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| bi_metric_snapshot | MetricSnapshot | metric_code | VARCHAR(64) | 是 | 指标编码 | 普通 |
| bi_metric_snapshot | MetricSnapshot | stat_date | DATE | 是 | 统计日期 | 普通 |
| bi_metric_snapshot | MetricSnapshot | dimension_json | JSON | 否 | 维度值 | 普通 |
| bi_metric_snapshot | MetricSnapshot | metric_value | DECIMAL(18,4) | 是 | 指标值 | 普通 |
JSON 字段结构与校验
| 表名 | 对象 | 字段 | 结构编码 | 结构定义 | 校验规则 | 示例 |
|---|---|---|---|---|---|---|
| video_platform_config | VideoPlatformConfig | auth_config | VIDEO_AUTH | {appKeyRef:string, secretRef:string, tokenUrl?:string, expireSeconds:number} | 密钥只保存密钥中心引用;禁止明文落库 | {"appKeyRef":"secret://video/appKey","expireSeconds":7200} |
| patrol_quality_score | TeachingQualityScore | student_dimension_json | METRIC_DIMENSION | {dimensions:[{code:string,name:string,type:string,refTable?:string}], filters:object} | 维度编码必须来自指标口径配置 | {"dimensions":[{"code":"campusId","type":"BIGINT","refTable":"sys_campus_profile"}]} |
| patrol_quality_score | TeachingQualityScore | teacher_dimension_json | METRIC_DIMENSION | {dimensions:[{code:string,name:string,type:string,refTable?:string}], filters:object} | 维度编码必须来自指标口径配置 | {"dimensions":[{"code":"campusId","type":"BIGINT","refTable":"sys_campus_profile"}]} |
状态/枚举标准字典
| 表名 | 对象 | 字段 | 枚举编码 | 取值 | 终态/流转规则 | 字段说明 |
|---|---|---|---|---|---|---|
| video_platform_config | VideoPlatformConfig | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| video_platform_config | VideoPlatformConfig | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| video_platform_config | VideoPlatformConfig | vendor_code | VENDOR_CODE | HIKVISION、UNIVIEW | 非终态,可按状态机或字典规则流转 | HIKVISION/UNIVIEW |
| video_platform_config | VideoPlatformConfig | enabled | ENABLED_STATUS | 0 停用、1 启用 | 非终态,可按状态机或字典规则流转 | 是否启用 |
| video_gateway_config | VideoGatewayConfig | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| video_gateway_config | VideoGatewayConfig | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| video_gateway_config | VideoGatewayConfig | access_mode | ACCESS_MODE | 公网直连、门店侧网关 | 非终态,可按状态机或字典规则流转 | 公网直连/门店侧网关 |
| video_gateway_config | VideoGatewayConfig | network_status | DEVICE_STATUS | ONLINE 在线、OFFLINE 离线、DISABLED 停用、ABNORMAL 异常 | 包含终态,终态禁止直接编辑,需走变更/红冲/撤回流程 | 在线/离线/异常 |
| video_classroom_camera | ClassroomCamera | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| video_classroom_camera | ClassroomCamera | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| video_classroom_camera | ClassroomCamera | camera_status | DEVICE_STATUS | ONLINE 在线、OFFLINE 离线、DISABLED 停用、ABNORMAL 异常 | 包含终态,终态禁止直接编辑,需走变更/红冲/撤回流程 | 在线/离线/停用/异常 |
| video_campus_map_point | CampusMapPoint | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| video_campus_map_point | CampusMapPoint | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| video_campus_map_point | CampusMapPoint | point_status | POINT_STATUS | 正常、异常、未配置 | 非终态,可按状态机或字典规则流转 | 正常/异常/未配置 |
| patrol_record | PatrolRecord | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| patrol_record | PatrolRecord | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| patrol_record | PatrolRecord | patrol_status | PATROL_STATUS | 进行中、已完成、异常中断 | 非终态,可按状态机或字典规则流转 | 进行中/已完成/异常中断 |
| patrol_quality_score | TeachingQualityScore | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| patrol_quality_score | TeachingQualityScore | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| patrol_quality_score | TeachingQualityScore | score_status | SCORE_STATUS | 草稿、已提交、已复核、已驳回 | 非终态,可按状态机或字典规则流转 | 草稿/已提交/已复核/已驳回 |
| patrol_rectification_task | RectificationTask | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| patrol_rectification_task | RectificationTask | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| patrol_rectification_task | RectificationTask | task_status | TASK_STATUS | 待整改、待复核、已关闭、逾期 | 包含终态,终态禁止直接编辑,需走变更/红冲/撤回流程 | 待整改/待复核/已关闭/逾期 |
| patrol_snapshot_evidence | SnapshotEvidence | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| patrol_snapshot_evidence | SnapshotEvidence | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| patrol_snapshot_evidence | SnapshotEvidence | evidence_type | EVIDENCE_TYPE | 截图、片段、备注、异常 | 非终态,可按状态机或字典规则流转 | 截图/片段/备注/异常 |
| patrol_snapshot_evidence | SnapshotEvidence | visible_scope | VISIBLE_SCOPE | 总部、校区、责任人、审计 | 非终态,可按状态机或字典规则流转 | 总部/校区/责任人/审计 |
敏感字段与数据安全策略
| 来源 | 表名 | 对象 | 字段 | 数据级别 | 脱敏/返回策略 | 明文查看条件 | 导出策略 | 审计要求 | 端侧展示规则 |
|---|---|---|---|---|---|---|---|---|---|
| 本模块对象 | video_platform_config | VideoPlatformConfig | auth_config | 高敏 | NEVER_RETURN | 禁止接口返回明文;仅密钥中心/鉴权服务按服务身份读取密钥引用 | 禁止导出;配置导出只允许导出脱敏引用和启停状态 | 配置新增、修改、启停、轮换和失败读取均记录安全审计 | 前端只展示已配置/未配置、到期时间和连通性状态,不展示密钥值 |
| 引用对象 | sys_user | User/Employee | mobile | 敏感 | MOBILE_MASK | 默认展示 138****0000;明文查看需字段权限或敏感字段查看审批 | 导出手机号必须触发导出审批、下载水印和有效期控制 | 明文查看、复制、导出和批量下载均写入 SensitiveAccessLog | PC 管理端按字段权限展示;移动端仅展示本人授权范围内脱敏信息 |
| 引用对象 | sys_user | User/Employee | password_hash | 高敏 | NEVER_RETURN | 禁止接口返回明文;仅密钥中心/鉴权服务按服务身份读取密钥引用 | 禁止导出;配置导出只允许导出脱敏引用和启停状态 | 配置新增、修改、启停、轮换和失败读取均记录安全审计 | 前端只展示已配置/未配置、到期时间和连通性状态,不展示密钥值 |
| 引用对象 | int_integration_log | IntegrationLog | request_payload | 敏感 | PAYLOAD_DESENSITIZE | 接口报文、快照和文件地址默认脱敏;排障查看需运维/安全授权 | 导出日志或报文时自动清理手机号、证件号、密钥、票据和人脸字段 | 查看报文、下载附件、失败重放和人工补偿均记录审计 | 业务端展示摘要和状态,完整报文仅运维/安全后台查看 |
| 引用对象 | int_integration_log | IntegrationLog | response_payload | 普通 | PAYLOAD_DESENSITIZE | 接口报文、快照和文件地址默认脱敏;排障查看需运维/安全授权 | 导出日志或报文时自动清理手机号、证件号、密钥、票据和人脸字段 | 查看报文、下载附件、失败重放和人工补偿均记录审计 | 业务端展示摘要和状态,完整报文仅运维/安全后台查看 |
| 引用对象 | sec_sensitive_field_policy | SensitiveFieldPolicy | mask_rule | 普通 | BIZ_FIELD_MASK | 按字段权限、数据范围和业务角色展示;明文查看按敏感字段审批规则执行 | 导出时按数据级别触发审批、水印、下载有效期和日志 | 查看、修改、删除、导出、下载和审批均记录操作审计 | 默认遵循总部、区域、校区、团队、本人数据范围和端侧最小可见原则 |
核心数据表完整字段
| 表名 | 对象 | 字段 | 类型 | 必填 | 规则 | 数据级别 |
|---|---|---|---|---|---|---|
| video_platform_config | VideoPlatformConfig | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| video_platform_config | VideoPlatformConfig | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| video_platform_config | VideoPlatformConfig | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| video_platform_config | VideoPlatformConfig | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| video_platform_config | VideoPlatformConfig | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| video_platform_config | VideoPlatformConfig | created_at | DATETIME | 是 | 创建时间 | 普通 |
| video_platform_config | VideoPlatformConfig | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| video_platform_config | VideoPlatformConfig | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| video_platform_config | VideoPlatformConfig | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| video_platform_config | VideoPlatformConfig | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| video_platform_config | VideoPlatformConfig | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| video_platform_config | VideoPlatformConfig | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| video_platform_config | VideoPlatformConfig | platform_code | VARCHAR(64) | 是 | 平台编码,唯一 | 普通 |
| video_platform_config | VideoPlatformConfig | vendor_code | VARCHAR(32) | 是 | HIKVISION/UNIVIEW | 普通 |
| video_platform_config | VideoPlatformConfig | platform_name | VARCHAR(128) | 是 | 平台名称 | 普通 |
| video_platform_config | VideoPlatformConfig | api_base_url | VARCHAR(512) | 是 | 接口地址 | 普通 |
| video_platform_config | VideoPlatformConfig | auth_config | JSON | 是 | 鉴权参数,密钥加密存储 | 高敏 |
| video_platform_config | VideoPlatformConfig | record_retention_days | INT | 是 | 录像保留天数,默认 90 | 普通 |
| video_platform_config | VideoPlatformConfig | enabled | TINYINT | 是 | 是否启用 | 普通 |
| video_gateway_config | VideoGatewayConfig | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| video_gateway_config | VideoGatewayConfig | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| video_gateway_config | VideoGatewayConfig | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| video_gateway_config | VideoGatewayConfig | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| video_gateway_config | VideoGatewayConfig | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| video_gateway_config | VideoGatewayConfig | created_at | DATETIME | 是 | 创建时间 | 普通 |
| video_gateway_config | VideoGatewayConfig | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| video_gateway_config | VideoGatewayConfig | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| video_gateway_config | VideoGatewayConfig | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| video_gateway_config | VideoGatewayConfig | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| video_gateway_config | VideoGatewayConfig | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| video_gateway_config | VideoGatewayConfig | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| video_gateway_config | VideoGatewayConfig | gateway_code | VARCHAR(64) | 是 | 网关编码,唯一 | 普通 |
| video_gateway_config | VideoGatewayConfig | platform_id | BIGINT | 是 | 视频平台 ID | 普通 |
| video_gateway_config | VideoGatewayConfig | access_mode | VARCHAR(32) | 是 | 公网直连/门店侧网关 | 普通 |
| video_gateway_config | VideoGatewayConfig | gateway_address | VARCHAR(512) | 否 | 网关地址 | 普通 |
| video_gateway_config | VideoGatewayConfig | network_status | VARCHAR(32) | 是 | 在线/离线/异常 | 普通 |
| video_gateway_config | VideoGatewayConfig | heartbeat_at | DATETIME | 否 | 最近心跳 | 普通 |
| video_classroom_camera | ClassroomCamera | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| video_classroom_camera | ClassroomCamera | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| video_classroom_camera | ClassroomCamera | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| video_classroom_camera | ClassroomCamera | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| video_classroom_camera | ClassroomCamera | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| video_classroom_camera | ClassroomCamera | created_at | DATETIME | 是 | 创建时间 | 普通 |
| video_classroom_camera | ClassroomCamera | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| video_classroom_camera | ClassroomCamera | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| video_classroom_camera | ClassroomCamera | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| video_classroom_camera | ClassroomCamera | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| video_classroom_camera | ClassroomCamera | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| video_classroom_camera | ClassroomCamera | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| video_classroom_camera | ClassroomCamera | camera_code | VARCHAR(64) | 是 | 摄像头编码,唯一 | 普通 |
| video_classroom_camera | ClassroomCamera | camera_name | VARCHAR(128) | 是 | 摄像头名称 | 普通 |
| video_classroom_camera | ClassroomCamera | platform_id | BIGINT | 是 | 所属视频平台 | 普通 |
| video_classroom_camera | ClassroomCamera | gateway_id | BIGINT | 否 | 门店网关 ID | 普通 |
| video_classroom_camera | ClassroomCamera | classroom_id | BIGINT | 否 | 教室 ID | 普通 |
| video_classroom_camera | ClassroomCamera | stream_address | VARCHAR(512) | 否 | 直播流地址 | 普通 |
| video_classroom_camera | ClassroomCamera | camera_status | VARCHAR(32) | 是 | 在线/离线/停用/异常 | 普通 |
| video_campus_map_point | CampusMapPoint | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| video_campus_map_point | CampusMapPoint | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| video_campus_map_point | CampusMapPoint | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| video_campus_map_point | CampusMapPoint | campus_id | BIGINT | 是 | 所属校区,跨校区或总部级数据为空;本表业务要求必填 | 普通 |
| video_campus_map_point | CampusMapPoint | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| video_campus_map_point | CampusMapPoint | created_at | DATETIME | 是 | 创建时间 | 普通 |
| video_campus_map_point | CampusMapPoint | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| video_campus_map_point | CampusMapPoint | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| video_campus_map_point | CampusMapPoint | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| video_campus_map_point | CampusMapPoint | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| video_campus_map_point | CampusMapPoint | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| video_campus_map_point | CampusMapPoint | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| video_campus_map_point | CampusMapPoint | longitude | DECIMAL(12,8) | 是 | 经度,后台动态配置 | 普通 |
| video_campus_map_point | CampusMapPoint | latitude | DECIMAL(12,8) | 是 | 纬度,后台动态配置 | 普通 |
| video_campus_map_point | CampusMapPoint | device_total | INT | 是 | 地图大头钉展示设备总数 | 普通 |
| video_campus_map_point | CampusMapPoint | online_total | INT | 是 | 在线设备数 | 普通 |
| video_campus_map_point | CampusMapPoint | point_status | VARCHAR(32) | 是 | 正常/异常/未配置 | 普通 |
| patrol_record | PatrolRecord | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| patrol_record | PatrolRecord | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| patrol_record | PatrolRecord | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| patrol_record | PatrolRecord | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| patrol_record | PatrolRecord | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| patrol_record | PatrolRecord | created_at | DATETIME | 是 | 创建时间 | 普通 |
| patrol_record | PatrolRecord | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| patrol_record | PatrolRecord | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| patrol_record | PatrolRecord | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| patrol_record | PatrolRecord | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| patrol_record | PatrolRecord | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| patrol_record | PatrolRecord | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| patrol_record | PatrolRecord | patrol_no | VARCHAR(64) | 是 | 巡课编号,唯一 | 普通 |
| patrol_record | PatrolRecord | camera_id | BIGINT | 是 | 摄像头 ID | 普通 |
| patrol_record | PatrolRecord | lesson_id | BIGINT | 否 | 课次 ID | 普通 |
| patrol_record | PatrolRecord | patrol_user_id | BIGINT | 是 | 巡课人员 ID | 普通 |
| patrol_record | PatrolRecord | start_at | DATETIME | 是 | 巡课开始时间 | 普通 |
| patrol_record | PatrolRecord | end_at | DATETIME | 否 | 巡课结束时间 | 普通 |
| patrol_record | PatrolRecord | patrol_status | VARCHAR(32) | 是 | 进行中/已完成/异常中断 | 普通 |
| patrol_quality_score | TeachingQualityScore | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| patrol_quality_score | TeachingQualityScore | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| patrol_quality_score | TeachingQualityScore | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| patrol_quality_score | TeachingQualityScore | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| patrol_quality_score | TeachingQualityScore | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| patrol_quality_score | TeachingQualityScore | created_at | DATETIME | 是 | 创建时间 | 普通 |
| patrol_quality_score | TeachingQualityScore | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| patrol_quality_score | TeachingQualityScore | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| patrol_quality_score | TeachingQualityScore | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| patrol_quality_score | TeachingQualityScore | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| patrol_quality_score | TeachingQualityScore | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| patrol_quality_score | TeachingQualityScore | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| patrol_quality_score | TeachingQualityScore | score_no | VARCHAR(64) | 是 | 评分编号,唯一 | 普通 |
| patrol_quality_score | TeachingQualityScore | patrol_record_id | BIGINT | 是 | 巡课记录 ID | 普通 |
| patrol_quality_score | TeachingQualityScore | teacher_id | BIGINT | 否 | 教师 ID | 普通 |
| patrol_quality_score | TeachingQualityScore | student_dimension_json | JSON | 否 | 学生维度评分 | 普通 |
| patrol_quality_score | TeachingQualityScore | teacher_dimension_json | JSON | 否 | 教师维度评分 | 普通 |
| patrol_quality_score | TeachingQualityScore | total_score | DECIMAL(6,2) | 是 | 综合得分 | 普通 |
| patrol_quality_score | TeachingQualityScore | score_status | VARCHAR(32) | 是 | 草稿/已提交/已复核/已驳回 | 普通 |
| patrol_rectification_task | RectificationTask | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| patrol_rectification_task | RectificationTask | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| patrol_rectification_task | RectificationTask | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| patrol_rectification_task | RectificationTask | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| patrol_rectification_task | RectificationTask | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| patrol_rectification_task | RectificationTask | created_at | DATETIME | 是 | 创建时间 | 普通 |
| patrol_rectification_task | RectificationTask | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| patrol_rectification_task | RectificationTask | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| patrol_rectification_task | RectificationTask | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| patrol_rectification_task | RectificationTask | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| patrol_rectification_task | RectificationTask | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| patrol_rectification_task | RectificationTask | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| patrol_rectification_task | RectificationTask | task_no | VARCHAR(64) | 是 | 整改任务编号,唯一 | 普通 |
| patrol_rectification_task | RectificationTask | score_id | BIGINT | 是 | 评分 ID | 普通 |
| patrol_rectification_task | RectificationTask | owner_id | BIGINT | 是 | 责任人 ID | 普通 |
| patrol_rectification_task | RectificationTask | rectify_requirement | TEXT | 是 | 整改要求 | 普通 |
| patrol_rectification_task | RectificationTask | deadline_at | DATETIME | 是 | 整改截止时间 | 普通 |
| patrol_rectification_task | RectificationTask | verify_result | VARCHAR(32) | 否 | 复核结果 | 普通 |
| patrol_rectification_task | RectificationTask | task_status | VARCHAR(32) | 是 | 待整改/待复核/已关闭/逾期 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | created_at | DATETIME | 是 | 创建时间 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | patrol_record_id | BIGINT | 是 | 巡课记录 ID | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | capture_at | DATETIME | 是 | 截图时间 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | file_id | BIGINT | 是 | 图片或视频文件 ID | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | evidence_type | VARCHAR(32) | 是 | 截图/片段/备注/异常 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | evidence_desc | VARCHAR(512) | 否 | 证据说明 | 普通 |
| patrol_snapshot_evidence | SnapshotEvidence | visible_scope | VARCHAR(32) | 是 | 总部/校区/责任人/审计 | 普通 |
数据表与对象映射
| 表名 | 对象 | 用途 | 完整字段 | 索引建议 |
|---|---|---|---|---|
| video_platform_config | VideoPlatformConfig | 海康威视/宇视视频平台配置 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、platform_code(VARCHAR(64),必填)、vendor_code(VARCHAR(32),必填)、platform_name(VARCHAR(128),必填)、api_base_url(VARCHAR(512),必填)、auth_config(JSON,必填)、record_retention_days(INT,必填)、enabled(TINYINT,必填) | uk_platform_code、idx_vendor_enabled |
| video_gateway_config | VideoGatewayConfig | 门店侧网关与公网直连配置 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、gateway_code(VARCHAR(64),必填)、platform_id(BIGINT,必填)、access_mode(VARCHAR(32),必填)、gateway_address(VARCHAR(512))、network_status(VARCHAR(32),必填)、heartbeat_at(DATETIME) | uk_gateway_code、idx_platform_status |
| video_classroom_camera | ClassroomCamera | 教室摄像头设备清单 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、camera_code(VARCHAR(64),必填)、camera_name(VARCHAR(128),必填)、platform_id(BIGINT,必填)、gateway_id(BIGINT)、classroom_id(BIGINT)、stream_address(VARCHAR(512))、camera_status(VARCHAR(32),必填) | uk_camera_code、idx_campus_status |
| video_campus_map_point | CampusMapPoint | 校区地图点位和设备汇总 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT,必填)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、longitude(DECIMAL(12,8),必填)、latitude(DECIMAL(12,8),必填)、device_total(INT,必填)、online_total(INT,必填)、point_status(VARCHAR(32),必填) | uk_campus、idx_geo |
| patrol_record | PatrolRecord | 在线巡课记录 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、patrol_no(VARCHAR(64),必填)、camera_id(BIGINT,必填)、lesson_id(BIGINT)、patrol_user_id(BIGINT,必填)、start_at(DATETIME,必填)、end_at(DATETIME)、patrol_status(VARCHAR(32),必填) | uk_patrol_no、idx_camera_time |
| patrol_quality_score | TeachingQualityScore | 教学质量评分 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、score_no(VARCHAR(64),必填)、patrol_record_id(BIGINT,必填)、teacher_id(BIGINT)、student_dimension_json(JSON)、teacher_dimension_json(JSON)、total_score(DECIMAL(6,2),必填)、score_status(VARCHAR(32),必填) | uk_score_no、idx_teacher_status |
| patrol_rectification_task | RectificationTask | 督课整改与复核 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、task_no(VARCHAR(64),必填)、score_id(BIGINT,必填)、owner_id(BIGINT,必填)、rectify_requirement(TEXT,必填)、deadline_at(DATETIME,必填)、verify_result(VARCHAR(32))、task_status(VARCHAR(32),必填) | uk_task_no、idx_owner_status |
| patrol_snapshot_evidence | SnapshotEvidence | 巡课截图和证据归档 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、patrol_record_id(BIGINT,必填)、capture_at(DATETIME,必填)、file_id(BIGINT,必填)、evidence_type(VARCHAR(32),必填)、evidence_desc(VARCHAR(512))、visible_scope(VARCHAR(32),必填) | idx_patrol_time、idx_type |
12 · 状态机与业务规则
约束业务对象如何流转、何时可编辑、何时触发审批
原型需要把状态标签、可操作按钮和禁用原因展示清楚。| 对象 | 状态 | 触发与说明 |
|---|---|---|
| 课次 | 未开始 -> 待签到 -> 已签到 -> 已课消 -> 请假 -> 补课 -> 旷课 -> 异常待确认 | 排课发布、签到、课消、请假、补课和人工确认 |
| 巡课任务 | 未开始 -> 巡课中 -> 已记录 -> 待评分 -> 待整改 -> 整改中 -> 已复盘 -> 已关闭 | 巡课计划、在线巡课、录像标记、课堂评价、教学质量评分、整改复盘 |
| 员工培训 | 未分配 -> 待学习 -> 学习中 -> 待考试 -> 已通过 -> 未通过 -> 补训中 -> 已逾期 | 培训计划发布、学习进度、考试成绩、补考复训和学习档案归档 |
| 补课改期取消 | 已确认 -> 改期申请中 -> 取消申请中 -> 教务处理中 -> 已重新安排 -> 已拒绝 -> 已关闭 -> 待冲正 -> 已冲正 | 家长发起改期或取消,教务处理候选课次和课消冲正,最终回到补课安排或关闭 |
| 设备维修工单 | 待派单 -> 已派单 -> 已接单 -> 排查中 -> 待恢复校验 -> 已恢复 -> 已关闭 -> 已升级 | 视频设备离线告警生成维修工单,恢复后回测直播、回放、录像索引 |
| 督课评分规则版本 | 草稿 -> 待审核 -> 已发布 -> 已生效 -> 已停用 -> 已归档 | 评分维度、权重和生效范围配置后审批发布,历史评分按版本追溯 |
| 国税核验配置 | 草稿 -> 启用中 -> 频控中 -> 异常 -> 已停用 -> 已过期 | 校区税务主体、官方接口凭证、额度、启用状态和调用日志 |
| 课堂端会话 | 待绑定 -> 已绑定 -> 待开课 -> 授课中 -> 暂停中 -> 已结束 -> 异常断开 | 教师或教室设备创建课堂会话,TV 与教师端完成绑定后同步课件、互动和课堂状态;断开后可重连,结束后归档审计。 |
远程巡课中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
远程巡课中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
远程巡课中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
远程巡课中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
远程巡课中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
远程巡课中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
13 · 权限、审批与消息
动作权限、数据范围、审批触发和消息触达必须闭环
权限需要覆盖菜单、按钮、字段、接口和导出。动作权限
- 导入摄像头:需映射菜单、按钮、接口和字段权限
- 地图巡课:需映射菜单、按钮、接口和字段权限
- 打开直播:需映射菜单、按钮、接口和字段权限
- 检索回放:需映射菜单、按钮、接口和字段权限
- 质量评分:需映射菜单、按钮、接口和字段权限
- 整改复盘:需映射菜单、按钮、接口和字段权限
数据范围
- 总部全量
- 区域辖区
- 校区本地
- 部门/岗位
- 本人负责
- 授权班级/学员
审批配置
| 审批名称 | 触发条件 | 流程 | 结果 | 留痕 |
|---|---|---|---|---|
| 账套反结账审批 | 已结账期间需要反结账或更正税务资料 | 校区财务提交 -> 总部财务复核 -> 财务负责人终审 | 通过后解锁期间并记录调整原因 | 保留反结账前后凭证、税表和审批说明 |
| 物料采购审批 | 采购金额超过阈值、跨校区采购或固定资产采购 | 申请人 -> 校区负责人 -> 采购/财务 -> 总部审批 | 通过后生成采购订单和到货验收任务 | 保留预算、供应商、报价和采购合同附件 |
| 固定资产报废审批 | 固定资产、图书或高价值物料需要报废 | 责任人提交 -> 校区负责人 -> 资产管理员 -> 财务复核 | 通过后出库、报废并生成财务核销记录 | 保留照片、盘点记录、处置说明和残值 |
| 转校审批 | 学员权益跨校区转移 | 原校区校长 -> 目标校区校长 -> 财务确认 | 权益和服务归属迁移 | 记录转出转入校区和余额 |
| 课消撤销审批 | 已确认收入的课消记录撤销 | 教务提交 -> 校长 -> 财务 | 撤销课消、恢复课时、冲回收入 | 记录原课次和撤销原因 |
| 培训课程发布审批 | 面向全员、跨校区或涉及制度类培训内容 | 人事/教研提交 -> 部门负责人 -> 总部审核 | 发布培训计划或退回修改 | 记录适用岗位、资料版本和考试规则 |
| 活动页面转模板审批 | 校区或区域自建活动页面申请沉淀为可复用模板 | 申请人 -> 区域市场 -> 总部品牌审核 | 通过后进入模板库并按授权范围开放使用 | 保留页面快照、素材、表单、埋点和审核意见 |
| 请假审批与补课安排 | 家长请假通过但未确认补课时间,或补课候选课次需家长确认 | 家长 -> 教务 -> 校长 | 通过后生成补课安排或回到待安排池 | 保留请假原因、课消处理、补课偏好和确认记录 |
消息模板
| 消息 | 接收人 | 触发 | 渠道 | 变量 |
|---|---|---|---|---|
| 新线索分配提醒 | 课程顾问 | 线索分配成功 | 站内信、App、企微 | 学员姓名、来源渠道、校区、保护期 |
| 试听预约通知 | 家长/教师/顾问 | 试听课预约成功或变更 | 小程序、短信、App | 上课时间、校区、教室、教师 |
| 库存预警 | 库管/校区负责人 | 物料或礼品低于安全库存 | 站内信、App、企微 | SKU、校区、当前库存、安全库存、补货建议 |
| 积分兑换核销通知 | 学员/家长/校区前台 | 兑换成功、即将过期或核销完成 | 小程序、App、站内信 | 礼品名称、兑换码、核销校区、有效期 |
| 到校签到通知 | 家长 | 人脸或人工签到成功 | 小程序、App | 学员姓名、签到时间、校区、课程 |
| 摄像头离线告警 | 设备管理员/校区前台 | 摄像头心跳超时或拉流失败 | 站内信、App | 校区、教室、摄像头编号、品牌、异常时间 |
| 巡课整改通知 | 校长/教师/教研督导 | 督课记录生成整改项 | 站内信、App、企微 | 督课任务、问题等级、整改期限、回放片段 |
| 教学质量评分通知 | 教师/校长/教研督导 | 督课评分生成、低分预警或申诉复核 | 站内信、App、企微 | 课次、教师、综合分、低分维度、复核入口 |
14 · 接口与技术细节
接口需支持幂等、权限、审计、重试和回执
每个写接口必须有 requestId 或业务幂等键,外部回调必须验签和去重。| 接口 | 方法 | 方向 | 请求字段 | 响应字段 | 幂等/权限 |
|---|---|---|---|---|---|
| /api/v1/patrol/cameras | POST/GET | PC Web 到视频网关 | brand, deviceCode, campusId, classroomId, streamConfig | cameraId, onlineStatus | deviceCode 唯一 |
| /api/v1/patrol/map | GET | PC Web 到平台 | regionId, campusId, onlineStatus | mapPoints, alertCount, cameraSummary | 按数据范围过滤 |
| /api/v1/patrol/live-streams | POST | PC Web 到视频网关 | cameraId, protocol, quality, requestId | playUrl, token, expireAt | requestId 幂等 |
| /api/v1/patrol/records | GET | PC Web 到视频网关 | cameraId, timeRange, lessonId | recordings, timeline, marks | 视频权限校验 |
| /api/v1/patrol/quality-scores | POST | 督导到平台 | lessonId, teacherId, scoreItems, evidenceIds | scoreId, scoreLevel, rectifyTaskId | 评分规则版本锁定 |
前端约束
- 统一登录态和租户校区上下文
- 列表分页、筛选、排序、列显隐
- 表单本地校验与服务端错误映射
- 移动/平板/TV 按终端适配交互
后端约束
- 领域服务封装业务规则
- 写操作事务一致性
- 关键操作审计快照
- 异步任务失败重试和告警
集成约束
- 第三方接口统一走开放集成中心
- 回执文件归档
- 接口日志可按业务单号追踪
- 密钥和回调地址按环境隔离
15 · 数据库与存储设计
核心表建议、关键字段和索引方向
详细 DDL 已在平台技术设计文档中统一展开,本处保留模块核心表、关键字段和索引方向。| 表名 | 用途 | 核心字段 | 索引建议 |
|---|---|---|---|
| video_platform_config | 海康威视/宇视视频平台配置 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、platform_code、vendor_code、platform_name、api_base_url、auth_config、record_retention_days、enabled | uk_platform_code、idx_vendor_enabled |
| video_gateway_config | 门店侧网关与公网直连配置 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、gateway_code、platform_id、access_mode、gateway_address、network_status、heartbeat_at | uk_gateway_code、idx_platform_status |
| video_classroom_camera | 教室摄像头设备清单 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、camera_code、camera_name、platform_id、gateway_id、classroom_id、stream_address、camera_status | uk_camera_code、idx_campus_status |
| video_campus_map_point | 校区地图点位和设备汇总 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、longitude、latitude、device_total、online_total、point_status | uk_campus、idx_geo |
| patrol_record | 在线巡课记录 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、patrol_no、camera_id、lesson_id、patrol_user_id、start_at、end_at、patrol_status | uk_patrol_no、idx_camera_time |
| patrol_quality_score | 教学质量评分 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、score_no、patrol_record_id、teacher_id、student_dimension_json、teacher_dimension_json、total_score、score_status | uk_score_no、idx_teacher_status |
| patrol_rectification_task | 督课整改与复核 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、task_no、score_id、owner_id、rectify_requirement、deadline_at、verify_result、task_status | uk_task_no、idx_owner_status |
| patrol_snapshot_evidence | 巡课截图和证据归档 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、patrol_record_id、capture_at、file_id、evidence_type、evidence_desc、visible_scope | idx_patrol_time、idx_type |
DDL 草案
video_platform_configVideoPlatformConfig
CREATE TABLE `video_platform_config` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`platform_code` VARCHAR(64) NOT NULL COMMENT '平台编码,唯一;数据级别:普通',
`vendor_code` VARCHAR(32) NOT NULL COMMENT 'HIKVISION/UNIVIEW;数据级别:普通',
`platform_name` VARCHAR(128) NOT NULL COMMENT '平台名称;数据级别:普通',
`api_base_url` VARCHAR(512) NOT NULL COMMENT '接口地址;数据级别:普通',
`auth_config` JSON NOT NULL COMMENT '鉴权参数,密钥加密存储;数据级别:高敏',
`record_retention_days` INT NOT NULL COMMENT '录像保留天数,默认 90;数据级别:普通',
`enabled` TINYINT NOT NULL COMMENT '是否启用;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_platform_code` (`platform_code`),
KEY `idx_vendor_enabled` (`vendor_code`, `enabled`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='VideoPlatformConfig:海康威视/宇视视频平台配置';
video_gateway_configVideoGatewayConfig
CREATE TABLE `video_gateway_config` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`gateway_code` VARCHAR(64) NOT NULL COMMENT '网关编码,唯一;数据级别:普通',
`platform_id` BIGINT NOT NULL COMMENT '视频平台 ID;数据级别:普通',
`access_mode` VARCHAR(32) NOT NULL COMMENT '公网直连/门店侧网关;数据级别:普通',
`gateway_address` VARCHAR(512) NULL COMMENT '网关地址;数据级别:普通',
`network_status` VARCHAR(32) NOT NULL COMMENT '在线/离线/异常;数据级别:普通',
`heartbeat_at` DATETIME NULL COMMENT '最近心跳;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_gateway_code` (`gateway_code`),
KEY `idx_platform_status` (`platform_id`, `network_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='VideoGatewayConfig:门店侧网关与公网直连配置';
video_classroom_cameraClassroomCamera
CREATE TABLE `video_classroom_camera` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`camera_code` VARCHAR(64) NOT NULL COMMENT '摄像头编码,唯一;数据级别:普通',
`camera_name` VARCHAR(128) NOT NULL COMMENT '摄像头名称;数据级别:普通',
`platform_id` BIGINT NOT NULL COMMENT '所属视频平台;数据级别:普通',
`gateway_id` BIGINT NULL COMMENT '门店网关 ID;数据级别:普通',
`classroom_id` BIGINT NULL COMMENT '教室 ID;数据级别:普通',
`stream_address` VARCHAR(512) NULL COMMENT '直播流地址;数据级别:普通',
`camera_status` VARCHAR(32) NOT NULL COMMENT '在线/离线/停用/异常;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_camera_code` (`camera_code`),
KEY `idx_campus_status` (`campus_id`, `camera_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='ClassroomCamera:教室摄像头设备清单';
video_campus_map_pointCampusMapPoint
CREATE TABLE `video_campus_map_point` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NOT NULL COMMENT '所属校区,跨校区或总部级数据为空;本表业务要求必填;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`longitude` DECIMAL(12,8) NOT NULL COMMENT '经度,后台动态配置;数据级别:普通',
`latitude` DECIMAL(12,8) NOT NULL COMMENT '纬度,后台动态配置;数据级别:普通',
`device_total` INT NOT NULL COMMENT '地图大头钉展示设备总数;数据级别:普通',
`online_total` INT NOT NULL COMMENT '在线设备数;数据级别:普通',
`point_status` VARCHAR(32) NOT NULL COMMENT '正常/异常/未配置;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_campus` (`campus_id`),
KEY `idx_geo` (`tenant_id`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='CampusMapPoint:校区地图点位和设备汇总';
patrol_recordPatrolRecord
CREATE TABLE `patrol_record` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`patrol_no` VARCHAR(64) NOT NULL COMMENT '巡课编号,唯一;数据级别:普通',
`camera_id` BIGINT NOT NULL COMMENT '摄像头 ID;数据级别:普通',
`lesson_id` BIGINT NULL COMMENT '课次 ID;数据级别:普通',
`patrol_user_id` BIGINT NOT NULL COMMENT '巡课人员 ID;数据级别:普通',
`start_at` DATETIME NOT NULL COMMENT '巡课开始时间;数据级别:普通',
`end_at` DATETIME NULL COMMENT '巡课结束时间;数据级别:普通',
`patrol_status` VARCHAR(32) NOT NULL COMMENT '进行中/已完成/异常中断;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_patrol_no` (`patrol_no`),
KEY `idx_camera_time` (`camera_id`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PatrolRecord:在线巡课记录';
patrol_quality_scoreTeachingQualityScore
CREATE TABLE `patrol_quality_score` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`score_no` VARCHAR(64) NOT NULL COMMENT '评分编号,唯一;数据级别:普通',
`patrol_record_id` BIGINT NOT NULL COMMENT '巡课记录 ID;数据级别:普通',
`teacher_id` BIGINT NULL COMMENT '教师 ID;数据级别:普通',
`student_dimension_json` JSON NULL COMMENT '学生维度评分;数据级别:普通',
`teacher_dimension_json` JSON NULL COMMENT '教师维度评分;数据级别:普通',
`total_score` DECIMAL(6,2) NOT NULL COMMENT '综合得分;数据级别:普通',
`score_status` VARCHAR(32) NOT NULL COMMENT '草稿/已提交/已复核/已驳回;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_score_no` (`score_no`),
KEY `idx_teacher_status` (`teacher_id`, `score_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='TeachingQualityScore:教学质量评分';
patrol_rectification_taskRectificationTask
CREATE TABLE `patrol_rectification_task` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`task_no` VARCHAR(64) NOT NULL COMMENT '整改任务编号,唯一;数据级别:普通',
`score_id` BIGINT NOT NULL COMMENT '评分 ID;数据级别:普通',
`owner_id` BIGINT NOT NULL COMMENT '责任人 ID;数据级别:普通',
`rectify_requirement` TEXT NOT NULL COMMENT '整改要求;数据级别:普通',
`deadline_at` DATETIME NOT NULL COMMENT '整改截止时间;数据级别:普通',
`verify_result` VARCHAR(32) NULL COMMENT '复核结果;数据级别:普通',
`task_status` VARCHAR(32) NOT NULL COMMENT '待整改/待复核/已关闭/逾期;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_task_no` (`task_no`),
KEY `idx_owner_status` (`owner_id`, `task_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='RectificationTask:督课整改与复核';
patrol_snapshot_evidenceSnapshotEvidence
CREATE TABLE `patrol_snapshot_evidence` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`patrol_record_id` BIGINT NOT NULL COMMENT '巡课记录 ID;数据级别:普通',
`capture_at` DATETIME NOT NULL COMMENT '截图时间;数据级别:普通',
`file_id` BIGINT NOT NULL COMMENT '图片或视频文件 ID;数据级别:普通',
`evidence_type` VARCHAR(32) NOT NULL COMMENT '截图/片段/备注/异常;数据级别:普通',
`evidence_desc` VARCHAR(512) NULL COMMENT '证据说明;数据级别:普通',
`visible_scope` VARCHAR(32) NOT NULL COMMENT '总部/校区/责任人/审计;数据级别:普通',
PRIMARY KEY (`id`),
KEY `idx_patrol_time` (`patrol_record_id`),
KEY `idx_type` (`evidence_type`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='SnapshotEvidence:巡课截图和证据归档';
16 · 异常、指标、测试与初始化
保证模块上线后可运营、可追踪、可验收
测试要覆盖主流程、异常流、权限流、接口失败和数据一致性。异常状态
指标埋点
测试用例
| 编号 | 场景 | 前置 | 步骤 | 预期 | 优先级 |
|---|---|---|---|---|---|
| TC-008 | 人脸签到自动课消 | 学员已授权人脸且课次待签到 | 模拟设备回传识别事件 | 签到成功、课消成功、家长收到通知 | 高 |
| TC-011 | 学员端访问授权资源 | 合同权益生效 | 学员登录微信小程序或 App 打开课程资源 | 资源可访问并记录学习进度,家长端仅查看学习报告摘要 | 高 |
| TC-013 | 教师发布作业并批改 | 课次已完成 | 教师发布作业,学员提交,教师批改 | 学员端展示批改结果和成长档案 | 中 |
| TC-018 | 活码动态内容切换 | 同一二维码配置不同班级资源 | 不同学员扫码 | 返回对应授权资源并记录扫码数据 | 高 |
| TC-021 | 跨校区数据隔离 | 创建两个校区和不同校区账号 | 校区 A 账号访问校区 B 客户 | 无法查看或仅显示授权范围数据 | 高 |
| TC-027 | 设备离线补传 | 设备离线后产生识别记录 | 恢复网络并补传事件 | 流水去重后生成签到或异常 | 高 |
| TC-029 | 课消撤销审批 | 课次已课消并确认收入 | 发起撤销课消 | 审批后恢复课时并冲回收入 | 高 |
| TC-038 | 员工培训计划学习闭环 | 培训计划已发布并分配员工 | 员工打开培训、完成资料学习、提交考试 | 学习进度、考试成绩和员工培训档案完整 | 高 |
| TC-040 | 千台级摄像头台账导入 | 准备海康威视、宇视摄像头清单 | 批量导入摄像头并绑定校区、教室和楼层点位 | 导入成功、重复和错误明细清晰,摄像头状态可校验 | 高 |
| TC-041 | 地图监控与直播巡课 | 摄像头在线且账号具备巡课权限 | 在地图中定位校区教室并打开多画面直播 | 直播画面可打开,权限过滤正确,巡课访问留痕 | 高 |
| TC-PAT-ENH-001 | 视频接入交付闭环验收 | 视频平台配置、网关配置、存储策略相关基础数据、权限、审批流、消息模板和接口配置已初始化 | 按明确品牌、平台地址、鉴权参数、公网直连、网关、集中机房录像存储和 90 天循环覆盖配置。执行前端提交、后端处理、状态流转、异常重试和消息触达 | 新增校区或设备无需改代码,通过后台配置即可接入。;同时产生审计日志、指标埋点和必要的补偿任务 | 高 |
| TC-PAT-ENH-002 | 地图巡课交付闭环验收 | 校区地图、设备详情、直播页、回放页相关基础数据、权限、审批流、消息模板和接口配置已初始化 | 按补齐地图监控、点位详情、设备列表、直播播放器、回放时间轴、录像缺失和存储异常提示。执行前端提交、后端处理、状态流转、异常重试和消息触达 | 点击校区点位可看到设备总数、在线离线数并进入直播/回放。;同时产生审计日志、指标埋点和必要的补偿任务 | 高 |
| TC-PAT-ENH-003 | 督课评分交付闭环验收 | 督课任务、评分表、整改复核相关基础数据、权限、审批流、消息模板和接口配置已初始化 | 按补齐评分规则版本、评分维度、截图/片段证据、整改任务、教师反馈和复核关闭。执行前端提交、后端处理、状态流转、异常重试和消息触达 | 每次评分都能追溯规则版本、证据、责任人和整改结果。;同时产生审计日志、指标埋点和必要的补偿任务 | 高 |
上线初始化
| 初始化项 | 动作 | 数据 | 验收 |
|---|---|---|---|
| 组织与校区 | 导入集团、品牌、法人主体、区域、校区、部门、岗位 | 总部组织树、校区编码、法人关系、营业时间 | 组织层级正确且权限可继承 |
| 账号与权限 | 初始化总部、区域、校区、顾问、教务、教师、财务、家长、学员角色 | 账号、角色、菜单、按钮、字段、数据范围 | 测试账号可按角色访问指定页面 |
| 课程与价格 | 导入课程、班型、课包、课时、价格、适用校区 | 课程编码、班型、价格表、有效期、赠课规则 | 报价和合同可正确引用价格 |
| 优惠规则 | 初始化折扣、满减、优惠券、老带新、多科联报和组合包规则 | 规则编码、叠加互斥、适用课程、校区、有效期、审批阈值 | 报价单可正确计算并生成分摊明细 |
| 财务科目 | 配置收款、预收、课消收入、退费、薪资、报销和内置科目映射 | 科目、辅助核算、校区、项目、部门 | 凭证可生成并写入测试账套 |
| 多账套会计 | 按校区初始化独立账套、会计期间、凭证字、科目和税务参数 | 账套编码、法人主体、校区、期间、税种、申报模板 | 校区账套可独立记账,总部可汇总和复核 |
| 监管账户 | 维护资金监管账户和教育局监管平台参数 | 账户编号、校区映射、接口地址、证书、回调 | 合同、收款、课消、退费可报送测试 |
| 设备参数 | 登记人脸考勤机设备和校区绑定 | 设备编号、位置、API 密钥、心跳阈值、识别阈值 | 设备心跳正常且可接收人员下发 |
| 视频接入交付配置 | 初始化明确品牌、平台地址、鉴权参数、公网直连、网关、集中机房录像存储和 90 天循环覆盖配置。所需的页面入口、功能开关、审批流、消息模板、状态枚举、异常原因和角色权限 | 视频平台配置、网关配置、存储策略 | 新增校区或设备无需改代码,通过后台配置即可接入。 |
| 地图巡课交付配置 | 初始化补齐地图监控、点位详情、设备列表、直播播放器、回放时间轴、录像缺失和存储异常提示。所需的页面入口、功能开关、审批流、消息模板、状态枚举、异常原因和角色权限 | 校区地图、设备详情、直播页、回放页 | 点击校区点位可看到设备总数、在线离线数并进入直播/回放。 |
| 督课评分交付配置 | 初始化补齐评分规则版本、评分维度、截图/片段证据、整改任务、教师反馈和复核关闭。所需的页面入口、功能开关、审批流、消息模板、状态枚举、异常原因和角色权限 | 督课任务、评分表、整改复核 | 每次评分都能追溯规则版本、证据、责任人和整改结果。 |