PythonRMV/pyrmv/classes/Stop.py

41 lines
1.1 KiB
Python

from datetime import datetime
class Stop():
def __init__(self, data: dict):
self.name = data["name"]
self.id = data["id"]
if "extId" in data:
self.ext_id = data["extId"]
else:
self.ext_id = None
self.lon = data["lon"]
self.lat = data["lat"]
def get_id(self) -> str:
if self.id != None:
return self.id
elif self.ext_id != None:
return self.ext_id
elif self.name != None:
return self.name
else:
return f"{self.lon}, {self.lat}"
def __str__(self) -> str:
return f"Stop {self.name} at {self.lon}, {self.lat}"
class StopTrip(Stop):
def __init__(self, data: dict):
self.type = data["type"]
self.date = datetime.strptime(data["date"], "%Y-%m-%d")
self.time = datetime.strptime(data["time"], "%H:%M:%S")
super().__init__(data)
def get_id(self) -> str:
return super().get_id()
def __str__(self) -> str:
return f"Stop {self.name} at {self.lon}, {self.lat} at {self.time.time()} {self.date.date()}"