Event Timeline
Comment Actions
def origin_visit_status_get_latest( self, origin: str, visit: int, allowed_statuses: Optional[List[str]] = None, require_snapshot: bool = False ) -> Optional[Dict[str, Any]]: """Given an origin visit id, return its latest origin_visit_status. """ query = ( "SELECT * FROM origin_visit_status " "WHERE origin = %s AND visit = %s " "ORDER BY date DESC" ) rows = list(self._execute_with_retries(query, [origin, visit])) # filtering is done python side as we cannot do it server side if allowed_statuses: rows = [row for row in rows if row.status in allowed_statuses] if require_snapshot: rows = [row for row in rows if row.snapshot is not None] if not rows: return None # visit_status = max(rows, key=lambda v: (v.date, v.visit), default=None) return self._format_origin_visit_status_row(rows[0])