-- AI 面试结果最小持久化表:finish 后保存评分结果、回答快照和维度分。 -- ponytail: one result table covers MVP history and dashboard count; split question/answer tables when audit workflows need it. CREATE TABLE IF NOT EXISTS `aihr_interview_result` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键', `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号', `session_id` varchar(100) NOT NULL COMMENT '面试会话ID', `candidate_id` varchar(80) DEFAULT NULL COMMENT '候选人ID', `candidate_name` varchar(100) DEFAULT NULL COMMENT '候选人姓名', `position_code` varchar(120) DEFAULT NULL COMMENT '岗位', `total_score` int DEFAULT NULL COMMENT '总分', `result` varchar(40) DEFAULT NULL COMMENT '结论', `suggestion` varchar(500) DEFAULT NULL COMMENT '建议', `ai_summary` varchar(1000) DEFAULT NULL COMMENT 'AI摘要', `evidence` varchar(1000) DEFAULT NULL COMMENT '评分依据', `source` varchar(40) DEFAULT NULL COMMENT '评分来源', `answers_json` text DEFAULT NULL COMMENT '候选人回答JSON', `questions_json` text DEFAULT NULL COMMENT '面试问题与回答快照JSON', `dimensions_json` text DEFAULT NULL COMMENT '维度评分JSON', `finished_time` datetime DEFAULT NULL COMMENT '完成时间', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`), UNIQUE KEY `uk_aihr_interview_session` (`tenant_id`, `session_id`), KEY `idx_aihr_interview_candidate` (`tenant_id`, `candidate_id`, `finished_time`), KEY `idx_aihr_interview_finished` (`tenant_id`, `finished_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='AI HR 面试结果';