public async Task ShowRotations() { var rotations = await _rotationsApi.Get <List <Model.Rotation> >(null); rotations.RemoveAll(r => !r.Available); var currentDate = DateTime.Now.Date; rotations.RemoveAll(r => !((currentDate > r.From) && (currentDate < r.To))); rotations.RemoveAll(r => (r.ForBirthday) && (currentDate.Date != APIService.User.BirthDate.Date)); rotations = (from item in rotations orderby item.ForBirthday descending select item).ToList(); Rotations.Clear(); foreach (var rotation in rotations) { var movie = await _moviesApi.GetById <Model.Movie>(rotation.MovieId); var show = await _showsApi.GetById <Model.Show>(rotation.ShowId); var newItem = new Model.ObservableLists.RotationItem() { Birthday = rotation.ForBirthday, From = rotation.From.Date.ToString("dd. MMMM yy"), To = rotation.To.ToString("dd. MMMM yy"), Description = rotation.Description, MovieImage = movie.ImageLink, ShowImage = show.ImageLink, RotationId = rotation.RotationId }; Rotations.Add(newItem); } }
public async Task GetData() { var notifications = await _usersApi.GetItems <List <Model.Notification> >(APIService.User.UserId, "Notifications"); if (notifications.Count == 0) { HasNotifications = "False"; } else { HasNotifications = "True"; } var orders = await _ordersApi.Get <List <Model.Order> >(null); orders.RemoveAll(o => o.UserId != APIService.User.UserId); Orders.Clear(); foreach (var order in orders) { var app = await _appsApi.GetById <Model.Appointments>(order.AppointmentId); var cdm = await _cdmsApi.GetById <Model.CinemaDayMovie>(app.CinemaDayMovieId); var movie = await _moviesApi.GetById <Model.Movie>(cdm.MovieId); var adoc = await _adocApi.GetById <Model.AiringDaysOfCinema>(cdm.AiringDaysOfCinemaId); var cinema = await _cinemaApi.GetById <Model.Cinema>(adoc.CinemaId); var ad = await _adApi.GetById <Model.AiringDay>(adoc.AiringDayId); var today = DateTime.Now.Date; if (adoc.Date >= today) { Model.ObservableLists.OrderItem newItem = new Model.ObservableLists.OrderItem() { Time = app.StartsAt, Movie = movie.Title, OrderId = order.OrderId, Total = order.Total, Date = adoc.Date.ToString("dd. MMM yyyy"), Seats = order.Tickets.Count, Cinema = cinema.Name, Day = ad.Name }; Orders.Add(newItem); } } var movies = await _usersApi.GetItems <List <Model.Movie> >(APIService.User.UserId, "Movies"); movies.Sort((a, b) => a.Title.CompareTo(b.Title)); Movies.Clear(); foreach (var movie in movies) { Movies.Add(movie); } var shows = await _usersApi.GetItems <List <Model.Show> >(APIService.User.UserId, "Shows"); shows.Sort((a, b) => a.Title.CompareTo(b.Title)); Shows.Clear(); foreach (var show in shows) { Shows.Add(show); } var subscriptions = await _usersApi.GetItems <List <Model.Subscription> >(APIService.User.UserId, "Subscriptions"); Subscriptions.Clear(); foreach (var subscription in subscriptions) { Subscriptions.Add(subscription); } var rotations = await _usersApi.GetItems <List <Model.Rotation> >(APIService.User.UserId, "Rotations"); Rotations.Clear(); foreach (var rotation in rotations) { var movie = await _moviesApi.GetById <Model.Movie>(rotation.MovieId); var show = await _showsApi.GetById <Model.Show>(rotation.ShowId); var newItem = new Model.ObservableLists.RotationItem() { Birthday = rotation.ForBirthday, From = rotation.From.Date.ToString("dd. MMMM yy"), To = rotation.To.ToString("dd. MMMM yy"), Description = rotation.Description, MovieImage = movie.ImageLink, ShowImage = show.ImageLink, RotationId = rotation.RotationId }; Rotations.Add(newItem); } }