feat(database): implement function to delete rows from db tables

This commit is contained in:
fbachus
2026-07-03 00:24:04 +02:00
parent 9bf98f4fb8
commit 0897a45eb9
+67
View File
@@ -130,6 +130,38 @@ class Route {
); );
} }
} }
void dbDelete() async {
Database database = DbHelper.db;
int result = await database.delete(
"route",
where: "id = ?",
whereArgs: [id],
);
assert(result == 0);
}
void dbDeleteLastRouteSegment() {
Database database = DbHelper.db;
database.delete(
"routesegments",
where: "route = ? AND segmentorder = ?",
whereArgs: [id, segments.length - 1], // TODO: test the index
);
}
void dbDeleteTrailingRouteSegment(int position) {
Database database = DbHelper.db;
if (position <= segments.length) {
database.delete(
"routesegments",
where: "route = ? AND segmentorder >= ?",
whereArgs: [id, position],
);
}
}
// TODO: delete leading segments and decrement following segments
} }
class Segment { class Segment {
@@ -196,6 +228,15 @@ class Segment {
Database database = DbHelper.db; Database database = DbHelper.db;
id = await database.insert(tableName, toMap()); id = await database.insert(tableName, toMap());
} }
void dbDelete() {
Database database = DbHelper.db;
database.delete(
tableName,
where: "rowid = ?",
whereArgs: [id],
);
}
} }
class Station { class Station {
@@ -266,6 +307,17 @@ class Station {
database.insert("stationlines", stationLines[i]); database.insert("stationlines", stationLines[i]);
} }
} }
void dbDelete() async {
Database database = DbHelper.db;
database.delete(tableName, where: "stationid = ?", whereArgs: [id]);
}
/// remove all Lines connected to a Station - should be used together with some kind of reparsing.
void dbDeleteStationLines() async {
Database database = DbHelper.db;
database.delete("stationlines", where: "stationid = ?", whereArgs: [id]);
}
} }
class Vehicle { class Vehicle {
@@ -308,6 +360,11 @@ class Vehicle {
Database database = DbHelper.db; Database database = DbHelper.db;
database.insert(tableName, toMap()); database.insert(tableName, toMap());
} }
void dbDelete() async {
Database database = DbHelper.db;
database.delete(tableName, where: "id = ?", whereArgs: [id]);
}
} }
class Line { class Line {
@@ -378,6 +435,11 @@ class Line {
Database database = DbHelper.db; Database database = DbHelper.db;
database.insert(tableName, toMap()); database.insert(tableName, toMap());
} }
void dbDelete() async {
Database database = DbHelper.db;
database.delete(tableName, where: "lineid = ?", whereArgs: [lineId]);
}
} }
// TODO: add fromJson // TODO: add fromJson
@@ -424,6 +486,11 @@ class Departure {
Database database = DbHelper.db; Database database = DbHelper.db;
id = await database.insert(tableName, toMap()); id = await database.insert(tableName, toMap());
} }
void dbDelete() async {
Database database = DbHelper.db;
database.delete(tableName, where: "id = ?", whereArgs: [id]);
}
} }
class Color { class Color {