hyapp-server/server/admin/migrations/042_admin_app_splash_screens.sql
2026-06-09 22:08:52 +08:00

51 lines
2.6 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 开屏配置和 Banner 共用投放维度但没有显示范围和房间小图gateway 只读取当前有效窗口。
SET @now_ms = CAST(UNIX_TIMESTAMP(UTC_TIMESTAMP(3)) * 1000 AS UNSIGNED);
CREATE TABLE IF NOT EXISTS admin_app_splash_screens (
id BIGINT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT '主键 ID',
app_code VARCHAR(32) NOT NULL DEFAULT 'lalu' COMMENT '应用编码,用于多租户隔离',
cover_url VARCHAR(1024) NOT NULL COMMENT '开屏图片 URL',
splash_type VARCHAR(16) NOT NULL COMMENT '开屏跳转类型',
param VARCHAR(2048) NOT NULL DEFAULT '' COMMENT '跳转参数',
status VARCHAR(24) NOT NULL DEFAULT 'active' COMMENT '业务状态',
platform VARCHAR(24) NOT NULL COMMENT '平台',
sort_order INT NOT NULL DEFAULT 0 COMMENT '排序权重,数值越小越靠前',
region_id BIGINT NOT NULL DEFAULT 0 COMMENT '区域 ID0 表示全部区域',
country_code VARCHAR(8) NOT NULL DEFAULT '' COMMENT '国家或地区编码,空表示全部国家',
description VARCHAR(255) NOT NULL DEFAULT '' COMMENT '描述信息',
starts_at_ms BIGINT NOT NULL DEFAULT 0 COMMENT '投放开始时间UTC epoch ms',
ends_at_ms BIGINT NOT NULL DEFAULT 0 COMMENT '投放结束时间UTC epoch ms',
created_at_ms BIGINT NOT NULL COMMENT '创建时间UTC epoch ms',
updated_at_ms BIGINT NOT NULL COMMENT '更新时间UTC epoch ms',
INDEX idx_admin_app_splash_screens_app_sort (app_code, status, sort_order, id),
INDEX idx_admin_app_splash_screens_scope (app_code, platform, region_id, country_code)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='后台 App 开屏配置表';
INSERT INTO admin_menus (parent_id, title, code, path, icon, permission_code, sort, visible, created_at_ms, updated_at_ms)
SELECT parent.id, '开屏配置', 'app-config-splash-screens', '/app-config/splash-screens', 'image', 'app-config:view', 68, TRUE, @now_ms, @now_ms
FROM admin_menus parent
WHERE parent.code = 'app-config'
ON DUPLICATE KEY UPDATE
parent_id = VALUES(parent_id),
title = VALUES(title),
path = VALUES(path),
icon = VALUES(icon),
permission_code = VALUES(permission_code),
sort = VALUES(sort),
visible = VALUES(visible),
updated_at_ms = @now_ms;
UPDATE admin_menus
SET sort = 69, updated_at_ms = @now_ms
WHERE code = 'app-config-explore' AND sort < 69;
UPDATE admin_menus
SET sort = 70, updated_at_ms = @now_ms
WHERE code = 'payment-recharge-products' AND sort < 70;
UPDATE admin_menus
SET sort = 71, updated_at_ms = @now_ms
WHERE code = 'app-config-versions' AND sort < 71;