Example #1
0
        private void TripNav()
        {
            DataServiceTrip dsTrip = new DataServiceTrip();

            TripList = dsTrip.LoadTrip();
            Messenger.Default.Send <int, TripViewModel>(TripList.Find(x => x.IsActif).Id);
            _navigationService.NavigateTo("TripView");
        }
        public void HappyPathCalculateValueInDecimalPlaces()
        {
            var tripList = new TripList { Trip = new List<Trip> { new Trip { Expenses = new List<double> { 15.01, 15, 3, 3.01 } } }};
            var response = controller.CalculateTrip(tripList);

            var expectedValue = "11.99";
            string responseValue;
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsTrue(response.TryGetContentValue(out responseValue));
            Assert.AreEqual(expectedValue, responseValue);
        }
Example #3
0
        public MainPage()
        {
            this.InitializeComponent();
            CurrentTripList = new TripList();
            CurrentTripList.Add(new TripViewModel(new Trip(-1)
            {
                Name = "New trip",
                Icon = "\uE109"
            }));

            DataContext = CurrentTripList;
        }
Example #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                trip    tripOjb = new trip();
                tripDAO tripDAO = new tripDAO();

                List <trip> tripList = new List <trip>();
                tripList            = tripDAO.getTripStudyType();
                TripList.DataSource = tripList;
                TripList.DataBind();
            }
        }
Example #5
0
 public void calLRPrice()
 {
     if (TripList.Count == 0)
     {
         throw new IndexOutOfRangeException("!!TripList.Count == 0");
     }
     try {
         lr_price = 1440 + TripList.Last().EndTime - TripList[0].StartTime;
     }
     catch (IndexOutOfRangeException ex) {
         Console.WriteLine(ex.Message);
     }
 }
 public HttpResponseMessage CalculateTrip([FromBody] TripList enteredTrip)
 {
     try
     {
         //Json.NET deserializes the given JSON into a list of trips but we only get one at a time
         var trip = enteredTrip.Trip.FirstOrDefault();
         var expenseCalculator = new ExpenseCalculator();
         var amountOwed        = string.Format("{0:f2}", expenseCalculator.GetAmountOwed(trip));
         return(Request.CreateResponse(HttpStatusCode.OK, amountOwed));
     }
     catch (Exception e)
     {
         var errorMessage  = enteredTrip == null ? "Invalid data given." : e.Message;
         var errorResponse = Request.CreateResponse(HttpStatusCode.BadRequest, errorMessage);
         return(errorResponse);
     }
 }
Example #7
0
        private void GetData()
        {
            var polen = new Trip(1, "Polen", "#008a02", DateTime.Now, DateTime.Now.AddDays(5));

            TripList.Add(polen);
            var frankrijk = new Trip(2, "Frankrijk", "#d8e305", DateTime.Now, DateTime.Now.AddDays(6));

            TripList.Add(frankrijk);
            var wallonie = new Trip(3, "Wallonie", "#e30505", DateTime.Now, DateTime.Now.AddDays(7));

            TripList.Add(wallonie);
            var zweden = new Trip(4, "Zweden", "#63bef7", DateTime.Now, DateTime.Now.AddDays(5));

            TripList.Add(zweden);
            var singapore = new Trip(5, "Singapore", "#ba0ba6", DateTime.Now, DateTime.Now.AddDays(5));

            TripList.Add(singapore);
            GotDataNotSuccesfull = false;
        }
Example #8
0
        public void HappyPathCalculateNoValueInDecimalPlaces()
        {
            var tripList = new TripList {
                Trip = new List <Trip> {
                    new Trip {
                        Expenses = new List <double> {
                            10, 20, 30
                        }
                    }
                }
            };
            var response = controller.CalculateTrip(tripList);

            var    expectedValue = "10.00";
            string responseValue;

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsTrue(response.TryGetContentValue(out responseValue));
            Assert.AreEqual(expectedValue, responseValue);
        }
Example #9
0
 public void Add(Trip newTrip)
 {
     TripList.Add(newTrip);
 }
Example #10
0
 public void OpenMainPage()
 {
     CurrentTripList = new TripList();
     DataContext = CurrentTripList;
 }
Example #11
0
        public void Build()
        {
            if (AlreadyBuilt)
            {
                return;
            }

            Trips = TripList.ToArray();
            Array.Sort <Trip>(Trips, new SortByArrivalThenDepartureComparer());

            int StopsCounter = 0;

            foreach (var trip in Trips)
            {
                if (!StopIds.ContainsKey(trip.FirstStopId))
                {
                    StopIds.Add(trip.FirstStopId, StopsCounter);
                    StopsCounter++;
                }

                if (!StopIds.ContainsKey(trip.LastStopId))
                {
                    StopIds.Add(trip.LastStopId, StopsCounter);
                    StopsCounter++;
                }
            }

            DurationMatrix = new double[StopsCounter, StopsCounter];
            DistanceMatrix = new double[StopsCounter, StopsCounter];

            FillMatrixWithInitValues(StopsCounter);

            foreach (var distance in Distances)
            {
                if (!StopIds.ContainsKey(distance.Stop1Id) || !StopIds.ContainsKey(distance.Stop2Id))
                {
                    continue;
                }

                var id1 = StopIds[distance.Stop1Id];
                var id2 = StopIds[distance.Stop2Id];

                if (DurationMatrix[id1, id2] > distance.Duration)
                {
                    DurationMatrix[id1, id2] = distance.Duration;
                }

                DistanceMatrix[id1, id2] = distance.DistanceKm;
            }

            foreach (var trip in Trips)
            {
                if (!StopIds.ContainsKey(trip.FirstStopId) || !StopIds.ContainsKey(trip.LastStopId))
                {
                    continue;
                }

                var id1 = StopIds[trip.FirstStopId];
                var id2 = StopIds[trip.LastStopId];

                if (DurationMatrix[id1, id2] > trip.DepartureTime - trip.ArrivalTime)
                {
                    DurationMatrix[id1, id2] = trip.DepartureTime - trip.ArrivalTime;
                }
            }

            for (int k = 0; k < StopsCounter; k++)
            {
                for (int i = 0; i < StopsCounter; i++)
                {
                    for (int j = 0; j < StopsCounter; j++)
                    {
                        if (DurationMatrix[i, j] > DurationMatrix[i, k] + DurationMatrix[k, j])
                        {
                            DurationMatrix[i, j] = DurationMatrix[i, k] + DurationMatrix[k, j];
                        }
                    }
                }
            }

            AlreadyBuilt = true;
        }