Added local flight duration

This commit is contained in:
2025-12-18 06:27:22 -05:00
parent f65c54109e
commit f572fb75f5
6 changed files with 33 additions and 5 deletions

View File

@@ -51,12 +51,18 @@ async def get_public_arrivals(db: Session = Depends(get_db)):
# Only include flights booked out today
if not (today_start <= flight.created_dt < today_end):
continue
# Calculate ETA from departed_dt + duration (if both are available)
eta = flight.departed_dt
if flight.departed_dt and flight.duration:
eta = flight.departed_dt + timedelta(minutes=flight.duration)
arrivals_list.append({
'ac_call': flight.callsign or flight.registration,
'ac_reg': flight.registration,
'ac_type': flight.type,
'in_from': None,
'eta': flight.departed_dt,
'eta': eta,
'landed_dt': None,
'status': 'DEPARTED',
'isLocalFlight': True,

View File

@@ -27,6 +27,7 @@ class LocalFlight(Base):
pob = Column(Integer, nullable=False) # Persons on board
flight_type = Column(SQLEnum(LocalFlightType), nullable=False, index=True)
status = Column(SQLEnum(LocalFlightStatus), nullable=False, default=LocalFlightStatus.BOOKED_OUT, index=True)
duration = Column(Integer, nullable=True) # Duration in minutes
notes = Column(Text, nullable=True)
created_dt = Column(DateTime, nullable=False, server_default=func.current_timestamp(), index=True)
etd = Column(DateTime, nullable=True, index=True) # Estimated Time of Departure

View File

@@ -23,6 +23,7 @@ class LocalFlightBase(BaseModel):
callsign: Optional[str] = None
pob: int
flight_type: LocalFlightType
duration: Optional[int] = 45 # Duration in minutes, default 45
etd: Optional[datetime] = None # Estimated Time of Departure
notes: Optional[str] = None
@@ -57,6 +58,7 @@ class LocalFlightUpdate(BaseModel):
callsign: Optional[str] = None
pob: Optional[int] = None
flight_type: Optional[LocalFlightType] = None
duration: Optional[int] = None
status: Optional[LocalFlightStatus] = None
etd: Optional[datetime] = None
departed_dt: Optional[datetime] = None