public static void SaveCinemaSchedules(CinemaScheduleViewModel cinemaSchedule, string userName) { Movie movie = db.Movie.Find(cinemaSchedule.MovieId); if (movie != null) { List <DateTime> dateTimes = GenerateDatetimes(cinemaSchedule.BeginDatetime, cinemaSchedule.FinishDatetime, cinemaSchedule.BeginTime, (int)cinemaSchedule.HoursRange); IList <CinemaSchedule> cinemaSchedules; cinemaSchedules = GenerateCinemaSchedules(cinemaSchedule, dateTimes, (int)movie.DurationTime.TotalMinutes); db.CinemaSchedule.AddRange(cinemaSchedules); db.SaveChanges(); foreach (var schedule in cinemaSchedules) { db.CinemaScheduleHistory.Add(new CinemaScheduleHistory() { CinemaScheduleId = schedule.CinemaScheduleId, CinemaScheduleState = 1, Description = "Se crea nueva cartelera", JsonDetails = "", ModificationDate = DateTime.Now, TicketId = 0, UserName = userName }); } db.SaveChanges(); } }
public ActionResult Index(string scheduleDate) { CinemaScheduleViewModel cinemasSchedulesView = null; if (ModelState.IsValid) { var cinemaSessions = _cinemaSessionService.GetCinemasSessions(DateTime.Parse(scheduleDate)); cinemasSchedulesView = new CinemaScheduleViewModel(cinemaSessions.OrderBy(order => order.Cinema.CinemaName).ToList(), scheduleDate); } return(View(cinemasSchedulesView)); }
public ActionResult Create(CinemaScheduleViewModel cinemaSchedule) { if (ModelState.IsValid) { CinemaSchedulerManager.SaveCinemaSchedules(cinemaSchedule, User.Identity.GetUserName()); return(RedirectToAction("Index")); } ViewBag.MovieId = new SelectList(db.Movie, "MovieId", "Name", cinemaSchedule.MovieId); ViewBag.MovieFormatId = new SelectList(db.MovieFormat, "MovieFormatId", "Name", cinemaSchedule.MovieFormatId); return(View(cinemaSchedule)); }
private static IList <CinemaSchedule> GenerateCinemaSchedules(CinemaScheduleViewModel cinemaSchedule, List <DateTime> dates, int durationMovie) { IList <CinemaSchedule> cinemaSchedules = new List <CinemaSchedule>(); foreach (var date in dates) { CinemaSchedule scheduler = new CinemaSchedule() { BeginDatetime = date, CinemaId = cinemaSchedule.CinemaId, MovieFormatId = cinemaSchedule.MovieFormatId, MovieId = cinemaSchedule.MovieId }; scheduler.FinishDatetime = scheduler.BeginDatetime.AddMinutes(durationMovie); cinemaSchedules.Add(scheduler); } return(cinemaSchedules); }
public CinemaSchedulePage(int cinemaId) { InitializeComponent(); BindingContext = _viewModel = new CinemaScheduleViewModel(); _viewModel.Init(cinemaId); }