Example #1
0
 public TripUI(string trainNumber, string direction, RoutePointUi from, RoutePointUi to, int tripId)
 {
     this.trainNumber = trainNumber;
     this.direction   = direction;
     this.from        = from;
     this.to          = to;
     this.tripId      = tripId;
 }
Example #2
0
        private static TripUI createTripUI(ArrivalTime from, ArrivalTime to)
        {
            var point = DB._db.Points.Include("Station").FirstOrDefault(x => x.id == from.point.id);
            var start = new RoutePointUi()
            {
                tripDistance = point.tripDistance,
                stayTime     = point.stayTime,
                station      = point.station,
                arrive       = from.arriveTime
            };

            point = DB._db.Points.Include("Station").FirstOrDefault(x => x.id == to.point.id);
            var finish = new RoutePointUi()
            {
                tripDistance = point.tripDistance,
                stayTime     = point.stayTime,
                station      = point.station,
                arrive       = to.arriveTime
            };

            var trip   = DB._db.Trips.Include("CarriageInformation").FirstOrDefault(x => x.id == from.trip.id);
            var route  = DB._db.Routes.FirstOrDefault(x => x.id == from.route.id);
            var tripUi = new TripUI(route.name, route.direction, start, finish, trip.id);

            tripUi.carriageType = new List <CarriageTypeUi>();
            foreach (CarriageInformation carrInform in trip.carriageInformation)
            {
                var el = DB._db.CarriageInformations.Include("CarriageType").FirstOrDefault(x => x.id == carrInform.id);
                tripUi.carriageType.Add(
                    new CarriageTypeUi()
                {
                    name        = el.carriageType.name,
                    emptySeat   = carrInform.emptySeats,
                    priceFactor = el.carriageType.priceFactor
                }
                    );
            }
            ;
            return(tripUi);
        }