Пример #1
0
        public void DeleteLineTrip(LineTrip trip)
        {
            var tripToDelete = DataSource.ListLineTrips.Where(t => t.LineId == trip.LineId &&
                                                              t.StartTimeRange == trip.StartTimeRange).FirstOrDefault();

            DataSource.ListLineTrips.Remove(tripToDelete);
        }
Пример #2
0
 private void addLineTripButton_Click(object sender, RoutedEventArgs e)
 {
     listLineTrips.Add(addLineTripGrid.DataContext as LineTrip);
     lineTripDataGrid.ItemsSource = from l in listLineTrips select l;
     newLineTrip = new LineTrip();
     addLineTripGrid.DataContext = newLineTrip;
 }
Пример #3
0
 public void AddLineTrip(LineTrip trip)
 {
     if (DataSource.ListLineTrips.FirstOrDefault(t => t.TripId == trip.TripId) != null)
     {
         throw new ArgumentException("Duplicate trip");
     }
     DataSource.ListLineTrips.Add(trip.Clone());
 }
Пример #4
0
 public void AddLineTrip(LineTrip trip)
 {
     if (DataSource.ListLineTrips.FirstOrDefault(t => t.LineId == trip.LineId &&
                                                 t.StartTimeRange == trip.StartTimeRange) != null)
     {
         throw new DuplicateLineTripException(GetLine(trip.LineId).BusLineNumber, trip.StartTimeRange);
     }
     DataSource.ListLineTrips.Add(trip.Clone());
 }
        public void DeleteLineTrip(int lineId, TimeSpan start)//IDL function
        {
            LineTrip cur = DataSource.LinesTrip.FirstOrDefault(curLineTrip => curLineTrip.LineId == lineId && curLineTrip.StartAt == start && !curLineTrip.Deleted);

            if (cur == null)
            {
                throw new LineTripExceptions(lineId, start, false);
            }
            cur.Deleted = true;
        }
Пример #6
0
        public UpdateBusLineWindow()
        {
            bl = BlFactory.GetBL();
            InitializeComponent();

            areaComboBox.ItemsSource = Enum.GetValues(typeof(Areas));

            newLineTrip   = new LineTrip();
            listLineTrips = new List <LineTrip>();
            addLineTripGrid.DataContext = newLineTrip;
        }
        public void UpdateLineTrip(LineTrip newLineTrip)//IDL function
        {
            LineTrip cur = DataSource.LinesTrip.FirstOrDefault(curLineTrip => curLineTrip.LineId == newLineTrip.LineId && curLineTrip.StartAt == newLineTrip.StartAt && !curLineTrip.Deleted);

            if (cur == null)
            {
                throw new LineTripExceptions(newLineTrip.LineId, newLineTrip.StartAt, false);
            }
            DataSource.LinesTrip.Remove(cur);
            DataSource.LinesTrip.Add(newLineTrip);
        }
 public void AddLineTrip(LineTrip lineTrip)//IDL function
 {
     if ((DataSource.LinesTrip.FirstOrDefault(curLine => curLine.LineId == lineTrip.LineId && curLine.StartAt == lineTrip.StartAt && !curLine.Deleted) != null))
     {
         throw new LineTripExceptions(lineTrip.LineId, lineTrip.StartAt, true);
     }
     else
     {
         DataSource.LinesTrip.Add(lineTrip.Clone());
     }
 }
        public LineTrip GetLineTrip(int lineId, TimeSpan start)//IDL function
        {
            LineTrip retValue = DataSource.LinesTrip.FirstOrDefault(curLine => curLine.LineId == lineId && curLine.StartAt == start && !curLine.Deleted);

            if (retValue != null)
            {
                return(retValue.Clone());
            }
            else
            {
                throw new LineTripExceptions(lineId, start, false);
            }
        }
Пример #10
0
        public LineTrip GetLineTrip(int lineId, int stationKey)
        {
            LineTrip trip = DataSource.ListLineTrips.Find(t => t.LineIdTrip == lineId);

            if (trip != null)
            {
                return(trip.Clone());
            }
            else
            {
                throw new ArgumentException("This trip doesn't exist");
            }
        }
Пример #11
0
        public AddBusLineWindow()
        {
            bl = BlFactory.GetBL();
            InitializeComponent();

            myLine = new BusLine();
            lineDetailsGrid.DataContext = myLine;
            newLineTrip = new LineTrip();
            addLineTripGrid.DataContext = newLineTrip;
            listLineTrips = new List <LineTrip>();

            areaComboBox.ItemsSource = Enum.GetValues(typeof(Areas));
        }
Пример #12
0
        public LineTrip GetLineTrip(int lineId, TimeSpan now)
        {
            LineTrip trip = DataSource.ListLineTrips.Find(s => s.LineId == lineId && s.StartTimeRange <= now &&
                                                          s.EndTimeRange >= now);

            if (trip != null)
            {
                return(trip.Clone());
            }
            else
            {
                int LineNumber = GetLine(lineId).BusLineNumber;
                throw new InexistantLineTripException(LineNumber, now);
            }
        }
Пример #13
0
        public TimeSpan CalculateDistance(LineTrip trip)
        {
            double      totalDist = 0;
            int         ID = GetLine(trip.LineIdTrip).Id;
            BusLine     line = GetLine(trip.LineIdTrip);
            LineStation stop1, stop2 = GetLineStation(ID, line.FirstStationKey);

            for (int i = 2; i <= GetLineStation(ID, trip.StationKey).RankInLine; i++)
            {
                stop1      = stop2;
                stop2      = GetLineStation(ID, GetAllLineStationsBy(s => s.LineId == ID && s.RankInLine == i).First().StationKey);
                totalDist += GetFollowingStations(GetStation(stop1.StationKey), GetStation(stop2.StationKey)).AverageJourneyTime;
            }
            return(TimeSpan.FromMinutes(totalDist));
        }
Пример #14
0
        public static void lineTripSetting()
        {
            ListLinesTrip = new List <LineTrip>();
            Random randTime = new Random();

            foreach (var line in ListLines)
            {
                int i = 0;
                while (i != 2)
                {
                    TimeSpan time        = new TimeSpan(randTime.Next(6, 24), randTime.Next(0, 6) * 10, 0);
                    LineTrip newLineTrip = new LineTrip()
                    {
                        Active     = true,
                        LineID     = line.LineID,
                        LineTripID = Config.LineTripID++,
                        StartAt    = time
                    };
                    ListLinesTrip.Add(newLineTrip);
                    i++;
                }
            }
        }
Пример #15
0
 public void UpdateLineTrip(LineTrip trip)
 {
     DeleteLineTrip(trip);
     AddLineTrip(trip);
 }
Пример #16
0
 public void AddLineTrip(LineTrip firstTrip, bool firstOnLine)
 {
     AddLineTrip(firstTrip);
 }
Пример #17
0
        public void DeleteLineTrip(LineTrip trip)
        {
            var tripToDelete = DataSource.ListLineTrips.Where(t => t.TripId == trip.TripId).FirstOrDefault();

            DataSource.ListLineTrips.Remove(tripToDelete);
        }