private async void LoadRoutes() { routesReservations = new List <Routes>(); routesList = await routeManager.ListRoutesWhere(route => route.ID_User != currentUser.ID && route.Depart_Date > DateTime.Now); reservationsList = await reservationManager.GetReservationsWhere(reservation => reservation.ID_User == currentUser.ID); foreach (var reservation in reservationsList) { var route = routesList.Find(routes => routes.ID == reservation.ID_Route); if (route != null) { routesReservations.Add(route); } } if (routesReservations.Count > 0) { errorLayout.IsVisible = false; } else { errorLayout.IsVisible = true; errorLabel.Text = "No reservations available"; routesListView.BackgroundColor = Color.FromHex("#009688"); await Navigation.PopAsync(); } routesListView.ItemsSource = routesReservations; routesListView.IsRefreshing = false; }
private async void LoadRoutes() { routesListView.IsRefreshing = true; routesList = await routeManager.ListRoutesWhere(route => route.Id_User == currentUser.Id); errorLayout.Children.Clear(); if (routesList.Count == 0) { errorLayout.Children.Add(new Label { Text = "No routes available", TextColor = Color.White, FontSize = 25, HorizontalTextAlignment = TextAlignment.Center }); } else { usersRoutes = from r in routesList join u in userList on r.Id_User equals u.Id select new UserRoute() { IdRoute = r.Id, ResourceName = u.ResourceName, From = r.From, To = r.To }; routesListView.ItemsSource = usersRoutes; } routesListView.IsRefreshing = false; }
private async void LoadRoutesList() { userList = await usersManager.GetUsersWhere(user => user.Id != currentUser.Id); reservationsList = new List <Reservation>(); routesListView.IsRefreshing = true; routesList = await routeManager.ListRoutesWhere(route => route.Id_User != currentUser.Id && route.Depart_Date > DateTime.Now); reservationsList = await reservationManager.GetReservationsWhere(reservation => reservation.Id_User == currentUser.Id); foreach (var reservation in reservationsList) { routesList.Remove(routesList.Find(route => route.Id == reservation.Id_Route)); } for (int i = 0; i < routesList.Count; i++) { List <Reservation> rl = await reservationManager.GetReservationsWhere(reservation => reservation.Id_Route == routesList.ElementAt(i).Id); if (rl.Count == routesList.ElementAt(i).Capacity) { routesList.RemoveAt(i); } } if (routesList.Count != 0) { routesListView.BackgroundColor = Color.White; errorLayout.IsVisible = false; } else { errorLabel.Text = "No routes available"; errorLayout.IsVisible = true; routesListView.BackgroundColor = Color.FromHex("#009688"); } usersRoutes = from r in routesList join u in userList on r.Id_User equals u.Id select new UserRoute { IdRoute = r.Id, ResourceName = u.ResourceName, From = r.From, To = r.To }; routesListView.ItemsSource = usersRoutes; if (reservationsList.Count > 0) { ToolbarItems.Add(reservationsButton); } routesListView.IsRefreshing = false; }
private async void LoadRoutesList() { reservationsList = new List <Reservations>(); routesListView.IsRefreshing = true; routesList = await routeManager.ListRoutesWhere(route => route.ID_User != currentUser.ID && route.Depart_Date > DateTime.Now); reservationsList = await reservationManager.GetReservationsWhere(reservation => reservation.ID_User == currentUser.ID); foreach (var reservation in reservationsList) { routesList.Remove(routesList.Find(route => route.ID == reservation.ID_Route)); } for (int i = 0; i < routesList.Count; i++) { List <Reservations> rl = await reservationManager.GetReservationsWhere(reservation => reservation.ID_Route == routesList.ElementAt(i).ID); if (rl.Count == routesList.ElementAt(i).Capacity) { routesList.RemoveAt(i); } } if (routesList.Count != 0) { routesListView.BackgroundColor = Color.White; errorLayout.IsVisible = false; } else { errorLabel.Text = "No routes available"; errorLayout.IsVisible = true; routesListView.BackgroundColor = Color.FromHex("#009688"); } routesListView.ItemsSource = routesList; if (reservationsList.Count > 0) { ToolbarItems.Add(reservationsButton); } routesListView.IsRefreshing = false; }
private async void LoadRoutes() { routesReservations = new List <Route>(); userList = await usersManager.GetUsersWhere(user => user.Id != currentUser.Id); routesList = await routeManager.ListRoutesWhere(route => route.Id_User != currentUser.Id && route.Depart_Date > DateTime.Now); reservationsList = await reservationManager.GetReservationsWhere(reservation => reservation.Id_User == currentUser.Id); foreach (var reservation in reservationsList) { var route = routesList.Find(routes => routes.Id == reservation.Id_Route); if (route != null) { routesReservations.Add(route); } } if (routesReservations.Count > 0) { errorLayout.IsVisible = false; } else { errorLayout.IsVisible = true; errorLabel.Text = "No reservations available"; routesListView.BackgroundColor = Color.FromHex("#009688"); await Navigation.PopAsync(); } usersRoutes = from r in routesReservations join u in userList on r.Id_User equals u.Id select new UserRoute { IdRoute = r.Id, ResourceName = u.ResourceName, From = r.From, To = r.To }; routesListView.ItemsSource = usersRoutes; routesListView.IsRefreshing = false; }
private async void LoadRoutes() { routesListView.IsRefreshing = true; routesList = await routeManager.ListRoutesWhere(route => route.ID_User == currentUser.ID); errorLayout.Children.Clear(); if (routesList.Count == 0) { errorLayout.Children.Add(new Label { Text = "No routes available", TextColor = Color.White, FontSize = 25, HorizontalTextAlignment = TextAlignment.Center }); } else { routesListView.ItemsSource = routesList; } routesListView.IsRefreshing = false; }