2026-05-25: 等级体系升级(20级)+论坛二级分类+会员空间
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE `daily_reports` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`date` DATE NOT NULL,
|
||||
`title` VARCHAR(200) NOT NULL,
|
||||
`summary` TEXT NULL,
|
||||
`hot_count` INTEGER NOT NULL DEFAULT 0,
|
||||
`cover_url` VARCHAR(255) NULL,
|
||||
`status` ENUM('draft', 'published') NOT NULL DEFAULT 'draft',
|
||||
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
`updated_at` DATETIME(3) NOT NULL,
|
||||
|
||||
UNIQUE INDEX `daily_reports_date_key`(`date`),
|
||||
INDEX `daily_reports_status_idx`(`status`),
|
||||
PRIMARY KEY (`id`)
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE `daily_report_items` (
|
||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||
`report_id` INTEGER NOT NULL,
|
||||
`sort_order` INTEGER NOT NULL DEFAULT 0,
|
||||
`category` VARCHAR(20) NOT NULL DEFAULT 'tech',
|
||||
`title` VARCHAR(200) NOT NULL,
|
||||
`summary` TEXT NULL,
|
||||
`detail` TEXT NULL,
|
||||
`source_url` VARCHAR(500) NULL,
|
||||
`image_url` VARCHAR(255) NULL,
|
||||
`hot_score` INTEGER NOT NULL DEFAULT 0,
|
||||
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
|
||||
INDEX `daily_report_items_report_id_sort_order_idx`(`report_id`, `sort_order`),
|
||||
PRIMARY KEY (`id`),
|
||||
CONSTRAINT `daily_report_items_report_id_fkey` FOREIGN KEY (`report_id`) REFERENCES `daily_reports`(`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
@@ -1 +0,0 @@
|
||||
ALTER TABLE `daily_report_items` ADD COLUMN `hot_score` INT NOT NULL DEFAULT 0;
|
||||
@@ -0,0 +1,16 @@
|
||||
-- AlterEnum: Map old enum values to new 20-level system
|
||||
-- Step 1: Change the column to VARCHAR temporarily
|
||||
ALTER TABLE `users` MODIFY COLUMN `level` VARCHAR(20) NOT NULL DEFAULT 'LV01';
|
||||
|
||||
-- Step 2: Map old enum values to new ones
|
||||
UPDATE `users` SET `level` = 'LV01' WHERE `level` = 'BRONZE';
|
||||
UPDATE `users` SET `level` = 'LV03' WHERE `level` = 'SILVER';
|
||||
UPDATE `users` SET `level` = 'LV06' WHERE `level` = 'GOLD';
|
||||
UPDATE `users` SET `level` = 'LV10' WHERE `level` = 'PLATINUM';
|
||||
|
||||
-- AlterTable: Add bio field
|
||||
ALTER TABLE `users` ADD COLUMN `bio` TEXT NULL;
|
||||
|
||||
-- AlterTable: Add parentId for ForumCategory hierarchy
|
||||
ALTER TABLE `forum_categories` ADD COLUMN `parent_id` INT NULL;
|
||||
ALTER TABLE `forum_categories` ADD CONSTRAINT `forum_categories_parent_id_fkey` FOREIGN KEY (`parent_id`) REFERENCES `forum_categories`(`id`) ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
Reference in New Issue
Block a user