需求:1.加入了用户积分表;2.加入了指令积分扣除功能;3.加入了积分获得与扣除注解。

This commit is contained in:
liuwei
2025-04-09 11:54:03 +08:00
parent 9b8e0c3558
commit dba9c31504
31 changed files with 1435 additions and 527 deletions

59
db/scripts/game_task.sql Normal file
View File

@@ -0,0 +1,59 @@
-- 创建数据库
CREATE DATABASE message_archive CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE message_archive;
-- 创建群聊表
CREATE TABLE t_encyclopedia_groups (
group_id VARCHAR(50) PRIMARY KEY,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB CHARACTER SET utf8mb4;
-- 创建玩家表
CREATE TABLE t_encyclopedia_players (
player_id VARCHAR(50) NOT NULL,
group_id VARCHAR(50) NOT NULL,
player_name VARCHAR(50) NOT NULL,
points INT DEFAULT 0,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (player_id, group_id)
) ENGINE=InnoDB CHARACTER SET utf8mb4;
-- 创建活跃任务表
CREATE TABLE t_encyclopedia_active_tasks (
active_task_id INT AUTO_INCREMENT PRIMARY KEY,
group_id VARCHAR(50) NOT NULL,
question VARCHAR(255) NOT NULL,
answer VARCHAR(100) NOT NULL,
score INT NOT NULL,
description TEXT,
holder_id VARCHAR(50) NOT NULL,
assigned_at DATETIME DEFAULT CURRENT_TIMESTAMP,
status ENUM('pending', 'completed') DEFAULT 'pending',
INDEX (group_id)
) ENGINE=InnoDB CHARACTER SET utf8mb4;
-- 创建任务历史表
CREATE TABLE t_encyclopedia_task_history (
history_id INT AUTO_INCREMENT PRIMARY KEY,
group_id VARCHAR(50) NOT NULL,
active_task_id INT NOT NULL,
player_id VARCHAR(50) NOT NULL,
answer VARCHAR(100) NOT NULL,
is_correct BOOLEAN DEFAULT FALSE,
points_earned INT DEFAULT 0,
completed_at DATETIME DEFAULT CURRENT_TIMESTAMP,
INDEX (group_id)
) ENGINE=InnoDB CHARACTER SET utf8mb4;
-- 初始化数据
-- 添加群聊
INSERT INTO t_encyclopedia_groups (group_id) VALUES
('group1'),
('group2');
-- 添加玩家
INSERT INTO t_encyclopedia_players (player_id, group_id, player_name) VALUES
('player1001', 'group1', '玩家1'),
('player1002', 'group1', '玩家2'),
('player2001', 'group2', '玩家A'),
('player2002', 'group2', '玩家B');

14
db/scripts/message.sql Normal file
View File

@@ -0,0 +1,14 @@
CREATE DATABASE message_archive charset utf8mb4;
USE message_archive;
CREATE TABLE messages (
id INT AUTO_INCREMENT PRIMARY KEY,
group_id varchar(20) not null ,
timestamp VARCHAR(20) NOT NULL,
sender VARCHAR(255) NOT NULL,
content TEXT NULL,
message_type VARCHAR(50) NULL,
attachment_url VARCHAR(512) DEFAULT NULL
);