Esempio n. 1
0
        public async Task <IActionResult> IndicateExpectedGuests(ExpectedGuests expectedGuests)
        {
            if (ModelState.IsValid)
            {
                expectedGuests.TotalAmount = expectedGuests.NumberOfAdults + expectedGuests.NumberOfChildren;

                var dbSet  = _context.Set <ExpectedGuests>();
                var result = dbSet.Find(expectedGuests.Date);

                if (result != null)
                {
                    dbSet.Remove(result);
                }

                var   task = dbSet.AddAsync(expectedGuests);
                await task;

                if (task.IsCompletedSuccessfully)
                {
                    _context.SaveChanges();
                    return(RedirectToAction(nameof(Index)));
                }

                return(View());
            }

            return(View());
        }
Esempio n. 2
0
        /* Indicate amount of guests that has ordered breakfast (this day)  */
        public IActionResult IndicateExpectedGuests()
        {
            var vm = new ExpectedGuests();

            vm.Date = DateTime.Now; //Default today

            return(View(vm));
        }
        public KitchenOverviewViewModel(ExpectedGuests expectedGuestsInfo, List <CheckedIn> checkedInEntries, DateTime date)
        {
            if (expectedGuestsInfo != null)
            {
                ExpectedGuests = expectedGuestsInfo;
            }
            else
            {
                ExpectedGuests = new ExpectedGuests()
                {
                    Date             = date,
                    NumberOfAdults   = 0,
                    NumberOfChildren = 0,
                    TotalAmount      = 0
                }
            };

            Date = date;

            // Analyse data
            int adultsCheckedIn   = 0;
            int childrenCheckedIn = 0;

            checkedInEntries.ForEach(c =>
            {
                adultsCheckedIn   += c.NumberOfAdults;
                childrenCheckedIn += c.NumberOfChildren;
            });

            int totalCheckedIn = adultsCheckedIn + childrenCheckedIn;

            CheckedInAmount = new GuestAmount()
            {
                TotalAmount    = totalCheckedIn,
                AdultsAmount   = adultsCheckedIn,
                ChildrenAmount = childrenCheckedIn
            };
            NotCheckedInAmount = new GuestAmount()
            {
                TotalAmount    = (ExpectedGuests.TotalAmount - totalCheckedIn),
                AdultsAmount   = (ExpectedGuests.NumberOfAdults - adultsCheckedIn),
                ChildrenAmount = (ExpectedGuests.NumberOfChildren - childrenCheckedIn)
            };
        }