feat: implemented deleting tracks, drivers, vehicles with proper data correction

This commit is contained in:
2025-01-16 01:30:32 +01:00
parent 1df2b155f3
commit a88c9e5ff7
9 changed files with 337 additions and 152 deletions

View File

@ -1,6 +1,6 @@
from sqlalchemy.orm import Session
from modules.geoObjects import Vehicle
from modules.geoObjects import Track, Vehicle
class VehicleHandler:
dbSession: Session
@ -42,3 +42,15 @@ class VehicleHandler:
]
return driverList
def deleteVehicle(self, id):
try:
updated_rows = (
self.dbSession.query(Track).filter(
Track.vehicle_id == id).update({Track.vehicle_id: 1})
)
self.dbSession.query(Vehicle).filter(Vehicle.id == id).delete()
self.dbSession.commit()
except Exception as e:
raise RuntimeError(f"failed to delete driver due to error: {e}")