public SelectScreeningForm(Cinema cinema) { this.screeningService = new ScreeningService(); this.movieService = new MovieService(); this.cinema = cinema; InitializeComponent(); }
public async void GivenNewScreeningWithTwoScreeningsInDatabase_WhenAddingAThirdScreening_ThenThirdScreeningIsAdded() { var testGuid = Guid.NewGuid(); Screening testScreening = new CV_Screening("testtess", testGuid); testScreening.UpdateStatusToFalse(); Screening testScreening2 = new Phone_Screening("ezqdsrezrez", testGuid); Screening testScreening3 = new TestResults_Screening("ezqdsrezrazezaeez", testGuid); List <Screening> testList = new List <Screening>() { testScreening, testScreening2 }; var mockRepo = Substitute.For <ScreeningRepository>(); mockRepo.AddNewScreeningToDatabase(testScreening3) .Returns(Task.FromResult(testScreening3)); mockRepo.GetAllById(testGuid) .Returns(Task.FromResult(testList)); var mockLogger = Substitute.For <ILoggerManager>(); var mockJopApp = Substitute.For <IJobApplicationService>(); var service = new ScreeningService(mockRepo, mockLogger, mockJopApp); var actualScreenings = await service.NewScreening(testGuid.ToString(), testScreening3.Comment); Assert.True(actualScreenings.Count == 3); Assert.Equal(testScreening3.Comment, actualScreenings[2].Comment); Assert.IsType <TestResults_Screening>(actualScreenings[2]); Assert.False(actualScreenings[1].Status); }
private void EditTicketButton_Click(object sender, EventArgs e) { try { int ticketId = ticket.Id; string date = dateComboBox.Text; string time = timeComboBox.Text; DateTime screeningDateTime = ScreeningService.GetDateTimeFromDateAndTime(date, time); string townName = townComboBox.Text; string cinemaName = cinemaComboBox.Text; string movieName = GetMovieName(movieComboBox.Text); int movieYear = GetMovieYear(movieComboBox.Text); Screening screening = ScreeningService.GetScreeningUsingMovieYear(townName, cinemaName, movieName, screeningDateTime, movieYear); int screeningId = screening.Id; int auditoriumId = screening.AuditoriumId; Seat seat = SeatService.GetSeat(auditoriumId, byte.Parse(seatComboBox.Text)); int seatId = seat.Id; string type = typeComboBox.Text; TicketType ticketType = (TicketType)Enum.Parse(typeof(TicketType), type); TicketService.UpdateTicket(ticketId, screeningId, seatId, ticketType); MessageBox.Show(Constants.SuccessMessages.TicketUpdatedSuccessfully); EditUserTicketsForm ticketsForm = new EditUserTicketsForm(user); ticketsForm.TopLevel = false; ticketsForm.AutoScroll = true; this.Hide(); ((Button)sender).Parent.Parent.Controls.Add(ticketsForm); ticketsForm.Show(); } catch (Exception exception) { MessageBox.Show(Constants.ErrorMessages.TicketUpdateErrorMessage); } }
public MovieForm(Movie movie) { this.imageService = new ImageService(); this.townService = new TownService(); this.cinemaService = new CinemaService(); this.screeningService = new ScreeningService(); InitializeComponent(); if (AuthenticationManager.IsAuthenticated() && !AuthenticationManager.HasSuperRights()) { this.Controls.Add(this.ticketsButton); this.Controls.Add(this.townBox); this.Controls.Add(this.hourBox); this.Controls.Add(this.dateBox); this.Controls.Add(this.cinemaComboBox); } System.Drawing.Image image = imageService.byteArrayToImage(movie.Image.Content); this._movie = movie; this.pictureBox.Image = imageService.ScaleImage(image, 142, 224); this.titleBox.Text = _movie.Name; this.genreBox.Text = string.Join(", ", this._movie.Categories.Select(c => c.Name)); this.lengthBox.Text = _movie.Length.ToString() + " minutes"; this.yearBox.Text = _movie.ReleaseYear.ToString(); this.ratingBox.Text = _movie.Rating.ToString() + " / 10"; this.directorBox.Text = _movie.DirectorName; this.ageRestrictionBox.Text = _movie.AgeRestriction.ToString(); this.castBox.Text = string.Join(",", this._movie.Cast.Select(c => c.Name)); this.synopsisBox.Text = _movie.Synopsis; this.townBox.Text = "Select town"; this.townBox.Items.AddRange(townService.GetTownsNames()); this.FormBorderStyle = FormBorderStyle.None; }
public static void ValidateScreeningTimeAvailable(DateTime startTime, int auditoriumId, string movieName, int movieYear) { if (!ScreeningService.IsScreeningAvailableInAuditorium(auditoriumId, startTime, movieName, movieYear)) { throw new InvalidOperationException(); } }
public static void ValidateScreeningDoesntExist(int auditoriumId, DateTime date) { if (ScreeningService.IsScreeningExisting(auditoriumId, date)) { throw new InvalidOperationException(Constants.ErrorMessages.ScreeningAlreadyExists); } }
public static void ValidateScreeningAvailable(int screeningId, DateTime startTime) { if (!ScreeningService.IsScreeningAvailable(screeningId, startTime)) { throw new InvalidOperationException(); } }
public static void ImportScreening(ScreeeningDto screeningDto) { byte auditoriumNumber = screeningDto.AuditoriumNumber; string cinemaTown = screeningDto.CinemaTown; TownValidator.CheckTownExisting(cinemaTown); int townId = TownService.GetTownId(cinemaTown); string cinemaName = screeningDto.CinemaName; CinemaValidator.CheckCinemaExisting(cinemaName, townId); int cinemaId = CinemaService.GetCinemaId(cinemaName, townId); AuditoriumValidator.CheckAuditoriumExists(auditoriumNumber, cinemaId, cinemaName); string movieName = screeningDto.MovieName; int movieReleaseYear = screeningDto.MovieReleaseYear; MovieValidator.CheckMovieExists(movieName, movieReleaseYear); int auditoriumId = AuditoriumService.GetAuditoriumId(auditoriumNumber, cinemaId); DateTime date = screeningDto.Date; ScreeningValidator.ValidateScreeningDoesntExist(auditoriumId, date); int movieId = MovieService.GetMovieId(movieName, movieReleaseYear); ScreeningService.AddScreening(auditoriumId, movieId, date); Console.WriteLine(string.Format(Constants.ImportSuccessMessages.ScreeningAddedSuccess, auditoriumNumber, cinemaName)); }
private void EditScreeningButton_Click(object sender, EventArgs e) { try { DateTime getDate = DateCalendar.SelectionRange.Start; string date = getDate.Day.ToString() + " " + getDate.ToString("MMM") + " " + getDate.DayOfWeek.ToString(); DateTime getTime = TimePicker.Value; string time = getTime.ToString("hh") + ":" + getTime.ToString("mm") + " " + getTime.ToString("tt", CultureInfo.InvariantCulture); DateTime startTime = ScreeningService.GetDateTimeFromDateAndTime(date, time); ScreeningValidator.ValidateScreeningAvailable(screening.Id, startTime); ScreeningService.UpdateScreening(screening.Id, startTime); MessageBox.Show("Screening updated successfully!"); Cinema cinema = CinemaService.GetCinemaWithScreenings(screening.Auditorium.CinemaId); SelectScreeningForm screeningsForm = new SelectScreeningForm(cinema); screeningsForm.TopLevel = false; screeningsForm.AutoScroll = true; this.Hide(); ((Button)sender).Parent.Parent.Controls.Add(screeningsForm); screeningsForm.Show(); } catch (Exception exception) { MessageBox.Show("Screening updated failed!"); } }
private void AddScreeningButton_Click(object sender, EventArgs e) { try { string movieName = GetMovieName(movieComboBox.Text); int year = GetMovieYear(movieComboBox.Text); DateTime getDate = DateCalendar.SelectionRange.Start; string date = getDate.Day.ToString() + " " + getDate.ToString("MMM") + " " + getDate.DayOfWeek.ToString(); DateTime getTime = TimePicker.Value; string time = getTime.ToString("hh") + ":" + getTime.ToString("mm") + " " + getTime.ToString("tt", CultureInfo.InvariantCulture); DateTime startTime = ScreeningService.GetDateTimeFromDateAndTime(date, time); byte auditoriumNumber = byte.Parse(auditoriumComboBox.Text); int auditoriumId = AuditoriumService.GetAuditoriumId(auditoriumNumber, this.cinema.Id); int movieId = MovieService.GetMovieId(movieName, year); ScreeningValidator.ValidateScreeningTimeAvailable(startTime, auditoriumId, movieName, year); ScreeningService.AddScreening(auditoriumId, movieId, startTime); MessageBox.Show("Screening added successfully!"); Cinema cinema = CinemaService.GetCinemaWithScreenings(this.cinema.Id); SelectScreeningForm screeningsForm = new SelectScreeningForm(cinema); screeningsForm.TopLevel = false; screeningsForm.AutoScroll = true; this.Hide(); ((Button)sender).Parent.Parent.Controls.Add(screeningsForm); screeningsForm.Show(); } catch (Exception exception) { MessageBox.Show("Add screening failed!"); } }
private void CheckScreeningAvailable() { if (movieComboBox.Text == "") { return; } if (auditoriumComboBox.Text == "") { return; } string movieName = GetMovieName(movieComboBox.Text); int year = GetMovieYear(movieComboBox.Text); DateTime getDate = DateCalendar.SelectionRange.Start; string date = getDate.Day.ToString() + " " + getDate.ToString("MMM") + " " + getDate.DayOfWeek.ToString(); DateTime getTime = TimePicker.Value; string time = getTime.ToString("hh") + ":" + getTime.ToString("mm") + " " + getTime.ToString("tt", CultureInfo.InvariantCulture); DateTime startTime = ScreeningService.GetDateTimeFromDateAndTime(date, time); byte auditoriumNumber = byte.Parse(auditoriumComboBox.Text); int auditoriumId = AuditoriumService.GetAuditoriumId(auditoriumNumber, this.cinema.Id); if (!ScreeningService.IsScreeningAvailableInAuditorium(auditoriumId, startTime, movieName, year)) { ScreeningTaken.Visible = true; ScreeningTaken.Text = "Screening is already taken!"; } else { ScreeningTaken.Visible = false; } }
public EditScreening(Screening screening) { this.screeningService = new ScreeningService(); this.screeningValidator = new ScreeningValidator(screeningService); this.cinemaService = new CinemaService(); this.screening = screening; InitializeComponent(); }
public TicketForm() { this.cinemaService = new CinemaService(); this.screeningService = new ScreeningService(); this.movieService = new MovieService(); this.townService = new TownService(); this._movies = new List <Movie>(); InitializeComponent(); }
public ShowScreeningsForm() { this.cinemaService = new CinemaService(); this.townService = new TownService(); this.movieService = new MovieService(); this.screeningService = new ScreeningService(); this._screenings = new List <Screening>(); this._screeningsHolder = new ScreeningsHolder(); InitializeComponent(); }
public AddScreeningForm(Cinema cinema) { this.movieService = new MovieService(); this.auditoriumService = new AuditoriumService(); this.cinemaService = new CinemaService(); this.screeningService = new ScreeningService(); this.screeningValidator = new ScreeningValidator(screeningService); this.cinema = cinema; InitializeComponent(); }
private void movieComboBox_SelectedIndexChanged(object sender, EventArgs e) { this.dateComboBox.Items.Clear(); this.timeComboBox.Items.Clear(); string movieName = GetMovieName(movieComboBox.Text); int movieYear = GetMovieYear(movieComboBox.Text); string[] dates = ScreeningService.GetAllDatesForMovieInCinemaByNameAndYear(cinema.Town.Name, cinema.Name, movieName, movieYear); dateComboBox.Items.AddRange(dates); }
public EditTicketForm(User user, Ticket ticket) { this.user = user; this.ticket = ticket; this.townService = new TownService(); this.cinemaService = new CinemaService(); this.ticketService = new TicketService(); this.movieService = new MovieService(); this.screeningService = new ScreeningService(); this.seatService = new SeatService(); InitializeComponent(); }
private void dateComboBox_SelectedIndexChanged(object sender, EventArgs e) { this.timeComboBox.Items.Clear(); string movieName = GetMovieName(movieComboBox.Text); int movieYear = GetMovieYear(movieComboBox.Text); string date = dateComboBox.Text; string[] hours = ScreeningService.GetHoursForMoviesByDateMovieNameAndYear(cinema.Town.Name, cinema.Name, movieName, movieYear, date); timeComboBox.Items.AddRange(hours); }
private void movieComboBox_SelectedIndexChanged(object sender, EventArgs e) { ClearScreeningsHolder(); this._movieName = this.movieComboBox.SelectedItem.ToString(); var screenings = ScreeningService.GetScreeningsByTownCinemaAndMovie(this._townName, this._cinemaName, this._movieName); this._screenings = screenings.ToList(); RenderScreeningsHolder(); }
public ScreeningImportService() { this.auditoriumService = new AuditoriumService(); this.cinemaService = new CinemaService(); this.auditoriumValidator = new AuditoriumValidator(auditoriumService); this.cinemaValidator = new CinemaValidator(cinemaService); this.movieService = new MovieService(); this.movieValidator = new MovieValidator(movieService); this.townService = new TownService(); this.townValidator = new TownValidator(townService); this.screeningService = new ScreeningService(); this.screeningValidator = new ScreeningValidator(screeningService); }
private void timeComboBox_SelectedIndexChanged(object sender, EventArgs e) { string movie = GetMovieName(movieComboBox.Text); int movieYear = GetMovieYear(movieComboBox.Text); string cinemaName = cinema.Name; string townName = cinema.Town.Name; DateTime date = ScreeningService.GetDateTimeFromDateAndTime(dateComboBox.Text, timeComboBox.Text); Screening screening = ScreeningService.GetScreeningUsingMovieYear(townName, cinemaName, movie, date, movieYear); EditScreening editScreeningForm = new EditScreening(screening); editScreeningForm.TopLevel = false; editScreeningForm.AutoScroll = true; this.Hide(); ((ComboBox)sender).Parent.Parent.Controls.Add(editScreeningForm); editScreeningForm.Show(); }
public async void GivenNewScreeningWithFiveScreeningsInDatabase_WhenAddingSixthScreening_ThenSixthScreeningIsAdded() { var testGuid = Guid.NewGuid(); var testJobApp = new JobApplication(testGuid, Guid.NewGuid(), Guid.NewGuid(), 4); Screening testScreening = new CV_Screening("testtess", testGuid); testScreening.UpdateStatusToFalse(); Screening testScreening2 = new Phone_Screening("ezqdsrezrez", testGuid); testScreening2.UpdateStatusToFalse(); Screening testScreening3 = new TestResults_Screening("ezqdsrezrazezaeez", testGuid); testScreening3.UpdateStatusToFalse(); Screening testScreening4 = new FirstInterview_Screening("eblabla", testGuid); testScreening4.UpdateStatusToFalse(); Screening testScreening5 = new GroupInterview_Screening("eblabdsdsfdsfla", testGuid); Screening testScreening6 = new FinalDecision_Screening("aangenome", testGuid); List <Screening> testList = new List <Screening>() { testScreening, testScreening2, testScreening3, testScreening4, testScreening5 }; var mockRepo = Substitute.For <ScreeningRepository>(); mockRepo.AddNewScreeningToDatabase(testScreening6) .Returns(Task.FromResult(testScreening6)); mockRepo.GetAllById(testGuid) .Returns(Task.FromResult(testList)); var mockLogger = Substitute.For <ILoggerManager>(); var mockJopApp = Substitute.For <IJobApplicationService>(); mockJopApp.UpdateStatusOfJobApplication(testGuid.ToString(), 4) .Returns(Task.FromResult(testJobApp)); var service = new ScreeningService(mockRepo, mockLogger, mockJopApp); var actualScreenings = await service.NewScreening(testGuid.ToString(), testScreening6.Comment); Assert.Equal(testJobApp.StatusId, 4); Assert.True(actualScreenings.Count == 6); Assert.Equal(testScreening6.Comment, actualScreenings[5].Comment); Assert.IsType <FinalDecision_Screening>(actualScreenings[5]); Assert.False(actualScreenings[4].Status); Assert.False(actualScreenings[5].Status); }
private void CheckScreening() { DateTime getDate = DateCalendar.SelectionRange.Start; string date = getDate.Day.ToString() + " " + getDate.ToString("MMM") + " " + getDate.DayOfWeek.ToString(); DateTime getTime = TimePicker.Value; string time = getTime.ToString("hh") + ":" + getTime.ToString("mm") + " " + getTime.ToString("tt", CultureInfo.InvariantCulture); DateTime startTime = ScreeningService.GetDateTimeFromDateAndTime(date, time); if (!ScreeningService.IsScreeningAvailable(screening.Id, startTime)) { ScreeningTaken.Visible = true; ScreeningTaken.Text = "Screening is already taken!"; } else { ScreeningTaken.Visible = false; } }
private void ticketsButton_Click(object sender, EventArgs e) { string selectedDate = this.dateBox.SelectedItem.ToString(); string selectedTime = this.hourBox.SelectedItem.ToString(); DateTime screeningDate = ScreeningService.GetDateTimeFromDateAndTime(selectedDate, selectedTime); //var screeningDate = new DateTime(2017, 4, 21, 16, 0, 0); //hardcode TicketForm.Screening = ScreeningService.GetScreening(this._townName, this._cinemaName, this._movieName, screeningDate); TicketTypeForm ticketTypeForm = new TicketTypeForm(); ticketTypeForm.TopLevel = false; ticketTypeForm.AutoScroll = true; this.Parent.Controls.Add(ticketTypeForm); ticketTypeForm.Show(); this.Hide(); }
public async void GivenGetAllScreeningsById_WhenRequestingAllScreenings_ThenReturnAllScreenings() { var testGuid = Guid.NewGuid(); List <Screening> testScreen = new List <Screening>() { new CV_Screening("blabla", testGuid) }; var mockRepo = Substitute.For <ScreeningRepository>(); mockRepo.GetAllById(testGuid) .Returns(Task.FromResult(testScreen)); var mockLogger = Substitute.For <ILoggerManager>(); var mockJopApp = Substitute.For <IJobApplicationService>(); var service = new ScreeningService(mockRepo, mockLogger, mockJopApp); var actualScreenings = await service.GetAllScreeningsById(testGuid.ToString()); Assert.Equal(testScreen, actualScreenings); }
public async void GivenNewScreening_WhenAddingANewScreening_ThenNewScreeningIsAdded() { var testGuid = Guid.NewGuid(); Screening testScreening = new CV_Screening("testtess", testGuid); List <Screening> testList = new List <Screening>(); var mockRepo = Substitute.For <ScreeningRepository>(); mockRepo.AddNewScreeningToDatabase(testScreening) .Returns(Task.FromResult(testScreening)); mockRepo.GetAllById(testGuid) .Returns(Task.FromResult(testList)); var mockLogger = Substitute.For <ILoggerManager>(); var mockJopApp = Substitute.For <IJobApplicationService>(); var service = new ScreeningService(mockRepo, mockLogger, mockJopApp); var actualScreenings = await service.NewScreening(testGuid.ToString(), testScreening.Comment); Assert.Single <Screening>(actualScreenings); Assert.Equal(testScreening.Comment, actualScreenings[0].Comment); }
private void selectTicketTypeButton_Click(object sender, EventArgs e) { var dateTime = ScreeningService.GetDateTimeFromDateAndTime(_date, _time); TicketForm.Screening = ScreeningService.GetScreening(this._townName, this._cinemaName, this._movieName, dateTime); TicketTypeForm ticketTypeForm = new TicketTypeForm(); ticketTypeForm.TopLevel = false; ticketTypeForm.AutoScroll = true; this.Hide(); var contentHolder = ((Button)sender).Parent.Parent; var formsCount = contentHolder.Controls.Count; if (formsCount - 1 <= contentHolder.Controls.IndexOf(this)) { contentHolder.Controls.Add(ticketTypeForm); ticketTypeForm.Show(); } else { contentHolder.Controls[contentHolder.Controls.IndexOf(this) + 1].Show(); } }
public ScreeningValidator(ScreeningService screeningService) { this.screeningService = screeningService; }