perf: 支持课程补录

This commit is contained in:
richarjiang
2026-09-08 15:08:29 +08:00
parent d1f193e13e
commit b4b3caac70
24 changed files with 1074 additions and 945 deletions

View File

@@ -0,0 +1,27 @@
-- CreateTable
CREATE TABLE `lesson_supplements` (
`id` VARCHAR(191) NOT NULL,
`user_id` VARCHAR(191) NOT NULL,
`request_id` VARCHAR(80) NOT NULL,
`quantity` INTEGER NOT NULL,
`membership_id` VARCHAR(191) NULL,
`deducted_times` INTEGER NOT NULL DEFAULT 0,
`card_name` VARCHAR(191) NULL,
`remark` VARCHAR(200) NULL,
`operator_id` VARCHAR(191) NOT NULL,
`operator_name` VARCHAR(191) NOT NULL,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`revoked_at` DATETIME(3) NULL,
`revoked_by` VARCHAR(191) NULL,
INDEX `lesson_supplements_user_id_revoked_at_created_at_idx`(`user_id`, `revoked_at`, `created_at`),
UNIQUE INDEX `lesson_supplements_user_id_request_id_key`(`user_id`, `request_id`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- AddForeignKey
ALTER TABLE `lesson_supplements` ADD CONSTRAINT `lesson_supplements_user_id_fkey` FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE `lesson_supplements` ADD CONSTRAINT `lesson_supplements_membership_id_fkey` FOREIGN KEY (`membership_id`) REFERENCES `memberships`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE;