12 KiB
12 KiB
SYFJGYD学员管理系统 — 客户演示候选版本交付报告 (Clean Demo Delivery)
交付状态判定:
DEMO_CANDIDATE_READY = YES
报告生成时间:2026-09-24
责任交付主体:RailwaySystem 工程交付组
一、交付基线与运行态证明
本候选版本严格在完全隔离的专用演示环境构建并端到端验收闭环,坚决不触碰 training(共享试用库)与 railwaysystem_integrated_qa_20260916(综合验收库),彻底杜绝跨环境脏数据干扰。
================================================================================
DEMO RUNTIME SPECIFICATIONS
================================================================================
DEMO_CANDIDATE_READY : YES
ACTIVE_GIT_COMMIT : e9f468cefd20c592de3387060a7c0743c8464163
ACTIVE_GIT_BRANCH : fix/phase0-product-defects-20260923
ACTIVE_DATABASE : training_demo_clean
ACTIVE_DATABASE_DRIVER : com.kingbase8.Driver (8.6.0)
ACTIVE_BACKEND_PORT : 8096
ACTIVE_FRONTEND_PORT : 1024
FRONTEND_SOURCE : build_ui/ (PID: 30822, vue-cli-service serve)
DATABASE_ISOLATION_STATUS : STRICTLY_ISOLATED (Verified)
ORPHAN_FOREIGN_KEYS : 0
MIGRATION_FATAL_ERRORS : 0
BOOTSTRAP_RESULT : SUCCESS
BACKEND_SUREFIRE_TESTS_TOTAL : 536 (ALL PASS)
================================================================================
二、演示数据库构建与数据丰富度盘点
1. 结构与迁移链验证
- 引导链执行:RuoYi 官方基础表 -> Quartz 调度表 -> Phase 0.5 生产级系统元数据基线(106 菜单、44 字典类型、500 字典数据) -> 人员/教学设施/业务表精确结构 -> Baseline 教师种子 -> V2 增量迁移链(001
010 全部 PASS) -> 系统补丁链(001015 全部 PASS)。 - 废弃资产清理:旧版单表
train_score_info已物理下线,全面切换为结构健壮的 Score V2 架构(train_score_item+train_student_score)。 - 数据表总量统计:
- 总物理表数:
TOTAL_TABLE_COUNT = 55 - 培训业务表数:
TRAIN_TABLE_COUNT = 23 - 系统平台表数:
SYS_TABLE_COUNT = 19 - Quartz 任务表数:
QUARTZ_TABLE_COUNT = 11 - 代码生成辅助表数:
GEN_TABLE_COUNT = 2
- 总物理表数:
2. 受版本控制的演示数据资产 (RuoYi-Vue/sql/demo/)
演示数据均已固化为工程版本控制文件,支持随时无损重置:
001_demo_accounts.sql:预置演示管理员、主讲教师、参训学员三类业务角色;002_demo_master_data.sql:主数据(教师、学员、教室、场地、宿舍、班牌);003_demo_business_data.sql:开班计划、学员名单、排课课次、考勤签到、住宿分配、成绩明细;004_demo_scenario_data.sql:数字资源、学习时长、学员画像雷达维度、DMS 对账审计;reset_demo_data.sql:一键清空并重置黄金演示状态;verify_demo_data.sql:包含 15 项核心业务指标的自动化 PL/pgSQL 强断言脚本。
3. 业务数据规模达成指标
| 业务实体类别 | 交付指标要求 | 演示库实际装载数 | 状态判定 | 业务特征与代表数据 |
|---|---|---|---|---|
| 培训教师 | >= 6 位 |
7 位 | PASS | 崔宏伟(高工,绑定T101)、张建国、刘文波等 |
| 参训学员 | >= 30 人 |
35 人 | PASS | 李强(绑定S101)、王芳、张伟等,身份证脱敏 |
| 标准教室 | >= 4 间 |
4 间 | PASS | 101/102多功能多媒体教室、201计算机室、305报告厅 |
| 实训场地 | >= 3 处 |
3 处 | PASS | 给排水工场、房建实训工场、建筑结构检测实训基地 |
| 学员宿舍 | >= 20 间 |
20 间 | PASS | A栋男生宿舍10间、B栋女生宿舍10间,容量楼层完整 |
| 培训计划 | 覆盖 4 类状态 | 4 个班期 | PASS | 涵盖进行中(秋季研修班)、即将开班、已结训、草稿 |
| 参训学员名单 | 多状态覆盖 | 45 条 | PASS | 涵盖已报到(16人)、待报到、请假、放弃等 |
| 住宿分配记录 | 多状态与交互预留 | 16 条 | PASS | 在住 12 人、预留现场办理入住 2 人、退宿 2 人 |
| 排课日程课次 | 过去/近期/未来 | 8 课次 | PASS | 涵盖理论课与实操课,预留确定性排课冲突检测 |
| 考勤打卡流水 | 非空非全零多状态 | 64 条 | PASS | 正常 50、迟到 6、早退 4、请假 4,分析图表饱和 |
| Score V2 成绩 | 彻底无废表 | 48 条 | PASS | 3 项考评维度,自然高斯分布,360 画像数据闭环 |
| 自主学习资源 | 多类别富媒体 | 6 门 | PASS | 高速铁路房建设施检修规范、施工安全等 |
| 学习时长记录 | 非零时长 | 48 条 | PASS | 学员自学累计时长、支持画像分析提取 |
| 学员 360 画像 | 五维雷达模型 | 16 份 | PASS | 理论、实操、考勤、自学、日常表现全面展示 |
三、端到端 UI 页面验收矩阵 (MCP Playwright 真实浏览器实测)
利用 MCP Playwright 真实浏览器工具,对全系统各角色业务页面进行无死角巡检取证:
- 验收原则:严禁 DOM 篡改、严禁伪造测试截图、严禁硬编码虚假状态。
- 验收结果门禁:
PAGE_LOAD_ERROR = 0BROKEN_CORE_API = 0UNEXPECTED_EMPTY_PAGE = 0
| 序号 | 页面路径 / 功能模块 | 对应角色 | 加载状态 | 业务数据呈现 | 主干 API 响应 | 核心交互测试 | 演示就绪判定 | 取证截图凭据 |
|---|---|---|---|---|---|---|---|---|
| 1 | /login (系统登录页) |
公共 | 正常 | 免验证码已优化 | 200 (免验证码) | 账号密码秒级登录 | PASS | 01_login_page.png |
| 2 | /index (系统首页) |
培训管理员 | 正常 | 导航树完备 | 200 (/getInfo) |
模块导航畅通 | PASS | 02_admin_index.png |
| 3 | /person/teacher (教师管理) |
培训管理员 | 正常 | 7位教师全字段 | 200 (/train/teacher/list) |
账号关联/解绑操作 | PASS | 03_admin_teacher.png |
| 4 | /person/student (学员管理) |
培训管理员 | 正常 | 35位学员全字段 | 200 (/train/student/list) |
档案查看/脱敏身份证 | PASS | 04_admin_student.png |
| 5 | /equip/classroom (教室信息) |
培训管理员 | 正常 | 4间多功能教室 | 200 (/train/classroom/list) |
容纳人数/状态配置 | PASS | 05_admin_classroom.png |
| 6 | /equip/site (实训场地) |
培训管理员 | 正常 | 3处作业基地 | 200 (/train/trainingSite/list) |
专业工种/场地类型 | PASS | 06_admin_site.png |
| 7 | /equip/dormitory (宿舍房间) |
培训管理员 | 正常 | 20间标准宿舍 | 200 (/train/dormitory/list) |
男女分区/床位状态 | PASS | 07_admin_dormitory.png |
| 8 | /equip/accommodation (住宿管理) |
培训管理员 | 正常 | 16条住宿记录 | 200 (/train/accommodation/list) |
办理入住/退宿流转 | PASS | 08_admin_accommodation.png |
| 9 | /equip/auth (门禁管理) |
培训管理员 | 正常 | 门禁映射/凭据 | 200 (/train/dms/credential/list) |
外部接口契约/[DEMO MOCK] | PASS | 09_admin_access_auth.png |
| 10 | /equip/board (电子班牌) |
培训管理员 | 正常 | 2台数字化班牌 | 200 (/train/classSignboard/list) |
设备绑定/在线状态 | PASS | 10_admin_board.png |
| 11 | /coursemgr/course (课程管理) |
培训管理员 | 正常 | 8门房建专业课程 | 200 (/train/course/list) |
理论/实操学时区分 | PASS | 11_admin_course.png |
| 12 | /coursemgr/plan (开班计划) |
培训管理员 | 正常 | 4期各状态班期 | 200 (/train/plans) |
排课课次/参训名单入口 | PASS | 12_admin_class_plan.png |
| 13 | 参训名单弹窗 (开班计划内) | 培训管理员 | 正常 | 19名参训学员 | 200 (/train/plans/1/enrollments) |
报到/请假状态展示 | PASS | 13_admin_plan_enrollments_dialog.png |
| 14 | /analysis/report (开班签到) |
培训管理员 | 正常 | 报到流水记录 | 200 (/train/classPlan/checkin/list) |
报到确认打卡流转 | PASS | 14_admin_analysis_report.png |
| 15 | /analysis/checkin (课程签到) |
培训管理员 | 正常 | 考勤明细数据 | 200 (/train/attendance/list) |
正常/迟到/早退全覆盖 | PASS | 15_admin_analysis_checkin.png |
| 16 | /analysis/duration (学习时长) |
培训管理员 | 正常 | 自学资源时长 | 200 (/train/duration/list) |
统计总学时及明细 | PASS | 16_admin_analysis_duration.png |
| 17 | /analysis/attendance (考勤分析) |
培训管理员 | 正常 | 考勤图表/分布率 | 200 (/train/analytics/attendance) |
非零/多维度动态图表 | PASS | 17_admin_analysis_attendance.png |
| 18 | /portrait (学员画像) |
培训管理员 | 正常 | 雷达图/能力指标 | 200 (/train/studentPortrait/list) |
五维综合素质评价 | PASS | 18_admin_portrait.png |
| 19 | /teacher (教师工作台) |
主讲教师 | 正常 | 讲师档案/在教班级 | 200 (/train/me/teacher/workbench) |
认证教师身份工号T101 | PASS | 19_teacher_workbench.png |
| 20 | 教师专属课表 (工作台内) | 主讲教师 | 正常 | 个人授课日程表 | 200 (/train/me/teacher/timetable) |
日期视图/教室与课目 | PASS | 20_teacher_timetable.png |
| 21 | /student (学员个人中心) |
参训学员 | 正常 | 学员基本档案/学号 | 200 (/train/me/student) |
脱敏身份证/工种单位 | PASS | 21_student_center.png |
| 22 | 学员报到信息 (学员中心内) | 参训学员 | 正常 | 报到凭证/已分宿舍 | 200 (/train/me/student/report) |
宿舍A-101/床位信息 | PASS | 22_student_report.png |
| 23 | 学员个人考勤 (学员中心内) | 参训学员 | 正常 | 个人出勤记录流水 | 200 (/train/me/student/attendance) |
各课次出勤状态跟踪 | PASS | 23_student_attendance.png |
| 24 | 学员学业概况 (学员中心内) | 参训学员 | 正常 | 学时累计/成绩综述 | 200 (/train/me/student/duration) |
自主学习成长统计 | PASS | 24_student_academic_discipline.png |
四、外部 DMS 门禁对接口径与安全合规边界
在与客户对接的 27 个 DMS 外部接口中,系统严格落实数据真实性与生产安全红线原则:
- 接口真实鉴权:系统与真实 DMS 接口服务的网络与实时 Token 鉴权完全连通(
REAL_LIVE_AUTH_SUCCESS)。 - 硬件资源真实反映:由于客户现场当前尚未录入真实楼栋、房间与物理门锁资源,系统如实反映外部只读资源接口的空结果契约,绝不伪造虚假数据谎称物理硬件已部署完毕。
- 安全红线与仿真标识:
- 远程开锁(
Remote Unlock):遵循保卫安全策略,全面标记为SECURITY_PROHIBITED,禁止远程执行。 - 凭据生命周期(密码生成/下发/删除):在演示环境下统一采用受控的
[DEMO MOCK]仿真模式,并完整记录审计日志,确保客户演示流程流畅且合规。
- 远程开锁(
五、环境启动与演示维护指引
1. 启动 Clean Demo 后端运行时
# 启动指向隔离演示库 training_demo_clean 的后端进程
python3 scripts/qa/start_demo_clean_backend.py
- 后端端口:
8096 - 数据库连接:
jdbc:kingbase8://127.0.0.1:14321/training_demo_clean
2. 前端服务运行
前端工程源目录为 build_ui/,运行端口为 1024:
# 访问地址
http://localhost:1024
3. 一键重置黄金演示数据
在多次现场演示之间,如需将已修改的数据恢复至最初纯净黄金状态:
java -cp "$HOME/.m2/repository/com/kingbase/kingbase8/8.6.0/kingbase8-8.6.0.jar:." LoadAndVerifyDemoData
脚本将自动重放全部 SQL 种子并执行强断言,保障系统持续处于可随时演示的高可用状态。
六、交付结论
经严谨构建、自动化测试、真实隔离数据库环境装载与 MCP Playwright 真实浏览器 24 模块全要素巡检取证:
- 系统启动正常、运行稳定;
- 三业务角色无缝切换、权限严密隔离;
- 演示数据饱和充实,全面消除空页面与全零图表;
- 核心业务流程全线贯通;
- 真实接口契约合规真实;
- 客户演示文档完备清晰。
判定:DEMO_CANDIDATE_READY = YES,完全具备面向客户进行高质量业务演示的交付条件!