private static int GetLineNo(GetDepartureArrivalResponseGetDepartureArrivalResultLine departure)
        {
            if (int.TryParse(departure.Name, out var value))
            {
                //Stadsbuss
                return(value);
            }

            if (departure.LineTypeId == 2)
            {
                // SkåneExpressen
                return(int.Parse(departure.Name.Split(' ').Last()));
            }

            return(departure.LineTypeId == 32 || departure.LineTypeId == 128 ? departure.TrainNo : departure.No);
        }
        private static Departure CreateDeparture(GetDepartureArrivalResponseGetDepartureArrivalResultLine departure)
        {
            var d = new Departure()
            {
                RunNo         = departure.RunNo,
                No            = GetLineNo(departure),
                Name          = departure.Name,
                Towards       = departure.Towards,
                LineType      = departure.LineTypeName,
                DepartureTime = departure.JourneyDateTime,
            };

            d.DepartureTimeDeviation = departure?.RealTime?.RealTimeInfo?.DepTimeDeviation ?? null;

            if (d.DepartureTimeDeviation == 0)
            {
                d.DepartureTimeDeviation = null;
            }

            var deviations = new List <Deviation>();

            if (departure != null)
            {
                foreach (var deviation in departure.Deviations)
                {
                    deviations.Add(new Deviation()
                    {
                        Header     = deviation.Header,
                        ShortText  = deviation.Details,
                        Importance = deviation.Importance,
                        Urgency    = deviation.Urgency,
                        Influence  = deviation.Influence
                    });
                }
            }
            d.Deviations = deviations;

            return(d);
        }