Ejemplo n.º 1
0
        public Shows GetShowDetailsByCriteria(int movieId, short cityId, DateTime fromDate, DateTime toDate)
        {
            List <SqlParameter> param = new List <SqlParameter>();

            param.Add(new SqlParameter()
            {
                ParameterName = "@MovieId", Value = movieId
            });
            param.Add(new SqlParameter()
            {
                ParameterName = "@CityId", Value = cityId
            });
            param.Add(new SqlParameter()
            {
                ParameterName = "@FromDate", Value = fromDate
            });
            param.Add(new SqlParameter()
            {
                ParameterName = "@ToDate", Value = toDate
            });


            DataSet ds = Select(StoredProcedureName.GET_SHOW_LIST, param);

            Shows showDetails = new Shows();
            List <DayWiseShowDetails> showList   = new List <DayWiseShowDetails>();
            List <CinemaDetails>      cinemaList = null;
            DateTime currentDate = fromDate;
            int      cinemaId    = 0;

            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                while (currentDate <= toDate)
                {
                    DayWiseShowDetails currentDayDetails = new DayWiseShowDetails();
                    currentDayDetails.ShowDate = currentDate;

                    cinemaList = new List <CinemaDetails>();
                    foreach (DataRow currentCinema in ds.Tables[0].Rows)
                    {
                        if (Convert.ToDateTime(currentCinema["ShowDate"]).ToShortDateString() == currentDate.ToShortDateString())
                        {
                            cinemaId = currentCinema["CinemaId"].ToIntSafe();

                            if (cinemaList.Select(c => c.CinemaId).Contains(cinemaId))
                            {
                                continue;
                            }
                            string        cinemaName = currentCinema["CinemaName"].ToStringSafe();
                            CinemaDetails cinema     = new CinemaDetails {
                                CinemaId = cinemaId, CinemaName = cinemaName
                            };


                            string filter = "CinemaId=" + currentCinema["CinemaId"].ToString() + " and " + "ShowDate='" + currentDayDetails.ShowDate + "'";
                            cinema.ShowList = ds.Tables[0].Select(filter).ConvertToList <ShowDetails>();

                            cinemaList.Add(cinema);
                        }
                    }

                    if (cinemaList != null)
                    {
                        currentDayDetails.CinemaList = cinemaList;
                    }

                    showList.Add(currentDayDetails);


                    TimeSpan duration = new TimeSpan(1, 0, 0, 0);
                    currentDate = currentDate.Add(duration);
                }
            }
            if (showList != null)
            {
                showDetails.ShowList = showList;
            }

            return(showDetails);
        }
Ejemplo n.º 2
0
        public CinemaShows GetShowDetailsByCinemaId(int cinemaId, DateTime fromDate, DateTime toDate)
        {
            List <SqlParameter> param = new List <SqlParameter>();

            param.Add(new SqlParameter()
            {
                ParameterName = "@CinemaId", Value = cinemaId
            });
            param.Add(new SqlParameter()
            {
                ParameterName = "@FromDate", Value = fromDate
            });
            param.Add(new SqlParameter()
            {
                ParameterName = "@ToDate", Value = toDate
            });


            DataSet ds = Select(StoredProcedureName.GET_SHOW_LIST_BY_CINEMA_ID, param);

            CinemaShows showDetails             = new CinemaShows();
            List <DayWiseShowDetails> showList  = new List <DayWiseShowDetails>();
            List <CinemaMovieDetails> movieList = null;
            DateTime currentDate = fromDate;
            int      movieId     = 0;

            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                while (currentDate <= toDate)
                {
                    DayWiseShowDetails currentDayDetails = new DayWiseShowDetails();
                    currentDayDetails.ShowDate = currentDate;

                    movieList = new List <CinemaMovieDetails>();
                    foreach (DataRow currentMovie in ds.Tables[0].Rows)
                    {
                        if (Convert.ToDateTime(currentMovie["ShowDate"]).ToShortDateString() == currentDate.ToShortDateString())
                        {
                            movieId = currentMovie["MovieId"].ToIntSafe();

                            if (movieList.Select(c => c.MovieId).Contains(movieId))
                            {
                                continue;
                            }
                            string             movieName = currentMovie["MovieName"].ToStringSafe();
                            CinemaMovieDetails movie     = new CinemaMovieDetails {
                                MovieId = movieId, MovieName = movieName
                            };


                            string filter = "MovieId=" + currentMovie["MovieId"].ToString() + " and " + "ShowDate='" + currentDayDetails.ShowDate + "'";
                            movie.ShowList = ds.Tables[0].Select(filter).ConvertToList <ShowDetails>();

                            movieList.Add(movie);
                        }
                    }

                    if (movieList != null)
                    {
                        currentDayDetails.MovieList = movieList;
                    }

                    showList.Add(currentDayDetails);


                    TimeSpan duration = new TimeSpan(1, 0, 0, 0);
                    currentDate = currentDate.Add(duration);
                }
            }
            if (showList != null)
            {
                showDetails.ShowList = showList;
            }

            return(showDetails);
        }