public BO.LineTrip GetLineTrip(int lineId, TimeSpan startTime) { DO.LineTrip ls = dl.GetLineTrip(lineId, startTime); if (ls != null) { return(LineTripDoBoAdapter(dl.GetLineTrip(lineId, startTime))); } else { return(null); } }
public IEnumerable <LineTiming> ListArrivalOfLine(int lineId, TimeSpan hour, int stationKey) { //Calcul of TravelTime between first station of line and our station BO.BusLine line = GetBusLine(lineId); TimeSpan durationOfTravel = DurationOfTravel(line, stationKey); DO.LineTrip myLineTrip = dl.GetLineTrip(lineId, hour); List <LineTiming> listTiming = new List <LineTiming>(); //initialize list of all timing for the specified line while (myLineTrip.StartTimeRange + durationOfTravel < hour) { myLineTrip.StartTimeRange += myLineTrip.Frequency; //we can change value of StartTimeRange thanks to Clone() } for (TimeSpan i = myLineTrip.StartTimeRange; i <= hour;) { listTiming.Add(new LineTiming { TripStart = i, LineId = myLineTrip.LineId, ExpectedTimeTillArrive = CalculateTimeOfArrival(i, durationOfTravel) }); i += myLineTrip.Frequency; } //if station is the first we want to show 2 nexts departures if (stationKey == line.FirstStationKey) { listTiming.Add(new LineTiming { TripStart = myLineTrip.StartTimeRange, LineId = myLineTrip.LineId, ExpectedTimeTillArrive = myLineTrip.StartTimeRange }); myLineTrip.StartTimeRange += myLineTrip.Frequency; listTiming.Add(new LineTiming { TripStart = myLineTrip.StartTimeRange, LineId = myLineTrip.LineId, ExpectedTimeTillArrive = myLineTrip.StartTimeRange }); } return(listTiming); }
DO.LineTrip LineTripBoDoAdapter(BO.LineTrip lineTripBo) { DO.LineTrip lineTripDo = new DO.LineTrip(); lineTripBo.CopyPropertiesTo(lineTripDo); return(lineTripDo); }
BO.LineTrip LineTripDoBoAdapter(DO.LineTrip lineTripDo) { BO.LineTrip lineTripBo = new BO.LineTrip(); lineTripDo.CopyPropertiesTo(lineTripBo); return(lineTripBo); }