diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 22f3728..4e44282 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -3,6 +3,7 @@
 spring.datasource.url=jdbc:mysql://localhost:3306/g8backend
 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
 spring.sql.init.mode=always
+#logging.level.root=DEBUG
 
 mybatis-plus.mapper-locations=classpath*:/mapper/**/*.xml
 
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index 607d353..a6860f1 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -1,11 +1,66 @@
-# # 后面统一数据库数据用
-#
-# # tags表父标签
-# INSERT INTO `tags` (tag_id, tag_name, parent_id) VALUES (1, '电影', NULL);
-# INSERT INTO `tags` (tag_id, tag_name, parent_id) VALUES (2, '游戏', NULL);
-# INSERT INTO `tags` (tag_id, tag_name, parent_id) VALUES (3, '音乐', NULL);
-#
-# # tags表子标签
-# INSERT INTO `tags` (tag_id, tag_name, parent_id) VALUES (4, '动作', 1);
-# INSERT INTO `tags` (tag_id, tag_name, parent_id) VALUES (5, '喜剧', 1);
-# INSERT INTO `tags` (tag_id, tag_name, parent_id) VALUES (6, '科幻', 1);
\ No newline at end of file
+-- Game 分类
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES (0, 'Game', NULL);
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES
+                                                          (1, 'android', 0),
+                                                          (2, 'mac', 0),
+                                                          (3, 'pc', 0),
+                                                          (4, 'ios', 0),
+                                                          (5, 'other', 0),
+                                                          (6, 'action', 0),
+                                                          (7, 'adventure', 0),
+                                                          (8, 'leisure', 0),
+                                                          (9, 'riddle', 0),
+                                                          (10, 'sport', 0),
+                                                          (11, 'strategy', 0),
+                                                          (12, 'table', 0);
+
+-- video 分类
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES (20, 'video', NULL);
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES
+                                                          (21, 'chinese', 20),
+                                                          (22, 'America', 20),
+                                                          (23, 'Japan', 20),
+                                                          (24, 'Korea', 20),
+                                                          (25, 'Europe', 20),
+                                                          (26, 'other', 20),
+                                                          (27, 'Short', 20),
+                                                          (28, 'plot', 20),
+                                                          (29, 'comedy', 20),
+                                                          (30, 'love', 20),
+                                                          (31, 'action', 20),
+                                                          (32, 'terror', 20),
+                                                          (33, 'science fiction', 20),
+                                                          (34, 'commit a crime', 20),
+                                                          (35, 'Thriller', 20);
+
+-- music 分类
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES (40, 'music', NULL);
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES
+                                                          (41, 'chinese', 40),
+                                                          (42, 'America', 40),
+                                                          (43, 'Japan', 40),
+                                                          (44, 'Korea', 40),
+                                                          (45, 'Europe', 40),
+                                                          (46, 'other', 40),
+                                                          (47, 'rap', 40),
+                                                          (48, 'Electric sound', 40),
+                                                          (49, 'Guofeng', 40),
+                                                          (50, 'motion', 40),
+                                                          (51, 'ballad', 40),
+                                                          (52, 'Rock and roll', 40),
+                                                          (53, 'classical', 40);
+
+-- software 分类
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES (60, 'software', NULL);
+INSERT IGNORE INTO tags (tag_id, tag_name, parent_id) VALUES
+                                                          (61, 'android', 60),
+                                                          (62, 'mac', 60),
+                                                          (63, 'pc', 60),
+                                                          (64, 'ios', 60),
+                                                          (65, 'other', 60),
+                                                          (66, 'life', 60),
+                                                          (67, 'shopping', 60),
+                                                          (68, 'video', 60),
+                                                          (69, 'music', 60),
+                                                          (70, 'read', 60),
+                                                          (71, 'system', 60);
diff --git a/src/main/resources/mapper/PostRatingMapper.xml b/src/main/resources/mapper/PostRatingMapper.xml
new file mode 100644
index 0000000..097eeb8
--- /dev/null
+++ b/src/main/resources/mapper/PostRatingMapper.xml
@@ -0,0 +1,5 @@
+<insert id="insertOrUpdate">
+    INSERT INTO post_ratings (user_id, post_id, rating)
+    VALUES (#{userId}, #{postId}, #{rating})
+    ON DUPLICATE KEY UPDATE rating = VALUES(rating)
+</insert>
\ No newline at end of file
diff --git a/src/main/resources/mapper/TorrentMapper.xml b/src/main/resources/mapper/TorrentMapper.xml
index 9b53d29..243fd92 100644
--- a/src/main/resources/mapper/TorrentMapper.xml
+++ b/src/main/resources/mapper/TorrentMapper.xml
@@ -4,8 +4,8 @@
 
 <mapper namespace="com.example.g8backend.mapper.TorrentMapper">
     <insert id="insertTorrent" >
-        INSERT INTO torrents (user_id, torrent_name, info_hash, file_size)
-        VALUES (#{userId}, #{torrentName}, UNHEX(#{infoHash}), #{fileSize})
+        INSERT INTO torrents (user_id, torrent_name, file_path, info_hash, file_size)
+        VALUES (#{userId}, #{torrentName}, #{filePath}, UNHEX(#{infoHash}), #{fileSize})
     </insert>
 
     <select id="getTorrentByInfoHash" resultType="com.example.g8backend.entity.Torrent">
@@ -13,6 +13,7 @@
             torrent_id,
             user_id,
             torrent_name,
+            file_path,
             HEX(info_hash) AS infoHash,
             file_size
         FROM torrents
@@ -24,6 +25,7 @@
             torrent_id,
             user_id,
             torrent_name,
+            file_path,
             HEX(info_hash) AS infoHash,
             file_size
         FROM torrents
diff --git a/src/main/resources/mapper/UserStatsMapper.xml b/src/main/resources/mapper/UserStatsMapper.xml
new file mode 100644
index 0000000..3560a39
--- /dev/null
+++ b/src/main/resources/mapper/UserStatsMapper.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.example.g8backend.mapper.UserStatsMapper">
+    <update id="incrementTraffic">
+        UPDATE user_stats
+        SET total_upload = total_upload + #{deltaUploaded},
+            total_download = total_download + #{deltaDownloaded}
+        WHERE passkey = #{passkey}
+    </update>
+</mapper>
\ No newline at end of file
diff --git a/src/main/resources/schema.sql b/src/main/resources/schema.sql
index c0659b3..f6d061b 100644
--- a/src/main/resources/schema.sql
+++ b/src/main/resources/schema.sql
@@ -6,11 +6,22 @@
   `email` VARCHAR(255) NOT NULL UNIQUE,
   `passkey` VARCHAR(255) NOT NULL UNIQUE
 );
--- 种子表（保持不变）
+-- 用户统计表
+CREATE TABLE IF NOT EXISTS `user_stats` (
+    user_id INT PRIMARY KEY,
+    passkey VARCHAR(255) NOT NULL UNIQUE,
+    total_upload FLOAT NOT NULL DEFAULT 0,
+    total_download FLOAT NOT NULL DEFAULT 0,
+    last_update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+    FOREIGN KEY (user_id) REFERENCES users(user_id),
+    FOREIGN KEY (passkey) REFERENCES users(passkey)
+);
+-- 种子表
 CREATE TABLE IF NOT EXISTS `torrents` (
   `torrent_id` INT AUTO_INCREMENT PRIMARY KEY,
   `user_id` INT NOT NULL,
   `torrent_name` VARCHAR(255) NOT NULL,
+  `file_path` VARCHAR(255) NOT NULL,
   `info_hash` BINARY(20) NOT NULL,
   `file_size` FLOAT NOT NULL,
   FOREIGN KEY (`user_id`) REFERENCES `users`(`user_id`)
@@ -36,17 +47,21 @@
   `view_count` INT DEFAULT 0 COMMENT '浏览数',
   `post_title` VARCHAR(255) NOT NULL,
   `post_content` TEXT NOT NULL,
+  `torrent_id` INT DEFAULT NULL,
   `post_type` ENUM('resource', 'discussion') NOT NULL,
   `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
   `last_calculated` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后热度计算时间',
+  `average_rating` DECIMAL(3,2) DEFAULT 0.00 COMMENT '帖子平均评分',
+  `rating_count` INT DEFAULT 0 COMMENT '总评分人数';
   FOREIGN KEY (`user_id`) REFERENCES `users`(`user_id`),
+  FOREIGN KEY (`torrent_id`) REFERENCES `torrents`(`torrent_id`),
   INDEX `idx_hot_score` (`hot_score`),          -- 新增热度索引
   INDEX `idx_post_type` (`post_type`)           -- 新增类型索引
 );
 -- 标签表（保持不变）
 CREATE TABLE IF NOT EXISTS `tags`(
-  `tag_id` INT AUTO_INCREMENT PRIMARY KEY,
-  `tag_name` VARCHAR(255) NOT NULL UNIQUE,
+  `tag_id` INT PRIMARY KEY,
+  `tag_name` VARCHAR(255) NOT NULL,
   `parent_id` INT DEFAULT NULL,
   FOREIGN KEY (`parent_id`) REFERENCES `tags`(`tag_id`)
 );
@@ -110,7 +125,7 @@
   FOREIGN KEY (`post_id`) REFERENCES `posts`(`post_id`),
   INDEX `idx_user_view_time` (`user_id`, `view_time` DESC)  -- 新增用户浏览时间索引
 );
-CREATE TABLE user_tag_preference (
+CREATE TABLE IF NOT EXISTS user_tag_preference (
     user_id INT NOT NULL COMMENT '用户ID',
     tag_id INT NOT NULL COMMENT '标签ID',
     weight DOUBLE DEFAULT 1.0 COMMENT '偏好权重（浏览越多权重越高）',
@@ -118,4 +133,14 @@
     PRIMARY KEY (user_id, tag_id),
     FOREIGN KEY (user_id) REFERENCES users(user_id),
     FOREIGN KEY (tag_id) REFERENCES tags(tag_id)
+);
+CREATE TABLE IF NOT EXISTS `post_ratings` (
+  `user_id` INT NOT NULL COMMENT '用户ID',
+  `post_id` INT NOT NULL COMMENT '帖子ID',
+  `rating` TINYINT NOT NULL CHECK (`rating` BETWEEN 1 AND 5) COMMENT '评分值（1-5）',
+  `rated_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '评分时间',
+  PRIMARY KEY (`user_id`, `post_id`),  -- 确保每个用户对同一帖子只能评分一次
+  FOREIGN KEY (`user_id`) REFERENCES `users`(`user_id`),
+  FOREIGN KEY (`post_id`) REFERENCES `posts`(`post_id`),
+  INDEX idx_post_ratings_post_id ON post_ratings (post_id)
 );
\ No newline at end of file
