feat: 更新数据库结构和链接任务逻辑

主要修改:
1. 更新`game.sql`文件,添加`system_config`表并调整多个表的`ENGINE`和`AUTO_INCREMENT`设置。
2. 在`LinkTask`实体中新增`completedPoints`字段,更新状态字段以包含`COMPLETED`状态。
3. 在`LinkTaskMapper`中新增根据设备ID和状态查询链接任务的方法。
4. 在`LinkStatusService`中更新状态描述映射,增加对`COMPLETED`状态的处理。
5. 在`DeviceStatusService`和`ScriptClient`中新增解析设备状态的方法,支持检查设备是否完成游戏。

技术细节:
- 通过数据库结构的更新,增强了系统的配置管理和链接任务的状态处理能力。
- 新增的功能支持更灵活的设备状态监控和任务管理。
This commit is contained in:
zyh
2025-08-27 16:00:43 +08:00
parent bb4136b4ab
commit c6e8953960
16 changed files with 620 additions and 55 deletions

View File

@@ -0,0 +1,20 @@
-- 数据库迁移脚本:添加 COMPLETED 状态到 link_task 表
-- 执行时间:请在维护窗口期间执行
-- 影响:修改 link_task 表的 status 字段枚举值
-- 修改 link_task 表的 status 字段,添加 'COMPLETED' 状态
-- 'COMPLETED' 状态表示用户正常完成了游戏任务
ALTER TABLE `link_task`
MODIFY COLUMN `status` enum('NEW','USING','LOGGED_IN','COMPLETED','REFUNDED','EXPIRED')
CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'NEW'
COMMENT '任务状态: NEW=新建, USING=使用中, LOGGED_IN=已登录, COMPLETED=正常完成, REFUNDED=已退款, EXPIRED=已过期';
-- 验证修改结果
-- 查看表结构确认枚举值已更新
DESCRIBE `link_task`;
-- 查看当前各状态的统计
SELECT status, COUNT(*) as count
FROM `link_task`
GROUP BY status
ORDER BY status;