Пример #1
0
        public SessionMovie GetSessionMovie(string sku, DateTime date)
        {
            var result          = MovieWrapperHelper.GetAsync($"{_baseUrl}/showtimes/sku/{sku}/date/{date.ToString("ddMMyyyy")}").Result;
            var data            = JsonConvert.DeserializeObject <SessionMovieCGV>(result);
            var sessionMovieCGV = data?.Data?.FirstOrDefault();

            if (sessionMovieCGV == null)
            {
                return(null);
            }

            var locations = (from location in sessionMovieCGV.Locations
                             from cinema in location.Cinemas
                             select cinema.Name).ToList();

            if (locations.Count == 0)
            {
                return(null);
            }

            return(new SessionMovie
            {
                Date = sessionMovieCGV.Date,
                Locations = locations
            });
        }
Пример #2
0
        public List <MovieGalaxy> GetShowingMovie()
        {
            var result = MovieWrapperHelper.GetAsync($"{_baseUrl}/movie/showAndComming").Result;

            return(JsonConvert.DeserializeObject <ShowingMovieGalaxy>(result)?
                   .MovieShowing?.Where(m => DateTime.Compare(m.ReleaseDate, DateTime.Today.AddDays(1)) <= 0).ToList());
        }
Пример #3
0
        public SessionMovie GetSessionMovie(string id, DateTime date)
        {
            var resultSession = MovieWrapperHelper.GetAsync($"{_baseUrl}/sessions?filmId={id}&start={date.ToString("yyyy-MM-dd")}").Result;
            var resultCinema  = MovieWrapperHelper.GetAsync($"https://booking.bhdstar.vn/WSVistaWebClient/RESTData.svc/cinemas").Result;

            string[] separator  = { "\\r" };
            var      cinemaXMLs = resultCinema.Split(separator, StringSplitOptions.RemoveEmptyEntries);
            var      cinemaBHDs = JsonConvert.DeserializeObject <List <CinemaBHD> >(resultSession);
            var      cinemaIds  = cinemaBHDs.Select(m => m.CinemaId).Distinct().ToList();
            var      locations  = new List <string>();

            foreach (var cinemaXML in cinemaXMLs)
            {
                var strList     = cinemaXML.Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
                var strDistinct = strList.Distinct().ToList();
                if (strDistinct.Count != 2 ||
                    !cinemaIds.Any(cinemaId => cinemaId.Equals(strDistinct.FirstOrDefault())))
                {
                    continue;
                }

                locations.Add(strDistinct.ElementAt(1));
            }

            return(new SessionMovie
            {
                Date = date,
                Locations = locations
            });
        }
Пример #4
0
        public List <MovieBHD> GetShowingMovie()
        {
            var result = MovieWrapperHelper.GetAsync($"{_baseUrl}/films").Result;
            var movies = JsonConvert.DeserializeObject <List <MovieBHD> >(result);

            return(movies?.Where(m => DateTime.Compare(m.ReleaseDate, DateTime.Today.AddDays(1)) <= 0).ToList());
        }
Пример #5
0
        public List <MovieCGV> GetShowingMovie()
        {
            var result       = MovieWrapperHelper.GetAsync($"{_baseUrl}/listSneakShow").Result;
            var showingMovie = JsonConvert.DeserializeObject <ShowingMovieCGV>(result);

            return(showingMovie?.Data?.Where(m => DateTime.Compare(m.ReleaseDate, DateTime.Today.AddDays(1)) <= 0)
                   .ToList());
        }
Пример #6
0
        public SessionMovie GetSessionMovie(string id, DateTime date)
        {
            var result = MovieWrapperHelper.GetAsync($"{_baseUrl}/session/movie/{id}").Result;
            var sessionMovieGalaxys = JsonConvert.DeserializeObject <List <SessionMovieGalaxy> >(result);
            var locations           = (from sessionMovie in sessionMovieGalaxys
                                       where sessionMovie.Dates != null &&
                                       sessionMovie.Dates.Any(d => d.ShowDate.Equals(date.ToString("dd/MM/yyyy")))
                                       select sessionMovie.Name).ToList();

            if (locations.Count == 0)
            {
                return(null);
            }

            return(new SessionMovie
            {
                Date = date,
                Locations = locations
            });
        }
Пример #7
0
        public MovieCGV GetDetail(string id)
        {
            var result = MovieWrapperHelper.GetAsync($"{_baseUrl}/movie/id/{id}").Result;

            return(JsonConvert.DeserializeObject <MovieCGV>(result));
        }
Пример #8
0
        public MovieGalaxy GetDetail(string id)
        {
            var result = MovieWrapperHelper.GetAsync($"{_baseUrl}/content/movieDetail/{id}").Result;

            return(JsonConvert.DeserializeObject <MovieGalaxy>(result));
        }