主要修改: 1. 在QrProxyController中新增多个图片代理接口,包括首页、首次赏金、中途赏金和结束赏金图片的获取。 2. 更新LinkController中的链接状态查询逻辑,简化日志输出。 3. 在LinkStatusService中优化链接状态处理逻辑,增加对USING状态的过期检查。 4. 在ScriptClient中新增通用图片获取方法,支持从脚本端获取图片数据。 5. 更新SecurityConfig,允许公开访问二维码和游戏界面数据接口。 技术细节: - 新增GameInterfaceResponse DTO以支持游戏界面数据的返回格式。 - 通过脚本端接口实现图片的动态获取和链接状态的自动刷新。
35 lines
1.2 KiB
SQL
35 lines
1.2 KiB
SQL
-- 数据库迁移脚本:为link_task表添加首次选区时间字段
|
||
-- 执行时间:2025-01-XX
|
||
-- 说明:记录链接首次选区的准确时间,便于跟踪和分析
|
||
|
||
-- 为link_task表添加首次选区时间字段
|
||
ALTER TABLE `link_task`
|
||
ADD COLUMN `first_region_select_at` datetime(3) NULL DEFAULT NULL COMMENT '首次选区时间' AFTER `qr_expire_at`;
|
||
|
||
-- 添加索引以优化查询性能
|
||
ALTER TABLE `link_task`
|
||
ADD INDEX `idx_first_region_select` (`first_region_select_at` ASC);
|
||
|
||
-- 为现有USING状态的记录回填首次选区时间(使用qr_created_at作为首次选区时间)
|
||
UPDATE `link_task`
|
||
SET `first_region_select_at` = `qr_created_at`
|
||
WHERE `status` = 'USING'
|
||
AND `qr_created_at` IS NOT NULL
|
||
AND `first_region_select_at` IS NULL;
|
||
|
||
-- 验证表结构变更
|
||
SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT, COLUMN_COMMENT
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_SCHEMA = DATABASE()
|
||
AND TABLE_NAME = 'link_task'
|
||
AND COLUMN_NAME = 'first_region_select_at'
|
||
ORDER BY ORDINAL_POSITION;
|
||
|
||
-- 验证数据回填结果
|
||
SELECT
|
||
COUNT(*) as total_using_links,
|
||
COUNT(first_region_select_at) as links_with_first_select_time,
|
||
COUNT(qr_created_at) as links_with_qr_time
|
||
FROM `link_task`
|
||
WHERE `status` = 'USING';
|