chore(aihr): add practice evidence migration

This commit is contained in:
2026-07-14 14:40:00 +08:00
parent a47a3edfd2
commit e0da5f0ac5
3 changed files with 36 additions and 0 deletions
@@ -0,0 +1,33 @@
-- AIHR 训练证据表迁移(MySQL 8.x)
-- 仅补齐结构,不写入业务数据;可重复执行。
CREATE TABLE IF NOT EXISTS `aihr_practice_audio` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
`tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
`session_id` varchar(100) NOT NULL COMMENT '训练会话ID',
`turn_index` int NOT NULL COMMENT '话术序号',
`role` varchar(30) NOT NULL COMMENT '音频角色',
`oss_id` bigint DEFAULT NULL COMMENT 'OSS文件ID',
`audio_url` varchar(1000) DEFAULT NULL COMMENT '音频URL',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_aihr_practice_audio` (`tenant_id`, `session_id`, `turn_index`, `role`),
KEY `idx_aihr_practice_audio_session` (`tenant_id`, `session_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='AI HR 对练音频';
CREATE TABLE IF NOT EXISTS `aihr_practice_calibration` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
`tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
`session_id` varchar(100) NOT NULL COMMENT '训练会话ID',
`reviewer` varchar(100) DEFAULT NULL COMMENT '校准人',
`original_score` int DEFAULT NULL COMMENT 'AI原始总分',
`corrected_score` int DEFAULT NULL COMMENT '人工校准总分',
`corrected_dimensions_json` text DEFAULT NULL COMMENT '校准维度JSON',
`reason` varchar(500) DEFAULT NULL COMMENT '校准原因',
`status` varchar(30) DEFAULT '已记录' COMMENT '状态',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_aihr_calibration_session` (`tenant_id`, `session_id`, `create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='AI HR 评分校准记录';
+1
View File
@@ -289,3 +289,4 @@
- 2026-07-14 BRD 4.1 面试完成门禁收紧:前端要求完成全部面试题,但后端此前只要求至少一题有效回答,部分回答仍可生成面试结果;现 `finish` 要求所有服务端题目均有非空回答,空/部分回答均不落结果表。新增部分作答回归测试和 `demo-check` marker,未修改业务数据。
- 2026-07-14 BRD 发布状态只读复核:生产根站、`/h5/`、租户列表和员工首页 API 均返回 `200`,但线上仍加载管理端 `assets/index-CJZ3Ax3Z.js` 与 H5 `assets/index-D4-NrEpb.js`;当前分支 `c4f98b9a` 的面试完成门禁修复尚未发布。本轮未执行生产静态同步、后端重启或业务数据写入。
- 2026-07-14 BRD 4.1 面试证据输入边界修复:`answer/finish` 此前接受不存在于服务端题目列表的 `questionId`,可能把伪造字段写入回答快照;现统一拒绝未知题目 ID,评分和持久化只接受本次服务端生成的题目集合。新增 answer/finish 回归测试和 `demo-check` marker,未修改业务数据。
- 2026-07-14 BRD 生产迁移资产补齐:`aihr_practice_audio`、`aihr_practice_calibration` 此前只有 reset SQL 和运行时懒建表,生产曾依赖人工建表;现新增可重复执行的 MySQL 8 版本化迁移脚本,仅补齐结构、不写入业务数据。仍需由运维在正式发布窗口执行并核对生产 schema,不能把脚本存在视为迁移已执行。
+2
View File
@@ -495,6 +495,8 @@ contains frontend/src/views/train/reviews.vue "不展示演示复盘记录或猜
contains frontend/src/api/aihr/practice.ts "/api/train/practice/export"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrPracticeSeedService.java "final_adopted_score"
contains backend/script/sql/aihr_practice_mysql8.sql "aihr_practice_calibration"
contains backend/script/sql/update/aihr_20260714_practice_evidence_mysql8.sql "aihr_practice_audio"
contains backend/script/sql/update/aihr_20260714_practice_evidence_mysql8.sql "aihr_practice_calibration"
contains frontend/src/api/aihr/practice.ts '/api/train/practice/scenarios/${id}/enabled'
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/controller/AihrPracticeController.java "/scenarios/{id}/enabled"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/controller/AihrModelController.java "@SaCheckRole"