19 lines
1.0 KiB
SQL
19 lines
1.0 KiB
SQL
CREATE TABLE IF NOT EXISTS `video_upload_audits` (
|
|
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
`uuid` CHAR(36) NOT NULL UNIQUE,
|
|
`teacher_id` BIGINT UNSIGNED NOT NULL,
|
|
`course_id` BIGINT UNSIGNED NULL,
|
|
`lesson_id` BIGINT UNSIGNED NULL,
|
|
`file_sha256` CHAR(64) NOT NULL,
|
|
`original_filename` VARCHAR(500) NOT NULL,
|
|
`decision` ENUM('approved', 'needs_manual_review', 'rejected') NOT NULL,
|
|
`report_json` JSON NOT NULL,
|
|
`created_at` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_video_upload_audits_teacher` (`teacher_id`),
|
|
KEY `idx_video_upload_audits_decision` (`decision`),
|
|
CONSTRAINT `fk_video_upload_audits_teacher` FOREIGN KEY (`teacher_id`) REFERENCES `teachers` (`id`) ON DELETE CASCADE,
|
|
CONSTRAINT `fk_video_upload_audits_course` FOREIGN KEY (`course_id`) REFERENCES `courses` (`id`) ON DELETE SET NULL,
|
|
CONSTRAINT `fk_video_upload_audits_lesson` FOREIGN KEY (`lesson_id`) REFERENCES `lessons` (`id`) ON DELETE SET NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|