update sounds ang transtions
Some checks failed
Test / test (push) Has been cancelled

This commit is contained in:
2026-06-22 17:16:36 +07:00
parent d70a4e45af
commit 523f98b74c
28 changed files with 2449 additions and 138 deletions

View File

@@ -78,6 +78,8 @@ CREATE TABLE IF NOT EXISTS sounds (
file_name TEXT,
duration_ms INTEGER,
enabled INTEGER NOT NULL DEFAULT 1,
volume INTEGER NOT NULL DEFAULT 100,
is_system INTEGER NOT NULL DEFAULT 0,
created_at TEXT NOT NULL,
updated_at TEXT NOT NULL
);
@@ -93,6 +95,19 @@ CREATE TABLE IF NOT EXISTS recordings (
FOREIGN KEY (map_id) REFERENCES maps(id) ON DELETE SET NULL
);
CREATE TABLE IF NOT EXISTS transitions (
id TEXT PRIMARY KEY,
site_id TEXT NOT NULL,
from_map_id TEXT NOT NULL,
to_map_id TEXT NOT NULL,
start_position_id TEXT NOT NULL,
goal_position_id TEXT NOT NULL,
mission_id TEXT NOT NULL,
created_by TEXT NOT NULL DEFAULT '',
created_at TEXT NOT NULL,
updated_at TEXT NOT NULL
);
CREATE TABLE IF NOT EXISTS dashboards (
id TEXT PRIMARY KEY,
name TEXT NOT NULL,
@@ -335,6 +350,51 @@ bool Database::applySchemaMigrations(std::string& err)
setMeta("schema_version", "3");
}
ver = getMeta("schema_version").value_or("1");
if (ver == "3")
{
if (!tableHasColumn(db_, "sounds", "volume"))
{
if (!execSql(db_, "ALTER TABLE sounds ADD COLUMN volume INTEGER NOT NULL DEFAULT 100", err))
return false;
}
if (!tableHasColumn(db_, "sounds", "is_system"))
{
if (!execSql(db_, "ALTER TABLE sounds ADD COLUMN is_system INTEGER NOT NULL DEFAULT 0", err))
return false;
}
setMeta("schema_version", "4");
}
ver = getMeta("schema_version").value_or("1");
if (ver == "4")
{
if (!execSql(db_,
"CREATE TABLE IF NOT EXISTS transitions ("
"id TEXT PRIMARY KEY, "
"site_id TEXT NOT NULL, "
"from_map_id TEXT NOT NULL, "
"to_map_id TEXT NOT NULL, "
"start_position_id TEXT NOT NULL, "
"goal_position_id TEXT NOT NULL, "
"mission_id TEXT NOT NULL, "
"created_by TEXT NOT NULL DEFAULT '', "
"created_at TEXT NOT NULL, "
"updated_at TEXT NOT NULL"
")",
err))
return false;
setMeta("schema_version", "5");
}
ver = getMeta("schema_version").value_or("1");
if (ver == "5")
{
if (!execSql(db_, "ALTER TABLE transitions ADD COLUMN created_by TEXT NOT NULL DEFAULT ''", err))
return false;
setMeta("schema_version", "6");
}
return true;
}