diff --git a/.gitignore b/.gitignore index cf332414..87d206a2 100644 --- a/.gitignore +++ b/.gitignore @@ -368,3 +368,4 @@ FodyWeavers.xsd */**/bin/Release */**/obj/Debug */**/obj/Release +*/Migrations \ No newline at end of file diff --git a/api-cinema-challenge/api-cinema-challenge/Controllers/UsersController.cs b/api-cinema-challenge/api-cinema-challenge/Controllers/UsersController.cs new file mode 100644 index 00000000..badf47c0 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Controllers/UsersController.cs @@ -0,0 +1,103 @@ +using api_cinema_challenge.Data; +using api_cinema_challenge.DataTransfer.Requests; +using api_cinema_challenge.DataTransfer.Response; +using api_cinema_challenge.Enums; +using api_cinema_challenge.RegistrationRequeest; +using api_cinema_challenge.Services; +using Microsoft.AspNetCore.Identity; +using Microsoft.AspNetCore.Mvc; + + + +namespace api_cinema_challenge.Controllers + +{ + + [ApiController] + [Route("/api/[controller]")] + public class UsersController : ControllerBase + { + private readonly UserManager _userManager; + private readonly CinemaContext _context; + private readonly TokenService _tokenService; + + public UsersController(UserManager userManager, CinemaContext context, + TokenService tokenService, ILogger logger) + { + _userManager = userManager; + _context = context; + _tokenService = tokenService; + } + + + [HttpPost] + [Route("register")] + public async Task Register(RegistrationRequest request) + { + if (!ModelState.IsValid) + { + return BadRequest(ModelState); + } + + var result = await _userManager.CreateAsync( + new ApplicationUser { UserName = request.Username, Email = request.Email, Role = request.Role }, + request.Password! + ); + + if (result.Succeeded) + { + request.Password = ""; + return CreatedAtAction(nameof(Register), new { email = request.Email, role = Role.User }, request); + } + + foreach (var error in result.Errors) + { + ModelState.AddModelError(error.Code, error.Description); + } + + return BadRequest(ModelState); + } + + + [HttpPost] + [Route("login")] + public async Task> Authenticate([FromBody] AuthRequest request) + { + if (!ModelState.IsValid) + { + return BadRequest(ModelState); + } + + var managedUser = await _userManager.FindByEmailAsync(request.Email!); + + if (managedUser == null) + { + return BadRequest("Bad credentials"); + } + + var isPasswordValid = await _userManager.CheckPasswordAsync(managedUser, request.Password!); + + if (!isPasswordValid) + { + return BadRequest("Bad credentials"); + } + + var userInDb = _context.ApplicationUsers.FirstOrDefault(u => u.Email == request.Email); + + if (userInDb is null) + { + return Unauthorized(); + } + + var accessToken = _tokenService.CreateToken(userInDb); + await _context.SaveChangesAsync(); + + return Ok(new AuthResponse + { + Username = userInDb.UserName, + Email = userInDb.Email, + Token = accessToken, + }); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerGet.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerGet.cs new file mode 100644 index 00000000..6ceed08d --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerGet.cs @@ -0,0 +1,24 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class CustomerGet + { + public int Id { get; set; } + public string Name { get; set; } + public string Email { get; set; } + public string Phone { get; set; } + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + public IEnumerable Tickets { get; set; } = new List(); + + public CustomerGet(Customer customer) + { + Id = customer.Id; + Name = customer.Name; + Email = customer.Email; + Phone = customer.Phone; + Tickets = customer.Tickets.Select(x => new TicketNoCustomer(x)); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerGetNoExtra.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerGetNoExtra.cs new file mode 100644 index 00000000..6c653089 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerGetNoExtra.cs @@ -0,0 +1,22 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class CustomerGetNoExtra + { + public int Id { get; set; } + public string Name { get; set; } + public string Email { get; set; } + public string Phone { get; set; } + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + + public CustomerGetNoExtra(Customer customer) + { + Id = customer.Id; + Name = customer.Name; + Email = customer.Email; + Phone = customer.Phone; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerPost.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerPost.cs new file mode 100644 index 00000000..1f14f9c2 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerPost.cs @@ -0,0 +1,11 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class CustomerPost + { + public string Name { get; set; } + public string Email { get; set; } + public string Phone { get; set; } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerPut.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerPut.cs new file mode 100644 index 00000000..167a7a66 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/CustomerPut.cs @@ -0,0 +1,9 @@ +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class CustomerPut + { + public string? Name { get; set; } + public string? Email { get; set; } + public string? Phone { get; set; } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/MovieNoScreenings.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/MovieNoScreenings.cs new file mode 100644 index 00000000..6ad85b11 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/MovieNoScreenings.cs @@ -0,0 +1,20 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class MovieNoScreenings + { + public string Title { get; set; } + public string Description { get; set; } + public string Rating { get; set; } + public int RunTimeMins { get; set; } + + public MovieNoScreenings(Movie movie) + { + Title = movie.Title; + Description = movie.Description; + Rating = movie.Rating; + RunTimeMins = movie.RunTimeMins; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/ScreeningNoTicket.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/ScreeningNoTicket.cs new file mode 100644 index 00000000..b8efa2c6 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/ScreeningNoTicket.cs @@ -0,0 +1,20 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class ScreeningNoTicket + { + public int ScreenNumber { get; set; } + public int Capacity { get; set; } + public DateTime StartsAt { get; set; } + public MovieNoScreenings Movie { get; set; } + + public ScreeningNoTicket(Screening screening) + { + ScreenNumber = screening.ScreenNumber; + Capacity = screening.Capacity; + StartsAt = screening.StartsAt; + Movie = new MovieNoScreenings(screening.Movie); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/TicketNoCustomer.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/TicketNoCustomer.cs new file mode 100644 index 00000000..e40aeb3e --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/TicketNoCustomer.cs @@ -0,0 +1,13 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class TicketNoCustomer + { + public ScreeningNoTicket Screening { get; set; } + public TicketNoCustomer(Ticket ticket) + { + Screening = new ScreeningNoTicket(ticket.Screening); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/TicketNoExtra.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/TicketNoExtra.cs new file mode 100644 index 00000000..fed3beca --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/CustomerDTOs/TicketNoExtra.cs @@ -0,0 +1,10 @@ +namespace api_cinema_challenge.DOTs.CustomerDTOs +{ + public class TicketNoExtra + { + public int Id { get; set; } + public int numSeats { get; set; } + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/CustomerNoTicket.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/CustomerNoTicket.cs new file mode 100644 index 00000000..eeb2789f --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/CustomerNoTicket.cs @@ -0,0 +1,18 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.MovieDTOs +{ + public class CustomerNoTicket + { + public string Name { get; set; } + public string Email { get; set; } + public string Phone { get; set; } + public CustomerNoTicket(Customer customer) + { + Name = customer.Name; + Email = customer.Email; + Phone = customer.Phone; + + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MovieGet.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MovieGet.cs new file mode 100644 index 00000000..6b60f7ee --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MovieGet.cs @@ -0,0 +1,31 @@ +using api_cinema_challenge.DOTs.CustomerDTOs; +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.MovieDTOs +{ + public class MovieGet + { + public int Id { get; set; } + public string Title { get; set; } + public string Description { get; set; } + public string Rating { get; set; } + public int RunTimeMins { get; set; } + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + + public IEnumerable Screenings { get; set; } = new List(); + + public MovieGet(Movie movie) + { + Id = movie.Id; + Title = movie.Title; + Description = movie.Description; + Rating = movie.Rating; + RunTimeMins = movie.RunTimeMins; + Screenings = movie.Screenings.Select(x => new ScreeningsNoMovie(x)); + CreatedAt = movie.CreatedAt; + UpdatedAt = movie.UpdatedAt; + } + + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MoviePost.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MoviePost.cs new file mode 100644 index 00000000..abdcc73e --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MoviePost.cs @@ -0,0 +1,10 @@ +namespace api_cinema_challenge.DOTs.MovieDTOs +{ + public class MoviePost + { + public string Title { get; set; } + public string Rating { get; set; } + public string Description { get; set; } + public int RunTimeMins { get; set; } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MoviePut.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MoviePut.cs new file mode 100644 index 00000000..5ea8abea --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/MoviePut.cs @@ -0,0 +1,11 @@ +namespace api_cinema_challenge.DOTs.MovieDTOs +{ + public class MoviePut + { + public string Title { get; set; } + public string Rating { get; set; } + public string Description { get; set; } + public int? RunTimeMins { get; set; } + + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/ScreeningsNoMovie.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/ScreeningsNoMovie.cs new file mode 100644 index 00000000..df2c79a5 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/ScreeningsNoMovie.cs @@ -0,0 +1,20 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.MovieDTOs +{ + public class ScreeningsNoMovie + { + public int ScreenNumber { get; set; } + public int Capacity { get; set; } + public DateTime StartsAt { get; set; } + public IEnumerable Tickets { get; set; } = new List(); + + public ScreeningsNoMovie(Screening screening) + { + ScreenNumber = screening.ScreenNumber; + Capacity = screening.Capacity; + StartsAt = screening.StartsAt; + Tickets = screening.Tickets.Select(t => new TicketNoScreening(t)); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/TicketNoScreening.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/TicketNoScreening.cs new file mode 100644 index 00000000..96ec7961 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/MovieDTOs/TicketNoScreening.cs @@ -0,0 +1,13 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.MovieDTOs +{ + public class TicketNoScreening + { + public CustomerNoTicket Customer { get; set; } + public TicketNoScreening(Ticket ticket) + { + Customer = new CustomerNoTicket(ticket.Customer); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/ScreeningDTOs/ScreeningGet.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/ScreeningDTOs/ScreeningGet.cs new file mode 100644 index 00000000..ce6a8689 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/ScreeningDTOs/ScreeningGet.cs @@ -0,0 +1,22 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.ScreeningDTOs +{ + public class ScreeningGet + { + public int Id { get; set; } + public int ScreenNumber { get; set; } + public int Capacity { get; set; } + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + + public ScreeningGet(Screening screening) + { + Id = screening.Id; + ScreenNumber = screening.ScreenNumber; + Capacity = screening.Capacity; + CreatedAt = screening.CreatedAt; + UpdatedAt = screening.UpdatedAt; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/ScreeningDTOs/ScreeningPost.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/ScreeningDTOs/ScreeningPost.cs new file mode 100644 index 00000000..bb1524f2 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/ScreeningDTOs/ScreeningPost.cs @@ -0,0 +1,9 @@ +namespace api_cinema_challenge.DOTs.ScreeningDTOs +{ + public class ScreeningPost + { + public int ScreenNumber { get; set; } + public int Capacity { get; set; } + public DateTime StartAt { get; set; } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/TicketDTO/TicketGet.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/TicketDTO/TicketGet.cs new file mode 100644 index 00000000..0b18d923 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/TicketDTO/TicketGet.cs @@ -0,0 +1,20 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.DOTs.TicketDTO +{ + public class TicketGet + { + public int Id { get; set; } + public int numSeats { get; set; } + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + + public TicketGet(Ticket ticket) + { + Id = ticket.Id; + numSeats = ticket.numSeats; + CreatedAt = ticket.CreatedAt; + UpdatedAt = ticket.UpdatedAt; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/DOTs/TicketDTO/TicketPost.cs b/api-cinema-challenge/api-cinema-challenge/DOTs/TicketDTO/TicketPost.cs new file mode 100644 index 00000000..f4eb7aba --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DOTs/TicketDTO/TicketPost.cs @@ -0,0 +1,7 @@ +namespace api_cinema_challenge.DOTs.TicketDTO +{ + public class TicketPost + { + public int numSeats { get; set; } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Data/ApplicationUser.cs b/api-cinema-challenge/api-cinema-challenge/Data/ApplicationUser.cs new file mode 100644 index 00000000..3e26ce06 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Data/ApplicationUser.cs @@ -0,0 +1,11 @@ +using api_cinema_challenge.Enums; +using Microsoft.AspNetCore.Identity; + +namespace api_cinema_challenge.Data +{ + public class ApplicationUser : IdentityUser + { + public Role Role { get; set; } + } + } + diff --git a/api-cinema-challenge/api-cinema-challenge/Data/CinemaContext.cs b/api-cinema-challenge/api-cinema-challenge/Data/CinemaContext.cs index ad4fe854..60ff857a 100644 --- a/api-cinema-challenge/api-cinema-challenge/Data/CinemaContext.cs +++ b/api-cinema-challenge/api-cinema-challenge/Data/CinemaContext.cs @@ -1,4 +1,6 @@ -using Microsoft.EntityFrameworkCore; +using api_cinema_challenge.Models; +using Microsoft.AspNetCore.Identity.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore; using Newtonsoft.Json.Linq; namespace api_cinema_challenge.Data @@ -20,7 +22,26 @@ protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) protected override void OnModelCreating(ModelBuilder modelBuilder) { + Seeder seeder = new Seeder(); + modelBuilder.Entity().HasMany(c => c.Tickets).WithOne(c => c.Customer).HasForeignKey(c => c.CustomerId); + modelBuilder.Entity().HasMany(m => m.Screenings).WithOne(s => s.Movie).HasForeignKey(m => m.MovieId); + modelBuilder.Entity().HasOne(t => t.Screening).WithMany(s => s.Tickets).HasForeignKey(t => t.ScreeningId); + + modelBuilder.Entity().HasData(seeder.Customers); + modelBuilder.Entity().HasData(seeder.Movies); + modelBuilder.Entity().HasData(seeder.tickets); + modelBuilder.Entity().HasData(seeder.Screenings); + + } + public DbSet Customers { get; set; } + public DbSet Movies { get; set; } + public DbSet Screenings { get; set; } + public DbSet Tickets { get; set; } + public DbSet ApplicationUsers { get; set; } + + + } } diff --git a/api-cinema-challenge/api-cinema-challenge/Data/Seeder.cs b/api-cinema-challenge/api-cinema-challenge/Data/Seeder.cs new file mode 100644 index 00000000..97b1524d --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Data/Seeder.cs @@ -0,0 +1,175 @@ +using api_cinema_challenge.Models; + +namespace api_cinema_challenge.Data +{ + public class Seeder + + { + private List _firstnames = new List() + { + "Audrey", + "Donald", + "Elvis", + "Barack", + "Oprah", + "Jimi", + "Mick", + "Kate", + "Charles", + "Kate" + }; + private List _lastnames = new List() + { + "Hepburn", + "Trump", + "Presley", + "Obama", + "Winfrey", + "Hendrix", + "Jagger", + "Winslet", + "Windsor", + "Middleton" + + }; + private List _domain = new List() + { + "bbc.co.uk", + "google.com", + "theworld.ca", + "something.com", + "tesla.com", + "nasa.org.us", + "gov.us", + "gov.gr", + "gov.nl", + "gov.ru" + }; + private List _firstword = new List() + { + "The", + "Two", + "Several", + "Fifteen", + "A bunch of", + "An army of", + "A herd of" + + + }; + private List _secondword = new List() + { + "Orange", + "Purple", + "Large", + "Microscopic", + "Green", + "Transparent", + "Rose Smelling", + "Bitter" + }; + private List _thirdword = new List() + { + "Buildings", + "Cars", + "Planets", + "Houses", + "Flowers", + "Leopards" + }; + private List _ratings = new List() + { + "All", + "years 6+", + "years 11+", + "years 16+", + "years 18+" + }; + private List _startAt = new List() + { + DateTime.Parse("2025-01-05 09:15:00").ToUniversalTime(), + DateTime.Parse("2025-01-12 14:30:00").ToUniversalTime(), + DateTime.Parse("2025-02-03T08:45:00").ToUniversalTime(), + DateTime.Parse("2025-02-21T19:00:00").ToUniversalTime(), + DateTime.Parse("2025-03-10T07:20:00").ToUniversalTime(), + DateTime.Parse("2025-03-25T16:50:00").ToUniversalTime(), + DateTime.Parse("2025-04-02T12:05:00").ToUniversalTime(), + DateTime.Parse("2025-04-18T21:30:00").ToUniversalTime(), + DateTime.Parse("2025-05-01T10:10:00").ToUniversalTime(), + DateTime.Parse("2025-05-14T18:45:00").ToUniversalTime(), + DateTime.Parse("2025-06-07T06:25:00").ToUniversalTime(), + DateTime.Parse("2025-06-22T15:40:00").ToUniversalTime(), + DateTime.Parse("2025-07-03T11:55:00").ToUniversalTime(), + DateTime.Parse("2025-07-19T20:15:00").ToUniversalTime(), + DateTime.Parse("2025-08-01T13:30:00").ToUniversalTime() + }; + + + + private List _customers = new List(); + private List _movies = new List(); + private List _screenings = new List(); + private List _tickets = new List(); + + public Seeder() + { + + Random customerRandom = new Random(); + Random movieRandom = new Random(); + Random ticketRandom = new Random(); + Random screeningRandom = new Random(); + + + + for (int x = 1; x < 50; x++) + { + Customer customer = new Customer(); + customer.Id = x; + customer.Name = $"{_firstnames[customerRandom.Next(_firstnames.Count)]} {_lastnames[customerRandom.Next(_lastnames.Count)]}"; + customer.Email = $"{customer.Name}@{_domain[customerRandom.Next(_domain.Count)]}".ToLower(); + customer.Phone = ""+movieRandom.Next(10000000, 99999999); + _customers.Add(customer); + } + + + for (int y = 1; y < 5; y++) + { + Movie movie = new Movie(); + movie.Id = y; + movie.Title = $"{_firstword[movieRandom.Next(_firstword.Count)]} {_secondword[movieRandom.Next(_secondword.Count)]} {_thirdword[movieRandom.Next(_thirdword.Count)]}"; + movie.Rating = _ratings[movieRandom.Next(_ratings.Count)]; + movie.Description = "Very funny"; + movie.RunTimeMins = movieRandom.Next(70,150); + _movies.Add(movie); + } + + for (int z = 1; z < 20; z++) + { + Screening screening = new Screening(); + screening.Id = z; + screening.ScreenNumber = screeningRandom.Next(5); + screening.Capacity = screeningRandom.Next(25, 100); + screening.StartsAt = _startAt[screeningRandom.Next(_startAt.Count)]; + screening.MovieId = _movies[movieRandom.Next(_movies.Count)].Id; + _screenings.Add(screening); + } + + for (int a = 1; a < 200; a++) + { + Ticket ticket = new Ticket(); + ticket.Id = a; + ticket.ScreeningId = _screenings[screeningRandom.Next(_screenings.Count)].Id; + ticket.CustomerId = _customers[screeningRandom.Next(_customers.Count)].Id; + ticket.numSeats = ticketRandom.Next(1, 3); + _tickets.Add(ticket); + } + + + } + public List Customers { get { return _customers; } } + public List Movies { get { return _movies; } } + public List tickets { get { return _tickets; } } + public List Screenings { get { return _screenings; } } + } + } + diff --git a/api-cinema-challenge/api-cinema-challenge/DataTransfer/Requests/AuthRequest.cs b/api-cinema-challenge/api-cinema-challenge/DataTransfer/Requests/AuthRequest.cs new file mode 100644 index 00000000..8fb6640e --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DataTransfer/Requests/AuthRequest.cs @@ -0,0 +1,12 @@ +namespace api_cinema_challenge.DataTransfer.Requests; + +public class AuthRequest +{ + public string? Email { get; set; } + public string? Password { get; set; } + + public bool IsValid() + { + return true; + } +} \ No newline at end of file diff --git a/api-cinema-challenge/api-cinema-challenge/DataTransfer/Requests/RegistrationRequest.cs b/api-cinema-challenge/api-cinema-challenge/DataTransfer/Requests/RegistrationRequest.cs new file mode 100644 index 00000000..d0211fe1 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DataTransfer/Requests/RegistrationRequest.cs @@ -0,0 +1,20 @@ + + +using api_cinema_challenge.Enums; +using System.ComponentModel.DataAnnotations; + +namespace api_cinema_challenge.RegistrationRequeest; + +public class RegistrationRequest +{ + [Required] + public string? Email { get; set; } + + [Required] + public string? Username { get { return this.Email; } set { } } + + [Required] + public string? Password { get; set; } + + public Role Role { get; set; } = Role.User; +} \ No newline at end of file diff --git a/api-cinema-challenge/api-cinema-challenge/DataTransfer/Response/AuthResponse.cs b/api-cinema-challenge/api-cinema-challenge/DataTransfer/Response/AuthResponse.cs new file mode 100644 index 00000000..84b0c057 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/DataTransfer/Response/AuthResponse.cs @@ -0,0 +1,9 @@ +namespace api_cinema_challenge.DataTransfer.Response; + + +public class AuthResponse +{ + public string? Username { get; set; } + public string? Email { get; set; } + public string? Token { get; set; } +} \ No newline at end of file diff --git a/api-cinema-challenge/api-cinema-challenge/Endpoints/CustomerAPI.cs b/api-cinema-challenge/api-cinema-challenge/Endpoints/CustomerAPI.cs new file mode 100644 index 00000000..d961a350 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Endpoints/CustomerAPI.cs @@ -0,0 +1,96 @@ +using api_cinema_challenge.DOTs.CustomerDTOs; +using api_cinema_challenge.DOTs.TicketDTO; +using api_cinema_challenge.Models; +using api_cinema_challenge.Repository; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; +using System.Reflection.Metadata.Ecma335; + + +namespace api_cinema_challenge.Endpoints +{ + public static class CustomerAPI + { + public static void ConfigueCustomer(this WebApplication app) + { + var customerGroup = app.MapGroup("customers"); + + customerGroup.MapGet("/", GetCustomers); + customerGroup.MapGet("/customer{id}", GetCustomerById); + customerGroup.MapPost("/", CreateCustomer); + customerGroup.MapPut("/{id}", UpdateCustomer); + customerGroup.MapDelete("/{id}", DeleteCustomer); + customerGroup.MapPost("/{customerId}/screenings/{screeningId}", BookTicket); + customerGroup.MapGet("/{customerId}/screenings/{screeningId}", GetAllTickets); + } + + + [Authorize(Roles ="Admin")] + private static async Task GetCustomers(IGenericRepository repository) + { + var response = await repository.GetWithIncludes(q => q.Include(p => p.Tickets).ThenInclude(t => t.Screening).ThenInclude(s => s.Movie)); + var result = response.Select(c => new CustomerGetNoExtra(c)); + return TypedResults.Ok(result); + } + + [Authorize(Roles = "User")] + private static async Task GetCustomerById(IGenericRepository repository, int id) + { + var response = await repository.GetByIdWithIncludes(q => q.Where(i => i.Id == id) + .Include(p => p.Tickets) + .ThenInclude(t => t.Screening) + .ThenInclude(s => s.Movie).FirstOrDefaultAsync().Result); + var result = new CustomerGetNoExtra(response); + + return TypedResults.Ok(result); + } + + [Authorize(Roles = "Admin")] + private static async Task CreateCustomer(IGenericRepository repository, CustomerPost newCustomer) + { + Customer customer = new Customer(newCustomer); + var response = await repository.Create(customer); + CustomerGetNoExtra customerFormated = new CustomerGetNoExtra(response); + return TypedResults.Created("", customerFormated); + } + [Authorize(Roles = "Admin")] + private static async Task UpdateCustomer(IGenericRepository repository, int id, CustomerPut model) + { + Customer entity = await repository.GetByIdWithIncludes(q => q.Where(i => i.Id == id) + .Include(p => p.Tickets) + .ThenInclude(t => t.Screening) + .ThenInclude(s => s.Movie).FirstOrDefaultAsync().Result); + if (model.Name is not null) entity.Name = model.Name; + if (model.Email is not null) entity.Email = model.Email; + if (model.Phone is not null) entity.Phone = model.Phone; + entity.UpdatedAt = DateTime.UtcNow; + var response = await repository.Update(entity); + return TypedResults.Created("", new CustomerGetNoExtra(response)); + } + [Authorize(Roles = "Admin")] + private static async Task DeleteCustomer(IGenericRepository repository, int id) + { + Customer entity = await repository.GetByIdWithIncludes(q => q.Where(i => i.Id == id).FirstOrDefaultAsync().Result); + repository.Delete(entity); + return TypedResults.Ok(entity); + } + + + [Authorize(Roles = "Admin")] + private static async Task BookTicket(IGenericRepository repository, TicketPost ticketPost, int screeningId, int customerId) + { + Ticket ticket = new Ticket(ticketPost, screeningId, customerId); + var response = await repository.Create(ticket); + return TypedResults.Created("Success", new TicketGet(response)); + + } + + [Authorize(Roles = "User")] + private static async Task GetAllTickets(IGenericRepository repository, int customerId, int screeningId) + { + var response = await repository.GetWithIncludes(q => q.Where(c => c.CustomerId == customerId && c.ScreeningId == screeningId)); + return TypedResults.Ok(response.Select(c => new TicketGet(c))); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Endpoints/MovieAPI.cs b/api-cinema-challenge/api-cinema-challenge/Endpoints/MovieAPI.cs new file mode 100644 index 00000000..d1d2c5ff --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Endpoints/MovieAPI.cs @@ -0,0 +1,83 @@ +using api_cinema_challenge.DOTs.MovieDTOs; +using api_cinema_challenge.DOTs.ScreeningDTOs; +using api_cinema_challenge.Models; +using api_cinema_challenge.Repository; +using Microsoft.AspNetCore.Authorization; +using Microsoft.EntityFrameworkCore; + +namespace api_cinema_challenge.Endpoints +{ + public static class MovieAPI + { + public static void ConfigueMovie(this WebApplication app) + { + var movieGroup = app.MapGroup("movies"); + + movieGroup.MapGet("/", GetMovies); + movieGroup.MapPost("/", CreateMovie); + movieGroup.MapPut("/{id}", UpdateMovie); + movieGroup.MapDelete("/{id}", DeleteMovie); + movieGroup.MapPost("/{id}/screenings", CreateScreening); + movieGroup.MapGet("{id}/screenings", GetScreeningsForMovie); + + } + + private static async Task GetMovies(IGenericRepository repository) + { + var response = await repository.GetWithIncludes(m => m.Include(s => s.Screenings) + .ThenInclude(t => t.Tickets) + .ThenInclude(c => c.Customer)); + var result = response.Select(m => new MovieGet(m)); + return TypedResults.Ok(result); + } + + [Authorize(Roles = "Admin")] + private static async Task CreateMovie(IGenericRepository repository, MoviePost movie) + { + Movie newMovie = new Movie(movie); + var response = await repository.Create(newMovie); + return TypedResults.Created("", new MovieGet(response)); + } + + [Authorize(Roles = "Admin")] + private static async Task UpdateMovie(IGenericRepository repository, int id, MoviePut model) + { + Movie entity = await repository.GetByIdWithIncludes(m => m.Where(i => i.Id == id) + .Include(s => s.Screenings) + .ThenInclude(t => t.Tickets) + .ThenInclude(c => c.Customer) + .FirstOrDefaultAsync().Result); + if (model.Title is not null) entity.Title = model.Title; + if (model.Rating is not null ) entity.Rating = model.Rating; + if( model.Description is not null ) entity.Description = model.Description; + if (model.RunTimeMins is not null ) entity.RunTimeMins = (int)model.RunTimeMins; + entity.UpdatedAt = DateTime.UtcNow; + var response = await repository.Update(entity); + return TypedResults.Created("", new MovieGet(response)); + } + + [Authorize(Roles = "Admin")] + private static async Task DeleteMovie(IGenericRepository repository, int id) + { + Movie entity = await repository.GetByIdWithIncludes(q => q.Where(i => i.Id == id).FirstOrDefaultAsync().Result); + repository.Delete(entity); + return TypedResults.Ok(entity); + } + + [Authorize(Roles = "Admin")] + private static async Task CreateScreening(IGenericRepository repository, int movieId, ScreeningPost model) + { + Screening entity = new Screening(model); + entity.MovieId = movieId; + var response = await repository.Create(entity); + return TypedResults.Created("", new ScreeningGet(response)); + } + [Authorize(Roles = "User")] + private static async Task GetScreeningsForMovie(IGenericRepository repository, int movieId) + { + var response = await repository.GetWithIncludes(s => s.Where(i => i.MovieId == movieId)); + var result = response.Select(s => new ScreeningGet(s)); + return TypedResults.Ok(result); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Enums/Role.cs b/api-cinema-challenge/api-cinema-challenge/Enums/Role.cs new file mode 100644 index 00000000..1fd4d248 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Enums/Role.cs @@ -0,0 +1,8 @@ +namespace api_cinema_challenge.Enums +{ + public enum Role + { + Admin, + User + } +} \ No newline at end of file diff --git a/api-cinema-challenge/api-cinema-challenge/Migrations/20250826100627_test.Designer.cs b/api-cinema-challenge/api-cinema-challenge/Migrations/20250826100627_test.Designer.cs new file mode 100644 index 00000000..0730bb83 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Migrations/20250826100627_test.Designer.cs @@ -0,0 +1,2747 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using api_cinema_challenge.Data; + +#nullable disable + +namespace api_cinema_challenge.Migrations +{ + [DbContext(typeof(CinemaContext))] + [Migration("20250826100627_test")] + partial class test + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.8") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("api_cinema_challenge.Data.ApplicationUser", b => + { + b.Property("Id") + .HasColumnType("text"); + + b.Property("AccessFailedCount") + .HasColumnType("integer"); + + b.Property("ConcurrencyStamp") + .HasColumnType("text"); + + b.Property("Email") + .HasColumnType("text"); + + b.Property("EmailConfirmed") + .HasColumnType("boolean"); + + b.Property("LockoutEnabled") + .HasColumnType("boolean"); + + b.Property("LockoutEnd") + .HasColumnType("timestamp with time zone"); + + b.Property("NormalizedEmail") + .HasColumnType("text"); + + b.Property("NormalizedUserName") + .HasColumnType("text"); + + b.Property("PasswordHash") + .HasColumnType("text"); + + b.Property("PhoneNumber") + .HasColumnType("text"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("boolean"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("SecurityStamp") + .HasColumnType("text"); + + b.Property("TwoFactorEnabled") + .HasColumnType("boolean"); + + b.Property("UserName") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("ApplicationUsers"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Customer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("customer_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Email") + .IsRequired() + .HasColumnType("text") + .HasColumnName("email"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name"); + + b.Property("Phone") + .IsRequired() + .HasColumnType("text") + .HasColumnName("phone"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.ToTable("Customers"); + + b.HasData( + new + { + Id = 1, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(5796), + Email = "oprah winslet@nasa.org.us", + Name = "Oprah Winslet", + Phone = "38597758", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(5997) + }, + new + { + Id = 2, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7059), + Email = "donald hendrix@nasa.org.us", + Name = "Donald Hendrix", + Phone = "31294393", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7060) + }, + new + { + Id = 3, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7077), + Email = "oprah winfrey@gov.ru", + Name = "Oprah Winfrey", + Phone = "12461023", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7077) + }, + new + { + Id = 4, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7079), + Email = "kate windsor@nasa.org.us", + Name = "Kate Windsor", + Phone = "60877520", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7080) + }, + new + { + Id = 5, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7081), + Email = "kate trump@gov.gr", + Name = "Kate Trump", + Phone = "28214601", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7082) + }, + new + { + Id = 6, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7087), + Email = "donald winslet@theworld.ca", + Name = "Donald Winslet", + Phone = "99090594", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7087) + }, + new + { + Id = 7, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7089), + Email = "jimi winslet@google.com", + Name = "Jimi Winslet", + Phone = "51342584", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7090) + }, + new + { + Id = 8, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7092), + Email = "kate presley@google.com", + Name = "Kate Presley", + Phone = "24606771", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7093) + }, + new + { + Id = 9, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7094), + Email = "audrey winslet@tesla.com", + Name = "Audrey Winslet", + Phone = "35122566", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7094) + }, + new + { + Id = 10, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7096), + Email = "barack jagger@bbc.co.uk", + Name = "Barack Jagger", + Phone = "30581375", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7096) + }, + new + { + Id = 11, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7098), + Email = "jimi trump@gov.nl", + Name = "Jimi Trump", + Phone = "29071711", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7098) + }, + new + { + Id = 12, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7107), + Email = "mick jagger@something.com", + Name = "Mick Jagger", + Phone = "71722749", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7108) + }, + new + { + Id = 13, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7109), + Email = "barack middleton@gov.gr", + Name = "Barack Middleton", + Phone = "28169066", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7109) + }, + new + { + Id = 14, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7111), + Email = "mick hepburn@gov.nl", + Name = "Mick Hepburn", + Phone = "46074000", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7111) + }, + new + { + Id = 15, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7113), + Email = "barack winslet@tesla.com", + Name = "Barack Winslet", + Phone = "66728315", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7113) + }, + new + { + Id = 16, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7114), + Email = "jimi middleton@theworld.ca", + Name = "Jimi Middleton", + Phone = "29909156", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7114) + }, + new + { + Id = 17, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7115), + Email = "donald hepburn@gov.nl", + Name = "Donald Hepburn", + Phone = "24603305", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7116) + }, + new + { + Id = 18, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7117), + Email = "kate jagger@google.com", + Name = "Kate Jagger", + Phone = "90412194", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7118) + }, + new + { + Id = 19, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7119), + Email = "kate winfrey@gov.us", + Name = "Kate Winfrey", + Phone = "58591549", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7119) + }, + new + { + Id = 20, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7120), + Email = "audrey windsor@gov.nl", + Name = "Audrey Windsor", + Phone = "61422617", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7120) + }, + new + { + Id = 21, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7122), + Email = "charles jagger@google.com", + Name = "Charles Jagger", + Phone = "39291620", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7122) + }, + new + { + Id = 22, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7123), + Email = "jimi obama@gov.us", + Name = "Jimi Obama", + Phone = "41054703", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7123) + }, + new + { + Id = 23, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7124), + Email = "barack jagger@theworld.ca", + Name = "Barack Jagger", + Phone = "81454823", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7125) + }, + new + { + Id = 24, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7126), + Email = "oprah winfrey@bbc.co.uk", + Name = "Oprah Winfrey", + Phone = "84236288", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7126) + }, + new + { + Id = 25, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7127), + Email = "donald obama@tesla.com", + Name = "Donald Obama", + Phone = "11106320", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7128) + }, + new + { + Id = 26, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7129), + Email = "charles winfrey@something.com", + Name = "Charles Winfrey", + Phone = "98425086", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7129) + }, + new + { + Id = 27, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7130), + Email = "mick winfrey@bbc.co.uk", + Name = "Mick Winfrey", + Phone = "70070854", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7130) + }, + new + { + Id = 28, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7131), + Email = "kate presley@nasa.org.us", + Name = "Kate Presley", + Phone = "88125635", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7132) + }, + new + { + Id = 29, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7133), + Email = "oprah winslet@gov.ru", + Name = "Oprah Winslet", + Phone = "55589125", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7133) + }, + new + { + Id = 30, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7134), + Email = "audrey windsor@something.com", + Name = "Audrey Windsor", + Phone = "87967846", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7134) + }, + new + { + Id = 31, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7135), + Email = "elvis middleton@gov.ru", + Name = "Elvis Middleton", + Phone = "77889124", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7136) + }, + new + { + Id = 32, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7137), + Email = "charles hepburn@bbc.co.uk", + Name = "Charles Hepburn", + Phone = "41980562", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7137) + }, + new + { + Id = 33, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7138), + Email = "mick windsor@tesla.com", + Name = "Mick Windsor", + Phone = "46573335", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7138) + }, + new + { + Id = 34, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7147), + Email = "audrey winfrey@tesla.com", + Name = "Audrey Winfrey", + Phone = "14297485", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7148) + }, + new + { + Id = 35, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7149), + Email = "donald jagger@something.com", + Name = "Donald Jagger", + Phone = "76653793", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7149) + }, + new + { + Id = 36, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7151), + Email = "oprah winfrey@theworld.ca", + Name = "Oprah Winfrey", + Phone = "27250815", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7151) + }, + new + { + Id = 37, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7152), + Email = "charles jagger@tesla.com", + Name = "Charles Jagger", + Phone = "22683147", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7152) + }, + new + { + Id = 38, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7153), + Email = "elvis winslet@bbc.co.uk", + Name = "Elvis Winslet", + Phone = "61709303", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7153) + }, + new + { + Id = 39, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7154), + Email = "mick jagger@tesla.com", + Name = "Mick Jagger", + Phone = "38151327", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7155) + }, + new + { + Id = 40, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7156), + Email = "audrey windsor@something.com", + Name = "Audrey Windsor", + Phone = "27011355", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7156) + }, + new + { + Id = 41, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7157), + Email = "kate winfrey@theworld.ca", + Name = "Kate Winfrey", + Phone = "37145318", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7157) + }, + new + { + Id = 42, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7158), + Email = "audrey winfrey@something.com", + Name = "Audrey Winfrey", + Phone = "38519203", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7159) + }, + new + { + Id = 43, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7160), + Email = "charles middleton@gov.us", + Name = "Charles Middleton", + Phone = "77133526", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7160) + }, + new + { + Id = 44, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7161), + Email = "donald hepburn@nasa.org.us", + Name = "Donald Hepburn", + Phone = "48194121", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7162) + }, + new + { + Id = 45, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7163), + Email = "barack presley@nasa.org.us", + Name = "Barack Presley", + Phone = "18488203", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7163) + }, + new + { + Id = 46, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7164), + Email = "charles trump@theworld.ca", + Name = "Charles Trump", + Phone = "13162166", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7165) + }, + new + { + Id = 47, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7166), + Email = "jimi hepburn@google.com", + Name = "Jimi Hepburn", + Phone = "23226421", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7166) + }, + new + { + Id = 48, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7167), + Email = "audrey jagger@gov.gr", + Name = "Audrey Jagger", + Phone = "61420949", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7167) + }, + new + { + Id = 49, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7168), + Email = "kate obama@gov.us", + Name = "Kate Obama", + Phone = "59125783", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7168) + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Movie", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("movie_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasColumnName("description"); + + b.Property("Rating") + .IsRequired() + .HasColumnType("text") + .HasColumnName("rating"); + + b.Property("RunTimeMins") + .HasColumnType("integer") + .HasColumnName("runtime_mins"); + + b.Property("Title") + .IsRequired() + .HasColumnType("text") + .HasColumnName("title"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.ToTable("movie"); + + b.HasData( + new + { + Id = 1, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7525), + Description = "Very funny", + Rating = "years 11+", + RunTimeMins = 146, + Title = "Several Rose Smelling Buildings", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7643) + }, + new + { + Id = 2, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8153), + Description = "Very funny", + Rating = "years 16+", + RunTimeMins = 91, + Title = "Fifteen Microscopic Leopards", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8153) + }, + new + { + Id = 3, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8157), + Description = "Very funny", + Rating = "years 6+", + RunTimeMins = 90, + Title = "Fifteen Microscopic Leopards", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8157) + }, + new + { + Id = 4, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8159), + Description = "Very funny", + Rating = "All", + RunTimeMins = 137, + Title = "Two Transparent Cars", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8159) + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Screening", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("screening_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Capacity") + .HasColumnType("integer") + .HasColumnName("capacity"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MovieId") + .HasColumnType("integer") + .HasColumnName("movie_id"); + + b.Property("ScreenNumber") + .HasColumnType("integer") + .HasColumnName("screen_number"); + + b.Property("StartsAt") + .HasColumnType("timestamp with time zone") + .HasColumnName("starts_at"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MovieId"); + + b.ToTable("screenings"); + + b.HasData( + new + { + Id = 1, + Capacity = 89, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8777), + MovieId = 3, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8892) + }, + new + { + Id = 2, + Capacity = 88, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9799), + MovieId = 2, + ScreenNumber = 0, + StartsAt = new DateTime(2025, 8, 1, 11, 30, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9800) + }, + new + { + Id = 3, + Capacity = 34, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9802), + MovieId = 3, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 6, 22, 13, 40, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9802) + }, + new + { + Id = 4, + Capacity = 55, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9803), + MovieId = 2, + ScreenNumber = 0, + StartsAt = new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9803) + }, + new + { + Id = 5, + Capacity = 61, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9804), + MovieId = 3, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 6, 7, 4, 25, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9804) + }, + new + { + Id = 6, + Capacity = 84, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9807), + MovieId = 2, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9807) + }, + new + { + Id = 7, + Capacity = 78, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9808), + MovieId = 1, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9808) + }, + new + { + Id = 8, + Capacity = 56, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9809), + MovieId = 2, + ScreenNumber = 0, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9809) + }, + new + { + Id = 9, + Capacity = 50, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9810), + MovieId = 1, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 3, 25, 15, 50, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9810) + }, + new + { + Id = 10, + Capacity = 63, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9811), + MovieId = 4, + ScreenNumber = 3, + StartsAt = new DateTime(2025, 5, 1, 8, 10, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9812) + }, + new + { + Id = 11, + Capacity = 70, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9812), + MovieId = 1, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813) + }, + new + { + Id = 12, + Capacity = 62, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813), + MovieId = 4, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813) + }, + new + { + Id = 13, + Capacity = 43, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9814), + MovieId = 4, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9814) + }, + new + { + Id = 14, + Capacity = 26, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9815), + MovieId = 3, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9815) + }, + new + { + Id = 15, + Capacity = 66, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9816), + MovieId = 1, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9816) + }, + new + { + Id = 16, + Capacity = 66, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9823), + MovieId = 2, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9823) + }, + new + { + Id = 17, + Capacity = 86, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9824), + MovieId = 2, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 6, 7, 4, 25, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9824) + }, + new + { + Id = 18, + Capacity = 54, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826), + MovieId = 4, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 2, 21, 18, 0, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826) + }, + new + { + Id = 19, + Capacity = 65, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826), + MovieId = 1, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9827) + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Ticket", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("ticket_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CustomerId") + .HasColumnType("integer") + .HasColumnName("customer_id"); + + b.Property("ScreeningId") + .HasColumnType("integer") + .HasColumnName("screening_id"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("numSeats") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CustomerId"); + + b.HasIndex("ScreeningId"); + + b.ToTable("tickets"); + + b.HasData( + new + { + Id = 1, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 2, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 3, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 4, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 5, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 6, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 34, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 7, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 8, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 43, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 9, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 10, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 11, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 12, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 13, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 14, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 15, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 16, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 17, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 18, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 19, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 20, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 21, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 22, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 32, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 23, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 24, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 25, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 26, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 32, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 27, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 28, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 29, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 22, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 30, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 31, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 26, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 32, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 33, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 22, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 34, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 35, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 36, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 37, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 38, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 39, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 40, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 46, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 41, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 42, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 43, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 38, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 44, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 45, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 46, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 47, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 48, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 49, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 38, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 50, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 51, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 52, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 53, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 54, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 55, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 28, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 56, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 57, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 58, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 59, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 60, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 31, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 61, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 3, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 62, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 63, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 34, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 64, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 65, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 66, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 67, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 6, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 68, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 69, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 70, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 71, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 72, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 73, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 74, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 75, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 37, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 76, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 77, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 78, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 21, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 79, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 80, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 81, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 82, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 83, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 84, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 85, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 14, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 86, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 87, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 88, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 89, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 3, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 90, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 91, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 92, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 19, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 93, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 94, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 37, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 95, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 19, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 96, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 43, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 97, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 98, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 22, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 99, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 100, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 15, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 101, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 38, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 102, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 103, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 104, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 105, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 106, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 14, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 107, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 108, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 109, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 110, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 111, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 112, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 113, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 15, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 114, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 115, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 116, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 117, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 118, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 119, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 120, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 46, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 121, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 122, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 123, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 124, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 19, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 125, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 126, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 127, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 128, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 129, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 130, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 131, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 132, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 133, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 134, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 135, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 136, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 137, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 138, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 139, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 140, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 141, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 142, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 143, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 34, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 144, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 145, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 146, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 147, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 148, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 149, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 150, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 151, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 31, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 152, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 153, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 154, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 155, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 156, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 157, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 6, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 158, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 159, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 160, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 44, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 161, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 162, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 163, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 164, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 165, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 166, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 167, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 168, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 169, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 170, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 171, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 172, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 173, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 174, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 175, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 6, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 176, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 177, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 178, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 179, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 180, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 181, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 182, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 183, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 3, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 184, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 185, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 186, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 187, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 188, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 189, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 190, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 191, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 192, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 193, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 194, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 195, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 196, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 197, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 198, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 37, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 199, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 44, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Screening", b => + { + b.HasOne("api_cinema_challenge.Models.Movie", "Movie") + .WithMany("Screenings") + .HasForeignKey("MovieId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Movie"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Ticket", b => + { + b.HasOne("api_cinema_challenge.Models.Customer", "Customer") + .WithMany("Tickets") + .HasForeignKey("CustomerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("api_cinema_challenge.Models.Screening", "Screening") + .WithMany("Tickets") + .HasForeignKey("ScreeningId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Customer"); + + b.Navigation("Screening"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Customer", b => + { + b.Navigation("Tickets"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Movie", b => + { + b.Navigation("Screenings"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Screening", b => + { + b.Navigation("Tickets"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Migrations/20250826100627_test.cs b/api-cinema-challenge/api-cinema-challenge/Migrations/20250826100627_test.cs new file mode 100644 index 00000000..6d7f06b4 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Migrations/20250826100627_test.cs @@ -0,0 +1,465 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional + +namespace api_cinema_challenge.Migrations +{ + /// + public partial class test : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "ApplicationUsers", + columns: table => new + { + Id = table.Column(type: "text", nullable: false), + Role = table.Column(type: "integer", nullable: false), + UserName = table.Column(type: "text", nullable: true), + NormalizedUserName = table.Column(type: "text", nullable: true), + Email = table.Column(type: "text", nullable: true), + NormalizedEmail = table.Column(type: "text", nullable: true), + EmailConfirmed = table.Column(type: "boolean", nullable: false), + PasswordHash = table.Column(type: "text", nullable: true), + SecurityStamp = table.Column(type: "text", nullable: true), + ConcurrencyStamp = table.Column(type: "text", nullable: true), + PhoneNumber = table.Column(type: "text", nullable: true), + PhoneNumberConfirmed = table.Column(type: "boolean", nullable: false), + TwoFactorEnabled = table.Column(type: "boolean", nullable: false), + LockoutEnd = table.Column(type: "timestamp with time zone", nullable: true), + LockoutEnabled = table.Column(type: "boolean", nullable: false), + AccessFailedCount = table.Column(type: "integer", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_ApplicationUsers", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "Customers", + columns: table => new + { + customer_id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + name = table.Column(type: "text", nullable: false), + email = table.Column(type: "text", nullable: false), + phone = table.Column(type: "text", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Customers", x => x.customer_id); + }); + + migrationBuilder.CreateTable( + name: "movie", + columns: table => new + { + movie_id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + title = table.Column(type: "text", nullable: false), + rating = table.Column(type: "text", nullable: false), + description = table.Column(type: "text", nullable: false), + runtime_mins = table.Column(type: "integer", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_movie", x => x.movie_id); + }); + + migrationBuilder.CreateTable( + name: "screenings", + columns: table => new + { + screening_id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + screen_number = table.Column(type: "integer", nullable: false), + capacity = table.Column(type: "integer", nullable: false), + starts_at = table.Column(type: "timestamp with time zone", nullable: false), + movie_id = table.Column(type: "integer", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_screenings", x => x.screening_id); + table.ForeignKey( + name: "FK_screenings_movie_movie_id", + column: x => x.movie_id, + principalTable: "movie", + principalColumn: "movie_id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateTable( + name: "tickets", + columns: table => new + { + ticket_id = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + screening_id = table.Column(type: "integer", nullable: false), + customer_id = table.Column(type: "integer", nullable: false), + numSeats = table.Column(type: "integer", nullable: false), + CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), + UpdatedAt = table.Column(type: "timestamp with time zone", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_tickets", x => x.ticket_id); + table.ForeignKey( + name: "FK_tickets_Customers_customer_id", + column: x => x.customer_id, + principalTable: "Customers", + principalColumn: "customer_id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_tickets_screenings_screening_id", + column: x => x.screening_id, + principalTable: "screenings", + principalColumn: "screening_id", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.InsertData( + table: "Customers", + columns: new[] { "customer_id", "CreatedAt", "email", "name", "phone", "UpdatedAt" }, + values: new object[,] + { + { 1, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(5796), "oprah winslet@nasa.org.us", "Oprah Winslet", "38597758", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(5997) }, + { 2, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7059), "donald hendrix@nasa.org.us", "Donald Hendrix", "31294393", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7060) }, + { 3, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7077), "oprah winfrey@gov.ru", "Oprah Winfrey", "12461023", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7077) }, + { 4, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7079), "kate windsor@nasa.org.us", "Kate Windsor", "60877520", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7080) }, + { 5, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7081), "kate trump@gov.gr", "Kate Trump", "28214601", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7082) }, + { 6, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7087), "donald winslet@theworld.ca", "Donald Winslet", "99090594", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7087) }, + { 7, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7089), "jimi winslet@google.com", "Jimi Winslet", "51342584", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7090) }, + { 8, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7092), "kate presley@google.com", "Kate Presley", "24606771", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7093) }, + { 9, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7094), "audrey winslet@tesla.com", "Audrey Winslet", "35122566", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7094) }, + { 10, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7096), "barack jagger@bbc.co.uk", "Barack Jagger", "30581375", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7096) }, + { 11, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7098), "jimi trump@gov.nl", "Jimi Trump", "29071711", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7098) }, + { 12, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7107), "mick jagger@something.com", "Mick Jagger", "71722749", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7108) }, + { 13, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7109), "barack middleton@gov.gr", "Barack Middleton", "28169066", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7109) }, + { 14, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7111), "mick hepburn@gov.nl", "Mick Hepburn", "46074000", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7111) }, + { 15, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7113), "barack winslet@tesla.com", "Barack Winslet", "66728315", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7113) }, + { 16, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7114), "jimi middleton@theworld.ca", "Jimi Middleton", "29909156", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7114) }, + { 17, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7115), "donald hepburn@gov.nl", "Donald Hepburn", "24603305", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7116) }, + { 18, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7117), "kate jagger@google.com", "Kate Jagger", "90412194", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7118) }, + { 19, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7119), "kate winfrey@gov.us", "Kate Winfrey", "58591549", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7119) }, + { 20, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7120), "audrey windsor@gov.nl", "Audrey Windsor", "61422617", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7120) }, + { 21, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7122), "charles jagger@google.com", "Charles Jagger", "39291620", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7122) }, + { 22, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7123), "jimi obama@gov.us", "Jimi Obama", "41054703", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7123) }, + { 23, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7124), "barack jagger@theworld.ca", "Barack Jagger", "81454823", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7125) }, + { 24, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7126), "oprah winfrey@bbc.co.uk", "Oprah Winfrey", "84236288", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7126) }, + { 25, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7127), "donald obama@tesla.com", "Donald Obama", "11106320", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7128) }, + { 26, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7129), "charles winfrey@something.com", "Charles Winfrey", "98425086", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7129) }, + { 27, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7130), "mick winfrey@bbc.co.uk", "Mick Winfrey", "70070854", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7130) }, + { 28, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7131), "kate presley@nasa.org.us", "Kate Presley", "88125635", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7132) }, + { 29, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7133), "oprah winslet@gov.ru", "Oprah Winslet", "55589125", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7133) }, + { 30, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7134), "audrey windsor@something.com", "Audrey Windsor", "87967846", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7134) }, + { 31, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7135), "elvis middleton@gov.ru", "Elvis Middleton", "77889124", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7136) }, + { 32, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7137), "charles hepburn@bbc.co.uk", "Charles Hepburn", "41980562", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7137) }, + { 33, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7138), "mick windsor@tesla.com", "Mick Windsor", "46573335", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7138) }, + { 34, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7147), "audrey winfrey@tesla.com", "Audrey Winfrey", "14297485", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7148) }, + { 35, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7149), "donald jagger@something.com", "Donald Jagger", "76653793", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7149) }, + { 36, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7151), "oprah winfrey@theworld.ca", "Oprah Winfrey", "27250815", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7151) }, + { 37, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7152), "charles jagger@tesla.com", "Charles Jagger", "22683147", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7152) }, + { 38, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7153), "elvis winslet@bbc.co.uk", "Elvis Winslet", "61709303", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7153) }, + { 39, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7154), "mick jagger@tesla.com", "Mick Jagger", "38151327", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7155) }, + { 40, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7156), "audrey windsor@something.com", "Audrey Windsor", "27011355", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7156) }, + { 41, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7157), "kate winfrey@theworld.ca", "Kate Winfrey", "37145318", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7157) }, + { 42, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7158), "audrey winfrey@something.com", "Audrey Winfrey", "38519203", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7159) }, + { 43, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7160), "charles middleton@gov.us", "Charles Middleton", "77133526", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7160) }, + { 44, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7161), "donald hepburn@nasa.org.us", "Donald Hepburn", "48194121", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7162) }, + { 45, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7163), "barack presley@nasa.org.us", "Barack Presley", "18488203", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7163) }, + { 46, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7164), "charles trump@theworld.ca", "Charles Trump", "13162166", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7165) }, + { 47, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7166), "jimi hepburn@google.com", "Jimi Hepburn", "23226421", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7166) }, + { 48, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7167), "audrey jagger@gov.gr", "Audrey Jagger", "61420949", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7167) }, + { 49, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7168), "kate obama@gov.us", "Kate Obama", "59125783", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7168) } + }); + + migrationBuilder.InsertData( + table: "movie", + columns: new[] { "movie_id", "CreatedAt", "description", "rating", "runtime_mins", "title", "UpdatedAt" }, + values: new object[,] + { + { 1, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7525), "Very funny", "years 11+", 146, "Several Rose Smelling Buildings", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7643) }, + { 2, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8153), "Very funny", "years 16+", 91, "Fifteen Microscopic Leopards", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8153) }, + { 3, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8157), "Very funny", "years 6+", 90, "Fifteen Microscopic Leopards", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8157) }, + { 4, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8159), "Very funny", "All", 137, "Two Transparent Cars", new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8159) } + }); + + migrationBuilder.InsertData( + table: "screenings", + columns: new[] { "screening_id", "capacity", "CreatedAt", "movie_id", "screen_number", "starts_at", "UpdatedAt" }, + values: new object[,] + { + { 1, 89, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8777), 3, 1, new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8892) }, + { 2, 88, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9799), 2, 0, new DateTime(2025, 8, 1, 11, 30, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9800) }, + { 3, 34, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9802), 3, 2, new DateTime(2025, 6, 22, 13, 40, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9802) }, + { 4, 55, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9803), 2, 0, new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9803) }, + { 5, 61, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9804), 3, 1, new DateTime(2025, 6, 7, 4, 25, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9804) }, + { 6, 84, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9807), 2, 2, new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9807) }, + { 7, 78, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9808), 1, 4, new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9808) }, + { 8, 56, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9809), 2, 0, new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9809) }, + { 9, 50, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9810), 1, 2, new DateTime(2025, 3, 25, 15, 50, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9810) }, + { 10, 63, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9811), 4, 3, new DateTime(2025, 5, 1, 8, 10, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9812) }, + { 11, 70, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9812), 1, 4, new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813) }, + { 12, 62, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813), 4, 1, new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813) }, + { 13, 43, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9814), 4, 4, new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9814) }, + { 14, 26, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9815), 3, 4, new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9815) }, + { 15, 66, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9816), 1, 1, new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9816) }, + { 16, 66, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9823), 2, 2, new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9823) }, + { 17, 86, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9824), 2, 4, new DateTime(2025, 6, 7, 4, 25, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9824) }, + { 18, 54, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826), 4, 4, new DateTime(2025, 2, 21, 18, 0, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826) }, + { 19, 65, new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826), 1, 1, new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9827) } + }); + + migrationBuilder.InsertData( + table: "tickets", + columns: new[] { "ticket_id", "CreatedAt", "customer_id", "screening_id", "UpdatedAt", "numSeats" }, + values: new object[,] + { + { 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 25, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 7, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 5, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 10, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 12, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 34, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 12, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 43, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 33, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 10, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 12, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 49, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 10, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 7, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 48, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 18, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 16, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 20, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 21, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 11, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 22, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 32, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 23, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 8, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 24, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 36, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 25, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 26, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 32, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 27, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 28, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 27, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 29, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 22, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 30, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 33, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 31, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 26, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 32, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 4, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 33, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 22, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 34, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 35, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 30, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 36, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 29, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 37, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 38, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 39, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 18, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 40, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 46, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 41, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 10, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 42, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 29, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 43, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 38, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 44, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 18, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 45, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 25, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 46, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 17, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 47, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 16, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 48, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 23, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 49, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 38, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 50, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 23, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 51, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 10, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 52, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 12, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 53, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 54, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 4, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 55, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 28, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 56, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 57, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 36, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 58, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 5, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 59, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 29, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 60, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 31, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 61, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 3, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 62, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 45, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 63, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 34, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 64, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 25, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 65, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 66, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 17, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 67, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 6, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 68, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 69, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 27, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 70, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 36, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 71, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 23, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 72, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 8, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 73, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, 10, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 74, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 25, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 75, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 37, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 76, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 42, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 77, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 40, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 78, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 21, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 79, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 80, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 7, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 81, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 82, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 83, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 47, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 84, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 5, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 85, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 14, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 86, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 87, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 88, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 36, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 89, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 3, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 90, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 20, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 91, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 41, 10, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 92, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 19, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 93, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 47, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 94, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 37, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 95, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 19, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 96, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 43, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 97, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 48, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 98, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 22, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 99, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 30, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 100, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 15, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 101, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 38, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 102, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 36, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 103, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 20, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 104, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 49, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 105, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 7, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 106, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 14, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 107, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 45, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 108, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 20, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 109, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 110, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 111, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 12, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 112, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 5, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 113, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 15, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 114, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 49, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 115, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 33, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 116, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 23, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 117, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 118, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 48, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 119, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 18, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 120, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 46, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 121, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 40, 10, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 122, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 123, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 20, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 124, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 19, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 125, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 49, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 126, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 42, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 127, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 40, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 128, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 11, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 129, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 10, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 130, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 42, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 131, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 27, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 132, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 29, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 133, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 17, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 134, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 33, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 135, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 41, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 136, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 137, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 10, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 138, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 139, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 17, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 140, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 141, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 41, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 142, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 47, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 143, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 34, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 144, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 145, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 146, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 7, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 147, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 148, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 11, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 149, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 17, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 150, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 151, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 31, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 152, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 16, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 153, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 16, 13, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 154, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 155, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 4, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 156, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 30, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 157, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 6, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 158, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 5, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 159, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 45, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 160, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 44, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 161, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 25, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 162, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 40, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 163, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 12, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 164, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 8, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 165, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 27, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 166, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 11, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 167, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 168, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 169, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 4, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 170, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 17, 3, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 171, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 172, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 30, 12, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 173, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 48, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 174, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 23, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 175, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 6, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 176, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 40, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 177, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 8, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 178, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 9, 4, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 179, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 41, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 180, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 181, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 182, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 48, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 183, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 3, 7, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 184, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 42, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 185, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 30, 5, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 186, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 39, 17, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 187, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 29, 16, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 188, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 45, 1, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 189, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 30, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 190, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 4, 6, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 191, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 11, 2, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 192, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 14, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 193, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 41, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 194, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 24, 10, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 195, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 47, 9, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 196, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 8, 18, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 }, + { 197, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 35, 19, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 198, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 37, 15, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 1 }, + { 199, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 44, 8, new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), 2 } + }); + + migrationBuilder.CreateIndex( + name: "IX_screenings_movie_id", + table: "screenings", + column: "movie_id"); + + migrationBuilder.CreateIndex( + name: "IX_tickets_customer_id", + table: "tickets", + column: "customer_id"); + + migrationBuilder.CreateIndex( + name: "IX_tickets_screening_id", + table: "tickets", + column: "screening_id"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "ApplicationUsers"); + + migrationBuilder.DropTable( + name: "tickets"); + + migrationBuilder.DropTable( + name: "Customers"); + + migrationBuilder.DropTable( + name: "screenings"); + + migrationBuilder.DropTable( + name: "movie"); + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Migrations/CinemaContextModelSnapshot.cs b/api-cinema-challenge/api-cinema-challenge/Migrations/CinemaContextModelSnapshot.cs new file mode 100644 index 00000000..217fd1f8 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Migrations/CinemaContextModelSnapshot.cs @@ -0,0 +1,2744 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; +using api_cinema_challenge.Data; + +#nullable disable + +namespace api_cinema_challenge.Migrations +{ + [DbContext(typeof(CinemaContext))] + partial class CinemaContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.8") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("api_cinema_challenge.Data.ApplicationUser", b => + { + b.Property("Id") + .HasColumnType("text"); + + b.Property("AccessFailedCount") + .HasColumnType("integer"); + + b.Property("ConcurrencyStamp") + .HasColumnType("text"); + + b.Property("Email") + .HasColumnType("text"); + + b.Property("EmailConfirmed") + .HasColumnType("boolean"); + + b.Property("LockoutEnabled") + .HasColumnType("boolean"); + + b.Property("LockoutEnd") + .HasColumnType("timestamp with time zone"); + + b.Property("NormalizedEmail") + .HasColumnType("text"); + + b.Property("NormalizedUserName") + .HasColumnType("text"); + + b.Property("PasswordHash") + .HasColumnType("text"); + + b.Property("PhoneNumber") + .HasColumnType("text"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("boolean"); + + b.Property("Role") + .HasColumnType("integer"); + + b.Property("SecurityStamp") + .HasColumnType("text"); + + b.Property("TwoFactorEnabled") + .HasColumnType("boolean"); + + b.Property("UserName") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("ApplicationUsers"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Customer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("customer_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Email") + .IsRequired() + .HasColumnType("text") + .HasColumnName("email"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name"); + + b.Property("Phone") + .IsRequired() + .HasColumnType("text") + .HasColumnName("phone"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.ToTable("Customers"); + + b.HasData( + new + { + Id = 1, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(5796), + Email = "oprah winslet@nasa.org.us", + Name = "Oprah Winslet", + Phone = "38597758", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(5997) + }, + new + { + Id = 2, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7059), + Email = "donald hendrix@nasa.org.us", + Name = "Donald Hendrix", + Phone = "31294393", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7060) + }, + new + { + Id = 3, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7077), + Email = "oprah winfrey@gov.ru", + Name = "Oprah Winfrey", + Phone = "12461023", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7077) + }, + new + { + Id = 4, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7079), + Email = "kate windsor@nasa.org.us", + Name = "Kate Windsor", + Phone = "60877520", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7080) + }, + new + { + Id = 5, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7081), + Email = "kate trump@gov.gr", + Name = "Kate Trump", + Phone = "28214601", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7082) + }, + new + { + Id = 6, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7087), + Email = "donald winslet@theworld.ca", + Name = "Donald Winslet", + Phone = "99090594", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7087) + }, + new + { + Id = 7, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7089), + Email = "jimi winslet@google.com", + Name = "Jimi Winslet", + Phone = "51342584", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7090) + }, + new + { + Id = 8, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7092), + Email = "kate presley@google.com", + Name = "Kate Presley", + Phone = "24606771", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7093) + }, + new + { + Id = 9, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7094), + Email = "audrey winslet@tesla.com", + Name = "Audrey Winslet", + Phone = "35122566", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7094) + }, + new + { + Id = 10, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7096), + Email = "barack jagger@bbc.co.uk", + Name = "Barack Jagger", + Phone = "30581375", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7096) + }, + new + { + Id = 11, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7098), + Email = "jimi trump@gov.nl", + Name = "Jimi Trump", + Phone = "29071711", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7098) + }, + new + { + Id = 12, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7107), + Email = "mick jagger@something.com", + Name = "Mick Jagger", + Phone = "71722749", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7108) + }, + new + { + Id = 13, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7109), + Email = "barack middleton@gov.gr", + Name = "Barack Middleton", + Phone = "28169066", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7109) + }, + new + { + Id = 14, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7111), + Email = "mick hepburn@gov.nl", + Name = "Mick Hepburn", + Phone = "46074000", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7111) + }, + new + { + Id = 15, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7113), + Email = "barack winslet@tesla.com", + Name = "Barack Winslet", + Phone = "66728315", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7113) + }, + new + { + Id = 16, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7114), + Email = "jimi middleton@theworld.ca", + Name = "Jimi Middleton", + Phone = "29909156", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7114) + }, + new + { + Id = 17, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7115), + Email = "donald hepburn@gov.nl", + Name = "Donald Hepburn", + Phone = "24603305", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7116) + }, + new + { + Id = 18, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7117), + Email = "kate jagger@google.com", + Name = "Kate Jagger", + Phone = "90412194", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7118) + }, + new + { + Id = 19, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7119), + Email = "kate winfrey@gov.us", + Name = "Kate Winfrey", + Phone = "58591549", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7119) + }, + new + { + Id = 20, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7120), + Email = "audrey windsor@gov.nl", + Name = "Audrey Windsor", + Phone = "61422617", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7120) + }, + new + { + Id = 21, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7122), + Email = "charles jagger@google.com", + Name = "Charles Jagger", + Phone = "39291620", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7122) + }, + new + { + Id = 22, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7123), + Email = "jimi obama@gov.us", + Name = "Jimi Obama", + Phone = "41054703", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7123) + }, + new + { + Id = 23, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7124), + Email = "barack jagger@theworld.ca", + Name = "Barack Jagger", + Phone = "81454823", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7125) + }, + new + { + Id = 24, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7126), + Email = "oprah winfrey@bbc.co.uk", + Name = "Oprah Winfrey", + Phone = "84236288", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7126) + }, + new + { + Id = 25, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7127), + Email = "donald obama@tesla.com", + Name = "Donald Obama", + Phone = "11106320", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7128) + }, + new + { + Id = 26, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7129), + Email = "charles winfrey@something.com", + Name = "Charles Winfrey", + Phone = "98425086", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7129) + }, + new + { + Id = 27, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7130), + Email = "mick winfrey@bbc.co.uk", + Name = "Mick Winfrey", + Phone = "70070854", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7130) + }, + new + { + Id = 28, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7131), + Email = "kate presley@nasa.org.us", + Name = "Kate Presley", + Phone = "88125635", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7132) + }, + new + { + Id = 29, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7133), + Email = "oprah winslet@gov.ru", + Name = "Oprah Winslet", + Phone = "55589125", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7133) + }, + new + { + Id = 30, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7134), + Email = "audrey windsor@something.com", + Name = "Audrey Windsor", + Phone = "87967846", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7134) + }, + new + { + Id = 31, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7135), + Email = "elvis middleton@gov.ru", + Name = "Elvis Middleton", + Phone = "77889124", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7136) + }, + new + { + Id = 32, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7137), + Email = "charles hepburn@bbc.co.uk", + Name = "Charles Hepburn", + Phone = "41980562", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7137) + }, + new + { + Id = 33, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7138), + Email = "mick windsor@tesla.com", + Name = "Mick Windsor", + Phone = "46573335", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7138) + }, + new + { + Id = 34, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7147), + Email = "audrey winfrey@tesla.com", + Name = "Audrey Winfrey", + Phone = "14297485", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7148) + }, + new + { + Id = 35, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7149), + Email = "donald jagger@something.com", + Name = "Donald Jagger", + Phone = "76653793", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7149) + }, + new + { + Id = 36, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7151), + Email = "oprah winfrey@theworld.ca", + Name = "Oprah Winfrey", + Phone = "27250815", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7151) + }, + new + { + Id = 37, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7152), + Email = "charles jagger@tesla.com", + Name = "Charles Jagger", + Phone = "22683147", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7152) + }, + new + { + Id = 38, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7153), + Email = "elvis winslet@bbc.co.uk", + Name = "Elvis Winslet", + Phone = "61709303", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7153) + }, + new + { + Id = 39, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7154), + Email = "mick jagger@tesla.com", + Name = "Mick Jagger", + Phone = "38151327", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7155) + }, + new + { + Id = 40, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7156), + Email = "audrey windsor@something.com", + Name = "Audrey Windsor", + Phone = "27011355", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7156) + }, + new + { + Id = 41, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7157), + Email = "kate winfrey@theworld.ca", + Name = "Kate Winfrey", + Phone = "37145318", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7157) + }, + new + { + Id = 42, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7158), + Email = "audrey winfrey@something.com", + Name = "Audrey Winfrey", + Phone = "38519203", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7159) + }, + new + { + Id = 43, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7160), + Email = "charles middleton@gov.us", + Name = "Charles Middleton", + Phone = "77133526", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7160) + }, + new + { + Id = 44, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7161), + Email = "donald hepburn@nasa.org.us", + Name = "Donald Hepburn", + Phone = "48194121", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7162) + }, + new + { + Id = 45, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7163), + Email = "barack presley@nasa.org.us", + Name = "Barack Presley", + Phone = "18488203", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7163) + }, + new + { + Id = 46, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7164), + Email = "charles trump@theworld.ca", + Name = "Charles Trump", + Phone = "13162166", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7165) + }, + new + { + Id = 47, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7166), + Email = "jimi hepburn@google.com", + Name = "Jimi Hepburn", + Phone = "23226421", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7166) + }, + new + { + Id = 48, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7167), + Email = "audrey jagger@gov.gr", + Name = "Audrey Jagger", + Phone = "61420949", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7167) + }, + new + { + Id = 49, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7168), + Email = "kate obama@gov.us", + Name = "Kate Obama", + Phone = "59125783", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7168) + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Movie", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("movie_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasColumnName("description"); + + b.Property("Rating") + .IsRequired() + .HasColumnType("text") + .HasColumnName("rating"); + + b.Property("RunTimeMins") + .HasColumnType("integer") + .HasColumnName("runtime_mins"); + + b.Property("Title") + .IsRequired() + .HasColumnType("text") + .HasColumnName("title"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.ToTable("movie"); + + b.HasData( + new + { + Id = 1, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7525), + Description = "Very funny", + Rating = "years 11+", + RunTimeMins = 146, + Title = "Several Rose Smelling Buildings", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(7643) + }, + new + { + Id = 2, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8153), + Description = "Very funny", + Rating = "years 16+", + RunTimeMins = 91, + Title = "Fifteen Microscopic Leopards", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8153) + }, + new + { + Id = 3, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8157), + Description = "Very funny", + Rating = "years 6+", + RunTimeMins = 90, + Title = "Fifteen Microscopic Leopards", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8157) + }, + new + { + Id = 4, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8159), + Description = "Very funny", + Rating = "All", + RunTimeMins = 137, + Title = "Two Transparent Cars", + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8159) + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Screening", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("screening_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Capacity") + .HasColumnType("integer") + .HasColumnName("capacity"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("MovieId") + .HasColumnType("integer") + .HasColumnName("movie_id"); + + b.Property("ScreenNumber") + .HasColumnType("integer") + .HasColumnName("screen_number"); + + b.Property("StartsAt") + .HasColumnType("timestamp with time zone") + .HasColumnName("starts_at"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("MovieId"); + + b.ToTable("screenings"); + + b.HasData( + new + { + Id = 1, + Capacity = 89, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8777), + MovieId = 3, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(8892) + }, + new + { + Id = 2, + Capacity = 88, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9799), + MovieId = 2, + ScreenNumber = 0, + StartsAt = new DateTime(2025, 8, 1, 11, 30, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9800) + }, + new + { + Id = 3, + Capacity = 34, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9802), + MovieId = 3, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 6, 22, 13, 40, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9802) + }, + new + { + Id = 4, + Capacity = 55, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9803), + MovieId = 2, + ScreenNumber = 0, + StartsAt = new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9803) + }, + new + { + Id = 5, + Capacity = 61, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9804), + MovieId = 3, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 6, 7, 4, 25, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9804) + }, + new + { + Id = 6, + Capacity = 84, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9807), + MovieId = 2, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9807) + }, + new + { + Id = 7, + Capacity = 78, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9808), + MovieId = 1, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9808) + }, + new + { + Id = 8, + Capacity = 56, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9809), + MovieId = 2, + ScreenNumber = 0, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9809) + }, + new + { + Id = 9, + Capacity = 50, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9810), + MovieId = 1, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 3, 25, 15, 50, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9810) + }, + new + { + Id = 10, + Capacity = 63, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9811), + MovieId = 4, + ScreenNumber = 3, + StartsAt = new DateTime(2025, 5, 1, 8, 10, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9812) + }, + new + { + Id = 11, + Capacity = 70, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9812), + MovieId = 1, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813) + }, + new + { + Id = 12, + Capacity = 62, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813), + MovieId = 4, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9813) + }, + new + { + Id = 13, + Capacity = 43, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9814), + MovieId = 4, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9814) + }, + new + { + Id = 14, + Capacity = 26, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9815), + MovieId = 3, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9815) + }, + new + { + Id = 15, + Capacity = 66, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9816), + MovieId = 1, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 5, 14, 16, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9816) + }, + new + { + Id = 16, + Capacity = 66, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9823), + MovieId = 2, + ScreenNumber = 2, + StartsAt = new DateTime(2025, 2, 3, 7, 45, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9823) + }, + new + { + Id = 17, + Capacity = 86, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9824), + MovieId = 2, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 6, 7, 4, 25, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9824) + }, + new + { + Id = 18, + Capacity = 54, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826), + MovieId = 4, + ScreenNumber = 4, + StartsAt = new DateTime(2025, 2, 21, 18, 0, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826) + }, + new + { + Id = 19, + Capacity = 65, + CreatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9826), + MovieId = 1, + ScreenNumber = 1, + StartsAt = new DateTime(2025, 7, 3, 9, 55, 0, 0, DateTimeKind.Utc), + UpdatedAt = new DateTime(2025, 8, 26, 10, 6, 24, 726, DateTimeKind.Utc).AddTicks(9827) + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Ticket", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("ticket_id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("CustomerId") + .HasColumnType("integer") + .HasColumnName("customer_id"); + + b.Property("ScreeningId") + .HasColumnType("integer") + .HasColumnName("screening_id"); + + b.Property("UpdatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("numSeats") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("CustomerId"); + + b.HasIndex("ScreeningId"); + + b.ToTable("tickets"); + + b.HasData( + new + { + Id = 1, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 2, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 3, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 4, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 5, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 6, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 34, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 7, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 8, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 43, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 9, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 10, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 11, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 12, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 13, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 14, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 15, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 16, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 17, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 18, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 19, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 20, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 21, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 22, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 32, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 23, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 24, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 25, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 26, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 32, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 27, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 28, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 29, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 22, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 30, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 31, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 26, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 32, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 33, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 22, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 34, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 35, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 36, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 37, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 38, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 39, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 40, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 46, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 41, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 42, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 43, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 38, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 44, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 45, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 46, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 47, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 48, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 49, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 38, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 50, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 51, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 52, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 53, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 54, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 55, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 28, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 56, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 57, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 58, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 59, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 60, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 31, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 61, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 3, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 62, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 63, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 34, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 64, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 65, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 66, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 67, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 6, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 68, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 69, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 70, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 71, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 72, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 73, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 74, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 75, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 37, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 76, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 77, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 78, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 21, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 79, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 80, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 81, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 82, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 83, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 84, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 85, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 14, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 86, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 87, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 88, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 89, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 3, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 90, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 91, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 92, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 19, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 93, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 94, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 37, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 95, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 19, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 96, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 43, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 97, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 98, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 22, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 99, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 100, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 15, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 101, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 38, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 102, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 36, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 103, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 104, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 105, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 106, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 14, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 107, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 108, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 109, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 110, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 111, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 112, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 113, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 15, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 114, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 115, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 116, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 117, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 118, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 119, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 18, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 120, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 46, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 121, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 122, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 123, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 20, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 124, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 19, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 125, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 49, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 126, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 127, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 128, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 129, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 130, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 131, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 132, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 133, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 134, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 33, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 135, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 136, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 137, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 10, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 138, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 139, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 140, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 141, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 142, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 143, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 34, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 144, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 145, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 146, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 7, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 147, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 148, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 149, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 150, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 151, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 31, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 152, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 153, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 16, + ScreeningId = 13, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 154, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 155, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 156, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 157, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 6, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 158, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 5, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 159, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 160, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 44, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 161, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 25, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 162, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 163, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 12, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 164, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 165, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 27, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 166, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 11, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 167, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 1, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 168, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 2, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 169, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 170, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 17, + ScreeningId = 3, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 171, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 172, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 12, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 173, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 174, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 23, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 175, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 6, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 176, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 40, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 177, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 178, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 9, + ScreeningId = 4, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 179, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 180, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 181, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 182, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 48, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 183, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 3, + ScreeningId = 7, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 184, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 42, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 185, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 5, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 186, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 39, + ScreeningId = 17, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 187, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 29, + ScreeningId = 16, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 188, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 45, + ScreeningId = 1, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 189, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 30, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 190, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 4, + ScreeningId = 6, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 191, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 11, + ScreeningId = 2, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 192, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 14, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 193, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 41, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 194, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 24, + ScreeningId = 10, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 195, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 47, + ScreeningId = 9, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 196, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 8, + ScreeningId = 18, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }, + new + { + Id = 197, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 35, + ScreeningId = 19, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 198, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 37, + ScreeningId = 15, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 1 + }, + new + { + Id = 199, + CreatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + CustomerId = 44, + ScreeningId = 8, + UpdatedAt = new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), + numSeats = 2 + }); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Screening", b => + { + b.HasOne("api_cinema_challenge.Models.Movie", "Movie") + .WithMany("Screenings") + .HasForeignKey("MovieId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Movie"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Ticket", b => + { + b.HasOne("api_cinema_challenge.Models.Customer", "Customer") + .WithMany("Tickets") + .HasForeignKey("CustomerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("api_cinema_challenge.Models.Screening", "Screening") + .WithMany("Tickets") + .HasForeignKey("ScreeningId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Customer"); + + b.Navigation("Screening"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Customer", b => + { + b.Navigation("Tickets"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Movie", b => + { + b.Navigation("Screenings"); + }); + + modelBuilder.Entity("api_cinema_challenge.Models.Screening", b => + { + b.Navigation("Tickets"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Models/Customer.cs b/api-cinema-challenge/api-cinema-challenge/Models/Customer.cs new file mode 100644 index 00000000..3d13a99f --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Models/Customer.cs @@ -0,0 +1,39 @@ +using api_cinema_challenge.DOTs.CustomerDTOs; +using api_cinema_challenge.Repository; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace api_cinema_challenge.Models +{ + [Table("Customers")] + public class Customer + { + [Key] + [Column("customer_id")] + public int Id { get; set; } + [Column("name")] + public string Name { get; set; } + [Column("email")] + public string Email { get; set; } + [Column("phone")] + public string Phone { get; set; } + [Column("customer_tickets")] + public List Tickets { get; set; } = new List(); + + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + public Customer(CustomerPost newCustomer) + { + Name = newCustomer.Name; + Email = newCustomer.Email; + Phone = newCustomer.Phone; + CreatedAt = DateTime.UtcNow; + UpdatedAt = DateTime.UtcNow; + } + public Customer() + { + CreatedAt= DateTime.UtcNow; + UpdatedAt = DateTime.UtcNow; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Models/Movie.cs b/api-cinema-challenge/api-cinema-challenge/Models/Movie.cs new file mode 100644 index 00000000..c36292e1 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Models/Movie.cs @@ -0,0 +1,44 @@ +using api_cinema_challenge.DOTs.MovieDTOs; +using api_cinema_challenge.Repository; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace api_cinema_challenge.Models +{ + [Table("movie")] + public class Movie + { + [Key] + [Column("movie_id")] + public int Id { get; set; } + [Column("title")] + public string Title { get; set; } + [Column("rating")] + public string Rating { get; set; } + [Column("description")] + public string Description { get; set; } + [Column("runtime_mins")] + public int RunTimeMins { get; set; } + [Column("screenings")] + public List Screenings { get; set; } = new List(); + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + + + public Movie(MoviePost movie) + { + Title = movie.Title; + Rating = movie.Rating; + Description = movie.Description; + RunTimeMins = movie.RunTimeMins; + CreatedAt = DateTime.UtcNow; + UpdatedAt = DateTime.UtcNow; + } + + public Movie() + { + CreatedAt = DateTime.UtcNow; + UpdatedAt = DateTime.UtcNow; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Models/Screening.cs b/api-cinema-challenge/api-cinema-challenge/Models/Screening.cs new file mode 100644 index 00000000..87c1f099 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Models/Screening.cs @@ -0,0 +1,43 @@ +using api_cinema_challenge.DOTs.ScreeningDTOs; +using api_cinema_challenge.Repository; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace api_cinema_challenge.Models +{ + [Table("screenings")] + public class Screening + { + [Key] + [Column("screening_id")] + public int Id { get; set; } + [Column("screen_number")] + public int ScreenNumber { get; set; } + [Column("capacity")] + public int Capacity { get; set; } + [Column("starts_at")] + public DateTime StartsAt { get; set; } + [Column("movie_id")] + public int MovieId { get; set; } + [Column("screening_tickets")] + public List Tickets { get; set; } = new List(); + [Column("screening_movie")] + public Movie Movie { get; set; } + + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + public Screening() + { + CreatedAt = DateTime.UtcNow; + UpdatedAt = DateTime.UtcNow; + } + public Screening(ScreeningPost newScreening) + { + ScreenNumber = newScreening.ScreenNumber; + Capacity = newScreening.Capacity; + StartsAt = newScreening.StartAt; + CreatedAt = DateTime.UtcNow; + UpdatedAt = DateTime.UtcNow; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Models/Ticket.cs b/api-cinema-challenge/api-cinema-challenge/Models/Ticket.cs new file mode 100644 index 00000000..64113177 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Models/Ticket.cs @@ -0,0 +1,40 @@ +using api_cinema_challenge.DOTs.TicketDTO; +using api_cinema_challenge.Repository; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; +using System.Reflection; + +namespace api_cinema_challenge.Models +{ + [Table("tickets")] + public class Ticket + { + [Key] + [Column("ticket_id")] + public int Id { get; set; } + [Column("screening_id")] + public int ScreeningId { get; set; } + [Column("customer_id")] + public int CustomerId { get; set; } + [Column("ticket_screening")] + public Screening Screening { get; set; } + + [Column("ticket_customer")] + public Customer Customer { get; set; } + public int numSeats { get; set; } + + public DateTime CreatedAt { get; set; } + public DateTime UpdatedAt { get; set; } + + public Ticket(TicketPost ticket, int screeningId, int customerId) + { + ScreeningId = screeningId; + CustomerId = customerId; + numSeats = ticket.numSeats; + } + public Ticket() + { + + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Program.cs b/api-cinema-challenge/api-cinema-challenge/Program.cs index e55d9d54..f13d155c 100644 --- a/api-cinema-challenge/api-cinema-challenge/Program.cs +++ b/api-cinema-challenge/api-cinema-challenge/Program.cs @@ -1,11 +1,118 @@ using api_cinema_challenge.Data; +using api_cinema_challenge.Endpoints; +using api_cinema_challenge.Models; +using api_cinema_challenge.Repository; +using api_cinema_challenge.Services; +using Microsoft.AspNetCore.Authentication.JwtBearer; +using Microsoft.AspNetCore.Identity; +using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; +using Microsoft.IdentityModel.Tokens; +using Microsoft.OpenApi.Models; +using System.Diagnostics; +using System.Text; +using System.Text.Json.Serialization; var builder = WebApplication.CreateBuilder(args); // Add services to the container. +//builder.Services.AddOpenApi(); +builder.Services.AddControllers(); builder.Services.AddEndpointsApiExplorer(); -builder.Services.AddSwaggerGen(); -builder.Services.AddDbContext(); +builder.Services.AddSwaggerGen(option => +{ + option.SwaggerDoc("v1", new OpenApiInfo { Title = "Test API", Version = "v1" }); + option.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme + { + In = ParameterLocation.Header, + Description = "Please enter a valid token", + Name = "Authorization", + Type = SecuritySchemeType.Http, + BearerFormat = "JWT", + Scheme = "Bearer" + }); + option.AddSecurityRequirement(new OpenApiSecurityRequirement + { + { + new OpenApiSecurityScheme + { + Reference = new OpenApiReference + { + Type = ReferenceType.SecurityScheme, + Id = "Bearer" + } + }, + new string[] { } + } + }); +}); + +builder.Services.AddProblemDetails(); +builder.Services.AddApiVersioning(cfg => +{ + cfg.DefaultApiVersion = new ApiVersion(1, 1); + cfg.AssumeDefaultVersionWhenUnspecified = true; +}); +builder.Services.AddRouting(options => options.LowercaseUrls = true); +builder.Services.AddDbContext(opt => +{ + opt.UseNpgsql(builder.Configuration.GetConnectionString("DefaultConnectionString")); + opt.LogTo(message => Debug.WriteLine(message)); + +}); +builder.Services.AddScoped, GenericRepository>(); +builder.Services.AddScoped, GenericRepository>(); +builder.Services.AddScoped, GenericRepository>(); +builder.Services.AddScoped, GenericRepository>(); +builder.Services.AddScoped(); + + +builder.Services.AddControllers().AddJsonOptions(opt => +{ + opt.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter()); +}); + +builder.Services + .AddIdentity(options => + { + options.SignIn.RequireConfirmedAccount = false; + options.User.RequireUniqueEmail = true; + options.Password.RequireDigit = false; + options.Password.RequiredLength = 6; + options.Password.RequireNonAlphanumeric = false; + options.Password.RequireUppercase = false; + }) + .AddRoles() + .AddEntityFrameworkStores(); + +var validIssuer = builder.Configuration.GetValue("JwtTokenSettings:ValidIssuer"); +var validAudience = builder.Configuration.GetValue("JwtTokenSettings:ValidAudience"); +var symmetricSecurityKey = builder.Configuration.GetValue("JwtTokenSettings:SymmetricSecurityKey"); + +builder.Services.AddAuthentication(options => +{ + options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; + options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; + options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme; +}) + .AddJwtBearer(options => + { + options.IncludeErrorDetails = true; + options.TokenValidationParameters = new TokenValidationParameters() + { + ClockSkew = TimeSpan.Zero, + ValidateIssuer = true, + ValidateAudience = true, + ValidateLifetime = true, + ValidateIssuerSigningKey = true, + ValidIssuer = validIssuer, + ValidAudience = validAudience, + IssuerSigningKey = new SymmetricSecurityKey( + Encoding.UTF8.GetBytes(symmetricSecurityKey) + ), + }; + }); + var app = builder.Build(); @@ -17,4 +124,12 @@ } app.UseHttpsRedirection(); +app.UseStatusCodePages(); + +app.UseAuthentication(); +app.UseAuthorization(); +app.ConfigueMovie(); +app.ConfigueCustomer(); +app.MapControllers(); + app.Run(); diff --git a/api-cinema-challenge/api-cinema-challenge/Repository/GenericRepository.cs b/api-cinema-challenge/api-cinema-challenge/Repository/GenericRepository.cs new file mode 100644 index 00000000..12a0982c --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Repository/GenericRepository.cs @@ -0,0 +1,60 @@ + +using api_cinema_challenge.Data; +using api_cinema_challenge.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.ChangeTracking; +using System.Linq.Expressions; + +namespace api_cinema_challenge.Repository +{ + public class GenericRepository : IGenericRepository where T : class + { + private CinemaContext _db; + private DbSet _table = null!; + public GenericRepository(CinemaContext context) + { + _db = context; + _table = _db.Set(); + } + public async Task> GetAll() + { + var response = await _table.ToListAsync(); + return response; + } + + public async Task GetById(int id) + { + var response = await _table.FindAsync(id); + return response; + } + + public async Task> GetWithIncludes(Func, IQueryable> includeQuery) + { + IQueryable query = includeQuery(_table); + return await query.ToListAsync(); + } + public async Task GetByIdWithIncludes(Func, T> includeQuery) + { + var entity = includeQuery(_table); + return entity; + } + public async Task Create(T entity) + { + await _table.AddAsync(entity); + await _db.SaveChangesAsync(); + return entity; + } + public async Task Update(T entity) + { + _table.Update(entity); + await _db.SaveChangesAsync(); + return entity; + } + public async Task Delete(T entity) + { + _table.Remove(entity); + await _db.SaveChangesAsync(); + return entity; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Repository/IGenericRepository.cs b/api-cinema-challenge/api-cinema-challenge/Repository/IGenericRepository.cs new file mode 100644 index 00000000..dfae529d --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Repository/IGenericRepository.cs @@ -0,0 +1,16 @@ +using Microsoft.EntityFrameworkCore.ChangeTracking; +using System.Linq.Expressions; + +namespace api_cinema_challenge.Repository +{ + public interface IGenericRepository + { + Task> GetAll(); + Task GetById(int id); + Task> GetWithIncludes(Func, IQueryable> includes); + Task GetByIdWithIncludes(Func, T> includeQuery); + Task Create(T entity); + Task Update(T entity); + Task Delete(T entity); + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Repository/TicketRepository.cs b/api-cinema-challenge/api-cinema-challenge/Repository/TicketRepository.cs new file mode 100644 index 00000000..744e39b5 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Repository/TicketRepository.cs @@ -0,0 +1,25 @@ +using api_cinema_challenge.Data; +using api_cinema_challenge.DOTs.TicketDTO; +using api_cinema_challenge.Models; +using Microsoft.EntityFrameworkCore; + +namespace api_cinema_challenge.Repository +{ + public class TicketRepository + { + private CinemaContext _db; + public TicketRepository(CinemaContext context) + { + _db = context; + + } + + public async Task Book(TicketPost ticketPost, int customerId, int screeningId) + { + Ticket ticket = new Ticket(ticketPost, customerId, screeningId); + _db.Tickets.Add(ticket); + await _db.SaveChangesAsync(); + return ticket; + } + } +} diff --git a/api-cinema-challenge/api-cinema-challenge/Services/TokenService.cs b/api-cinema-challenge/api-cinema-challenge/Services/TokenService.cs new file mode 100644 index 00000000..44239815 --- /dev/null +++ b/api-cinema-challenge/api-cinema-challenge/Services/TokenService.cs @@ -0,0 +1,82 @@ + + +using System.IdentityModel.Tokens.Jwt; +using Microsoft.IdentityModel.Tokens; +using System.Security.Claims; +using System.Text; +using api_cinema_challenge.Data; + +namespace api_cinema_challenge.Services; +public class TokenService +{ + private const int ExpirationMinutes = 60; + private readonly ILogger _logger; + public TokenService(ILogger logger) + { + _logger = logger; + } + + public string CreateToken(ApplicationUser user) + { + + var expiration = DateTime.UtcNow.AddMinutes(ExpirationMinutes); + var token = CreateJwtToken( + CreateClaims(user), + CreateSigningCredentials(), + expiration + ); + var tokenHandler = new JwtSecurityTokenHandler(); + + _logger.LogInformation("JWT Token created"); + + return tokenHandler.WriteToken(token); + } + + private JwtSecurityToken CreateJwtToken(List claims, SigningCredentials credentials, + DateTime expiration) => + new( + new ConfigurationBuilder().AddJsonFile("appsettings.json").Build().GetSection("JwtTokenSettings")["ValidIssuer"], + new ConfigurationBuilder().AddJsonFile("appsettings.json").Build().GetSection("JwtTokenSettings")["ValidAudience"], + claims, + expires: expiration, + signingCredentials: credentials + ); + + private List CreateClaims(ApplicationUser user) + { + var jwtSub = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build().GetSection("JwtTokenSettings")["JwtRegisteredClaimNamesSub"]; + + try + { + var claims = new List + { + new Claim(JwtRegisteredClaimNames.Sub, jwtSub), + new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()), + new Claim(JwtRegisteredClaimNames.Iat, DateTimeOffset.UtcNow.ToUnixTimeSeconds().ToString()), + new Claim(ClaimTypes.NameIdentifier, user.Id), + new Claim(ClaimTypes.Name, user.UserName), + new Claim(ClaimTypes.Email, user.Email), + new Claim(ClaimTypes.Role, user.Role.ToString()) + }; + + return claims; + } + catch (Exception e) + { + Console.WriteLine(e); + throw; + } + } + + private SigningCredentials CreateSigningCredentials() + { + var symmetricSecurityKey = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build().GetSection("JwtTokenSettings")["SymmetricSecurityKey"]; + + return new SigningCredentials( + new SymmetricSecurityKey( + Encoding.UTF8.GetBytes(symmetricSecurityKey) + ), + SecurityAlgorithms.HmacSha256 + ); + } +} \ No newline at end of file diff --git a/api-cinema-challenge/api-cinema-challenge/api-cinema-challenge.csproj b/api-cinema-challenge/api-cinema-challenge/api-cinema-challenge.csproj index 11e5c66b..8befbb94 100644 --- a/api-cinema-challenge/api-cinema-challenge/api-cinema-challenge.csproj +++ b/api-cinema-challenge/api-cinema-challenge/api-cinema-challenge.csproj @@ -8,13 +8,9 @@ - - - - - - - + + + @@ -24,11 +20,8 @@ + - - - - diff --git a/api-cinema-challenge/api-cinema-challenge/appsettings.example.json b/api-cinema-challenge/api-cinema-challenge/appsettings.example.json index b9175fe6..e69de29b 100644 --- a/api-cinema-challenge/api-cinema-challenge/appsettings.example.json +++ b/api-cinema-challenge/api-cinema-challenge/appsettings.example.json @@ -1,12 +0,0 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "ConnectionStrings": { - "DefaultConnectionString": "Host=HOST; Database=DATABASE; Username=USERNAME; Password=PASSWORD;" - } -} \ No newline at end of file