private async Task CheckForData() { var sd = new SeedData(_context);//Seed reservations //Check if today exists: var todayExists = await _context.ArrivalsAtBreakfast .AnyAsync(a => a.Date.Date == DateTime.Today.Date); if (todayExists == false) { var arrivals = new ArrivalsAtBreakfast() { Date = DateTime.Today }; _context.ArrivalsAtBreakfast.Add(arrivals); await _context.SaveChangesAsync(); } //Make a checkin page for each day with reservations var reservations = await _context.BreakfastReservations.ToListAsync(); foreach (var reservation in reservations) { if (await _context.ArrivalsAtBreakfast .AnyAsync(a => a.Date.Date == reservation.Date.Date) == false) { await _context.AddAsync(new ArrivalsAtBreakfast() { Date = reservation.Date.Date }); } } await _context.SaveChangesAsync(); }
public async Task <IActionResult> Create([Bind("BreakfastReservationsId,Date")] ArrivalsAtBreakfast arrivalsAtBreakfast) { if (ModelState.IsValid) { _context.Add(arrivalsAtBreakfast); await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(Index))); }
private void SeedArrivals(ApplicationDbContext dbContext) { var arrivals = new ArrivalsAtBreakfast() { Date = DateTime.Today }; for (int i = 0; i < 4; i++) { arrivals.BreakfastAttendees.Add(new Room(i + 100, i + 1, i * 2)); } dbContext.Add(arrivals); dbContext.SaveChanges(); }
public async Task <IActionResult> Details(int?id) { await CheckForData(); ArrivalsAtBreakfast arrivals = null; if (id != null) { arrivals = await _context.ArrivalsAtBreakfast .Include(a => a.BreakfastAttendees) .SingleOrDefaultAsync(a => a.ArrivalsAtBreakfastId == id); } else//Find today { arrivals = await _context.ArrivalsAtBreakfast .Include(a => a.BreakfastAttendees) .SingleOrDefaultAsync(a => a.Date.Date == DateTime.Today.Date); } if (arrivals == null) { return(NotFound()); } //Get reservations: var res = _context.BreakfastReservations .Include(r => r.BreakfastReservationList) .SingleOrDefault(r => r.Date.Date == arrivals.Date.Date); var resNumber = res?.GetNumberOfAdultsAndChildren(); ArrivalsExtended arrivalsExtended = new ArrivalsExtended(arrivals); if (resNumber != null) { arrivalsExtended.AdultReservations = resNumber[0]; arrivalsExtended.ChildReservations = resNumber[1]; } return(View(arrivalsExtended)); }