-- 同开发者应用(应用墙):popadmin 可配,客户端 Discover / 福利页展示。 CREATE TABLE IF NOT EXISTS t_developer_apps ( id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT '自增 id', source_app_code VARCHAR(64) NOT NULL DEFAULT 'spark' COMMENT '来源 App 编码(spark|sleepheart|…)', target_app_name VARCHAR(128) NOT NULL DEFAULT '' COMMENT '展示名称', target_package_name VARCHAR(256) NOT NULL DEFAULT '' COMMENT '包名 / Bundle ID', subtitle VARCHAR(256) NOT NULL DEFAULT '' COMMENT '副标题', icon_url VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '图标 URL', store_url VARCHAR(1024) NOT NULL DEFAULT '' COMMENT 'App Store / 下载链接', fallback_url VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '备用跳转链接', schema_url VARCHAR(512) NOT NULL DEFAULT '' COMMENT 'URL Scheme / 深链', sort_order INT NOT NULL DEFAULT 0 COMMENT '越小越靠前', enabled TINYINT(1) NOT NULL DEFAULT 1 COMMENT '1=上架', updated_at DATETIME(3) NOT NULL COMMENT '更新时间', UNIQUE KEY uk_dev_apps_source_pkg (source_app_code, target_package_name), KEY idx_dev_apps_source (source_app_code, enabled, sort_order) ) COMMENT='同开发者推荐应用列表'; INSERT INTO t_developer_apps (source_app_code, target_app_name, target_package_name, subtitle, icon_url, store_url, fallback_url, schema_url, sort_order, enabled, updated_at) VALUES ('spark', 'Flipclock桌面翻页时钟', 'com.wyrs.flipclock', '桌面翻页时钟小组件', 'https://www.wyrs365.com/assets/logo-flipclock.png', 'https://www.wyrs365.com/flipclock', 'https://www.wyrs365.com/flipclock', '', 10, 1, CURRENT_TIMESTAMP(3)), ('spark', '手指测心率', 'com.wyrs.heartrate', '指尖 PPG 测心率', 'https://www.wyrs365.com/assets/logo-heartrate.png', 'https://www.wyrs365.com/heartrate', 'https://www.wyrs365.com/heartrate', '', 20, 1, CURRENT_TIMESTAMP(3)), ('spark', '猪咪记账记事本', 'com.wyrs.piggy', '记账 · 倒数日 · 小组件', 'https://www.wyrs365.com/assets/logo-piggy-account.png', 'https://www.wyrs365.com/piggy-account', 'https://www.wyrs365.com/piggy-account', '', 30, 1, CURRENT_TIMESTAMP(3)), ('spark', '鼾声分贝仪', 'com.wyrs.snore', '鼾声检测与分贝测量', 'https://www.wyrs365.com/assets/logo-piggy-account.png', 'https://www.wyrs365.com/decibel', 'https://www.wyrs365.com/decibel', '', 40, 1, CURRENT_TIMESTAMP(3)), ('spark', '微雨LedBanner', 'com.wyrs.ledbanner', 'LED 滚动灯牌', 'https://www.wyrs365.com/assets/logo-piggy-account.png', 'https://www.wyrs365.com/led-banner', 'https://www.wyrs365.com/led-banner', '', 50, 1, CURRENT_TIMESTAMP(3)), ('sleepheart', 'Flipclock桌面翻页时钟', 'com.wyrs.flipclock', '桌面翻页时钟小组件', 'https://www.wyrs365.com/assets/logo-flipclock.png', 'https://www.wyrs365.com/flipclock', 'https://www.wyrs365.com/flipclock', '', 10, 1, CURRENT_TIMESTAMP(3)), ('sleepheart', '手指测心率', 'com.wyrs.heartrate', '指尖 PPG 测心率', 'https://www.wyrs365.com/assets/logo-heartrate.png', 'https://www.wyrs365.com/heartrate', 'https://www.wyrs365.com/heartrate', '', 20, 1, CURRENT_TIMESTAMP(3)), ('sleepheart', '猪咪记账记事本', 'com.wyrs.piggy', '记账 · 倒数日 · 小组件', 'https://www.wyrs365.com/assets/logo-piggy-account.png', 'https://www.wyrs365.com/piggy-account', 'https://www.wyrs365.com/piggy-account', '', 30, 1, CURRENT_TIMESTAMP(3)), ('sleepheart', '鼾声分贝仪', 'com.wyrs.snore', '鼾声检测与分贝测量', 'https://www.wyrs365.com/assets/logo-piggy-account.png', 'https://www.wyrs365.com/decibel', 'https://www.wyrs365.com/decibel', '', 40, 1, CURRENT_TIMESTAMP(3)), ('sleepheart', '微雨LedBanner', 'com.wyrs.ledbanner', 'LED 滚动灯牌', 'https://www.wyrs365.com/assets/logo-piggy-account.png', 'https://www.wyrs365.com/led-banner', 'https://www.wyrs365.com/led-banner', '', 50, 1, CURRENT_TIMESTAMP(3)) ON DUPLICATE KEY UPDATE target_app_name = VALUES(target_app_name), subtitle = VALUES(subtitle), icon_url = IF(icon_url = '' OR icon_url IS NULL, VALUES(icon_url), icon_url), store_url = IF(store_url = '' OR store_url IS NULL, VALUES(store_url), store_url), fallback_url = IF(fallback_url = '' OR fallback_url IS NULL, VALUES(fallback_url), fallback_url), sort_order = VALUES(sort_order), enabled = VALUES(enabled), updated_at = CURRENT_TIMESTAMP(3);