diff --git "a/\345\274\200\345\217\221\346\226\207\346\241\243/create.sql" "b/\345\274\200\345\217\221\346\226\207\346\241\243/create.sql"
index 74b40c5..12d9233 100644
--- "a/\345\274\200\345\217\221\346\226\207\346\241\243/create.sql"
+++ "b/\345\274\200\345\217\221\346\226\207\346\241\243/create.sql"
@@ -1,182 +1,191 @@
 -- 用户表
 CREATE TABLE `User` (
-  `user_id` VARCHAR(36) NOT NULL,
-  `email` VARCHAR(255) NOT NULL,
-  `username` VARCHAR(100) NOT NULL,
-  `password` VARCHAR(255) NOT NULL,
-  `gender` ENUM('m','f') NOT NULL,
-  `school` VARCHAR(255) DEFAULT NULL,
-  `avatar_url` VARCHAR(255) DEFAULT NULL,
-  `bio` TEXT,
-  `account_status` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0=正常,1=被ban',
-  `invite_left` INT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`user_id`,`email`),
-  UNIQUE KEY `uniq_email` (`email`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `user_id` VARCHAR(36) NOT NULL,
+    `email` VARCHAR(255) NOT NULL,
+    `username` VARCHAR(100) NOT NULL,
+    `password` VARCHAR(255) NOT NULL,
+    `gender` ENUM('m', 'f') NOT NULL,
+    `school` VARCHAR(255) DEFAULT NULL,
+    `avatar_url` VARCHAR(255) DEFAULT NULL,
+    `bio` TEXT,
+    `account_status` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0=正常,1=被ban',
+    `invite_left` INT NOT NULL DEFAULT 0,
+    PRIMARY KEY (`user_id`, `email`),
+    UNIQUE KEY `uniq_email` (`email`)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 用户邀请表
 CREATE TABLE `UserInvite` (
-  `user_id` VARCHAR(36) NOT NULL,
-  `inviter_email` VARCHAR(255) NOT NULL,
-  `inviter_registered` TINYINT(1) NOT NULL DEFAULT 0,
-  PRIMARY KEY (`user_id`,`inviter_email`),
-  CONSTRAINT `fk_ui_user` FOREIGN KEY (`user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `user_id` VARCHAR(36) NOT NULL,
+    `inviter_email` VARCHAR(255) NOT NULL,
+    `inviter_registered` TINYINT(1) NOT NULL DEFAULT 0,
+    PRIMARY KEY (`user_id`, `inviter_email`),
+    CONSTRAINT `fk_ui_user` FOREIGN KEY (`user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 用户 PT 信息表
 CREATE TABLE `UserPT` (
-  `user_id` VARCHAR(36) NOT NULL,
-  `magic` INT NOT NULL DEFAULT 0,
-  `uploaded` BIGINT NOT NULL DEFAULT 0,
-  `downloaded` BIGINT NOT NULL DEFAULT 0,
-  `ratio` DECIMAL(5,2) NOT NULL DEFAULT 0.00,
-  `default_seed_path` VARCHAR(255) DEFAULT NULL,
-  `vip_downloads` INT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`user_id`),
-  CONSTRAINT `fk_pt_user` FOREIGN KEY (`user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `user_id` VARCHAR(36) NOT NULL,
+    `magic` INT NOT NULL DEFAULT 0,
+    `uploaded` BIGINT NOT NULL DEFAULT 0,
+    `downloaded` BIGINT NOT NULL DEFAULT 0,
+    `ratio` DECIMAL(5, 2) NOT NULL DEFAULT 0.00,
+    `default_seed_path` VARCHAR(255) DEFAULT NULL,
+    `vip_downloads` INT NOT NULL DEFAULT 0,
+    PRIMARY KEY (`user_id`),
+    CONSTRAINT `fk_pt_user` FOREIGN KEY (`user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 种子表
 CREATE TABLE `Seed` (
-  `seed_id` VARCHAR(64) NOT NULL,
-  `owner_user_id` VARCHAR(36) NOT NULL,
-  `fake_hits` INT NOT NULL DEFAULT 0,
-  `last_fake_check` DATETIME DEFAULT NULL,
-  `external_url` VARCHAR(255) DEFAULT NULL,
-  `title` VARCHAR(255) NOT NULL,
-  `subtitle` VARCHAR(255) DEFAULT NULL,
-  `size` VARCHAR(50) NOT NULL,
-  `tags` VARCHAR(255) DEFAULT NULL,
-  `popularity` INT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`seed_id`),
-  CONSTRAINT `fk_seed_user` FOREIGN KEY (`owner_user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `seed_id` VARCHAR(64) NOT NULL,
+    `owner_user_id` VARCHAR(36) NOT NULL,
+    `fake_hits` INT NOT NULL DEFAULT 0,
+    `last_fake_check` DATETIME DEFAULT NULL,
+    `external_url` VARCHAR(255) DEFAULT NULL,
+    `title` VARCHAR(255) NOT NULL,
+    `subtitle` VARCHAR(255) DEFAULT NULL,
+    `size` VARCHAR(50) NOT NULL,
+    `tags` VARCHAR(255) DEFAULT NULL,
+    `popularity` INT NOT NULL DEFAULT 0,
+    PRIMARY KEY (`seed_id`),
+    CONSTRAINT `fk_seed_user` FOREIGN KEY (`owner_user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 种子下载表
 CREATE TABLE `SeedDownload` (
-  `task_id` VARCHAR(64) NOT NULL,
-  `user_id` VARCHAR(36) NOT NULL,
-  `seed_id` VARCHAR(64) NOT NULL,
-  `download_start` DATETIME NOT NULL,
-  `download_end` DATETIME DEFAULT NULL,
-  `is_dedicated` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0=普通,1=专线',
-  `client_ip` VARCHAR(45) DEFAULT NULL,
-  PRIMARY KEY (`task_id`),
-  CONSTRAINT `fk_sd_user` FOREIGN KEY (`user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE,
-  CONSTRAINT `fk_sd_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed`(`seed_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `task_id` VARCHAR(64) NOT NULL,
+    `user_id` VARCHAR(36) NOT NULL,
+    `seed_id` VARCHAR(64) NOT NULL,
+    `download_start` DATETIME NOT NULL,
+    `download_end` DATETIME DEFAULT NULL,
+    `is_dedicated` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0=普通,1=专线',
+    `client_ip` VARCHAR(45) DEFAULT NULL,
+    PRIMARY KEY (`task_id`),
+    CONSTRAINT `fk_sd_user` FOREIGN KEY (`user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE,
+    CONSTRAINT `fk_sd_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed` (`seed_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 缓存种子数据表
 CREATE TABLE `VipSeed` (
-  `seed_id` VARCHAR(64) NOT NULL,
-  `seeder_count` INT NOT NULL DEFAULT 0,
-  `reward_magic` INT NOT NULL DEFAULT 0,
-  `stop_caching` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0=继续缓存,1=不缓存',
-  PRIMARY KEY (`seed_id`),
-  CONSTRAINT `fk_vip_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed`(`seed_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `seed_id` VARCHAR(64) NOT NULL,
+    `seeder_count` INT NOT NULL DEFAULT 0,
+    `reward_magic` INT NOT NULL DEFAULT 0,
+    `stop_caching` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0=继续缓存,1=不缓存',
+    PRIMARY KEY (`seed_id`),
+    CONSTRAINT `fk_vip_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed` (`seed_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 传输信息表
 CREATE TABLE `Transport` (
-  `task_id` VARCHAR(64) NOT NULL,
-  `uploader_id` VARCHAR(36) NOT NULL,
-  `downloader_id` VARCHAR(36) NOT NULL,
-  `seed_id` VARCHAR(64) NOT NULL,
-  `uploaded` BIGINT NOT NULL DEFAULT 0,
-  `downloaded` BIGINT NOT NULL DEFAULT 0,
-  `upload_peak` BIGINT NOT NULL DEFAULT 0,
-  `download_peak` BIGINT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`task_id`, `uploader_id`, `downloader_id`),
-  CONSTRAINT `fk_tr_user_up` FOREIGN KEY (`uploader_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE,
-  CONSTRAINT `fk_tr_user_down` FOREIGN KEY (`downloader_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE,
-  CONSTRAINT `fk_tr_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed`(`seed_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `task_id` VARCHAR(64) NOT NULL,
+    `uploader_id` VARCHAR(36) NOT NULL,
+    `downloader_id` VARCHAR(36) NOT NULL,
+    `seed_id` VARCHAR(64) NOT NULL,
+    `uploaded` BIGINT NOT NULL DEFAULT 0,
+    `downloaded` BIGINT NOT NULL DEFAULT 0,
+    `upload_peak` BIGINT NOT NULL DEFAULT 0,
+    `download_peak` BIGINT NOT NULL DEFAULT 0,
+    PRIMARY KEY (
+        `task_id`,
+        `uploader_id`,
+        `downloader_id`
+    ),
+    CONSTRAINT `fk_tr_user_up` FOREIGN KEY (`uploader_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE,
+    CONSTRAINT `fk_tr_user_down` FOREIGN KEY (`downloader_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE,
+    CONSTRAINT `fk_tr_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed` (`seed_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 求种任务表
 CREATE TABLE `BegSeed` (
-  `beg_id` VARCHAR(64) NOT NULL,
-  `beg_count` INT NOT NULL DEFAULT 0,
-  `reward_magic` INT NOT NULL DEFAULT 0,
-  `deadline` DATETIME NOT NULL,
-  `has_match` TINYINT(1) NOT NULL DEFAULT 0,
-  PRIMARY KEY (`beg_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `beg_id` VARCHAR(64) NOT NULL,
+    `beg_count` INT NOT NULL DEFAULT 0,
+    `reward_magic` INT NOT NULL DEFAULT 0,
+    `deadline` DATETIME NOT NULL,
+    `has_match` TINYINT(1) NOT NULL DEFAULT 0,
+    PRIMARY KEY (`beg_id`)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 提交悬赏任务表
 CREATE TABLE `SubmitSeed` (
-  `beg_id` VARCHAR(64) NOT NULL,
-  `seed_id` VARCHAR(64) NOT NULL,
-  `votes` INT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`beg_id`,`seed_id`),
-  CONSTRAINT `fk_ss_beg` FOREIGN KEY (`beg_id`) REFERENCES `BegSeed`(`beg_id`) ON DELETE CASCADE,
-  CONSTRAINT `fk_ss_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed`(`seed_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `beg_id` VARCHAR(64) NOT NULL,
+    `seed_id` VARCHAR(64) NOT NULL,
+    `votes` INT NOT NULL DEFAULT 0,
+    PRIMARY KEY (`beg_id`, `seed_id`),
+    CONSTRAINT `fk_ss_beg` FOREIGN KEY (`beg_id`) REFERENCES `BegSeed` (`beg_id`) ON DELETE CASCADE,
+    CONSTRAINT `fk_ss_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed` (`seed_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 帖子表
 CREATE TABLE `Post` (
-  `post_id` VARCHAR(64) NOT NULL,
-  `title` VARCHAR(255) NOT NULL,
-  `content` TEXT NOT NULL,
-  `author_id` VARCHAR(36) NOT NULL,
-  `created_at` DATETIME NOT NULL,
-  `reply_count` INT NOT NULL DEFAULT 0,
-  `view_count` INT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`post_id`),
-  CONSTRAINT `fk_post_user` FOREIGN KEY (`author_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `post_id` VARCHAR(64) NOT NULL,
+    `title` VARCHAR(255) NOT NULL,
+    `content` TEXT NOT NULL,
+    `author_id` VARCHAR(36) NOT NULL,
+    `created_at` DATETIME NOT NULL,
+    `reply_count` INT NOT NULL DEFAULT 0,
+    `view_count` INT NOT NULL DEFAULT 0,
+    PRIMARY KEY (`post_id`),
+    CONSTRAINT `fk_post_user` FOREIGN KEY (`author_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 帖子回复表
 CREATE TABLE `PostReply` (
-  `reply_id` VARCHAR(64) NOT NULL,
-  `post_id` VARCHAR(64) NOT NULL,
-  `content` TEXT NOT NULL,
-  `author_id` VARCHAR(36) NOT NULL,
-  `created_at` DATETIME NOT NULL,
-  PRIMARY KEY (`reply_id`),
-  CONSTRAINT `fk_pr_post` FOREIGN KEY (`post_id`) REFERENCES `Post`(`post_id`) ON DELETE CASCADE,
-  CONSTRAINT `fk_pr_user` FOREIGN KEY (`author_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `reply_id` VARCHAR(64) NOT NULL,
+    `post_id` VARCHAR(64) NOT NULL,
+    `content` TEXT NOT NULL,
+    `author_id` VARCHAR(36) NOT NULL,
+    `created_at` DATETIME NOT NULL,
+    PRIMARY KEY (`reply_id`),
+    CONSTRAINT `fk_pr_post` FOREIGN KEY (`post_id`) REFERENCES `Post` (`post_id`) ON DELETE CASCADE,
+    CONSTRAINT `fk_pr_user` FOREIGN KEY (`author_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 公告表
 CREATE TABLE `Announcement` (
-  `announce_id` VARCHAR(64) NOT NULL,
-  `content` TEXT NOT NULL,
-  `is_public` TINYINT(1) NOT NULL DEFAULT 0,
-  `tag` VARCHAR(100) DEFAULT NULL,
-  PRIMARY KEY (`announce_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `announce_id` VARCHAR(64) NOT NULL,
+    `content` TEXT NOT NULL,
+    `is_public` TINYINT(1) NOT NULL DEFAULT 0,
+    `tag` VARCHAR(100) DEFAULT NULL,
+    PRIMARY KEY (`announce_id`)
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 用户收藏夹表
 CREATE TABLE `UserFavorite` (
-  `user_id` VARCHAR(36) NOT NULL,
-  `seed_id` VARCHAR(64) NOT NULL,
-  PRIMARY KEY (`user_id`,`seed_id`),
-  CONSTRAINT `fk_uf_user` FOREIGN KEY (`user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE,
-  CONSTRAINT `fk_uf_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed`(`seed_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `user_id` VARCHAR(36) NOT NULL,
+    `seed_id` VARCHAR(64) NOT NULL,
+    `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
+    PRIMARY KEY (`user_id`, `seed_id`),
+    CONSTRAINT `fk_uf_user` FOREIGN KEY (`user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE,
+    CONSTRAINT `fk_uf_seed` FOREIGN KEY (`seed_id`) REFERENCES `Seed` (`seed_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 用户迁移表
 CREATE TABLE `UserMigration` (
-  `migration_id` VARCHAR(64) NOT NULL,
-  `user_id` VARCHAR(36) NOT NULL,
-  `application_url` VARCHAR(255) NOT NULL,
-  `approved` TINYINT(1) NOT NULL DEFAULT 0,
-  `pending_magic` INT NOT NULL DEFAULT 0,
-  `granted_magic` INT NOT NULL DEFAULT 0,
-  `pending_uploaded` BIGINT NOT NULL DEFAULT 0,
-  `granted_uploaded` BIGINT NOT NULL DEFAULT 0,
-  PRIMARY KEY (`migration_id`),
-  CONSTRAINT `fk_um_user` FOREIGN KEY (`user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+    `migration_id` VARCHAR(64) NOT NULL,
+    `user_id` VARCHAR(36) NOT NULL,
+    `application_url` VARCHAR(255) NOT NULL,
+    `approved` TINYINT(1) NOT NULL DEFAULT 0,
+    `pending_magic` INT NOT NULL DEFAULT 0,
+    `granted_magic` INT NOT NULL DEFAULT 0,
+    `pending_uploaded` BIGINT NOT NULL DEFAULT 0,
+    `granted_uploaded` BIGINT NOT NULL DEFAULT 0,
+    PRIMARY KEY (`migration_id`),
+    CONSTRAINT `fk_um_user` FOREIGN KEY (`user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
 
 -- 悬赏任务用户投票表
 CREATE TABLE `UserVotes` (
-  `user_id` VARCHAR(36) NOT NULL,
-  `beg_id` VARCHAR(64) NOT NULL,
-  `seed_id` VARCHAR(64) NOT NULL,
-  `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
-  PRIMARY KEY (`user_id`, `beg_id`, `seed_id`),
-  FOREIGN KEY (`user_id`) REFERENCES `User`(`user_id`) ON DELETE CASCADE,
-  FOREIGN KEY (`beg_id`) REFERENCES `BegSeed`(`beg_id`) ON DELETE CASCADE,
-  FOREIGN KEY (`seed_id`) REFERENCES `Seed`(`seed_id`) ON DELETE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
\ No newline at end of file
+    `user_id` VARCHAR(36) NOT NULL,
+    `beg_id` VARCHAR(64) NOT NULL,
+    `seed_id` VARCHAR(64) NOT NULL,
+    `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+    PRIMARY KEY (
+        `user_id`,
+        `beg_id`,
+        `seed_id`
+    ),
+    FOREIGN KEY (`user_id`) REFERENCES `User` (`user_id`) ON DELETE CASCADE,
+    FOREIGN KEY (`beg_id`) REFERENCES `BegSeed` (`beg_id`) ON DELETE CASCADE,
+    FOREIGN KEY (`seed_id`) REFERENCES `Seed` (`seed_id`) ON DELETE CASCADE
+) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
\ No newline at end of file
