feat: add match live table foundation

This commit is contained in:
hajimi
2026-06-21 11:11:48 +08:00
parent 5a8585d027
commit ee4f2504bd
3 changed files with 77 additions and 0 deletions
@@ -0,0 +1,44 @@
<?php
$root = dirname(__DIR__, 2);
$sqlPath = $root . '/docs/sql/create_match_live_table.sql';
$modelPath = $root . '/server/app/common/model/match/MatchLive.php';
if (!is_file($sqlPath)) {
fwrite(STDERR, "missing sql file\n");
exit(1);
}
if (!is_file($modelPath)) {
fwrite(STDERR, "missing model file\n");
exit(1);
}
$sql = file_get_contents($sqlPath);
$model = file_get_contents($modelPath);
$requiredSql = [
'CREATE TABLE `la_match_live`',
'`match_id` int UNSIGNED NOT NULL',
'`source_url` varchar(500)',
'`play_url_m3u8` varchar(1000)',
'`play_url_hd_m3u8` varchar(1000)',
'`play_url_flv` varchar(1000)',
'`play_url_hd_flv` varchar(1000)',
'`fetch_status` tinyint',
'UNIQUE KEY `uk_match_source_url` (`match_id`, `source_url`)',
];
foreach ($requiredSql as $needle) {
if (strpos($sql, $needle) === false) {
fwrite(STDERR, "missing sql token: {$needle}\n");
exit(1);
}
}
if (strpos($model, "protected \$name = 'match_live';") === false) {
fwrite(STDERR, "model table name mismatch\n");
exit(1);
}
echo "schema static checks passed\n";