public ActionResult TransferGuestBill(int?id, int?roomId, int?companyId)
        {
            var model = new SearchViewModel
            {
                Company        = _businessAccountService.GetAll(HotelID).FirstOrDefault(x => x.Id == id.Value),
                GuestRoomsList = _guestRoomService.GetAll(HotelID).Where(x => x.IsActive).ToList()
            };

            return(View(model));
        }
Пример #2
0
        public ActionResult GetGraph()
        {
            var lst             = new List <string []>();
            int daysInThisMonth = DateTime.Now.Day;
            var startOfMonth    = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
            var guestSales      = _guestRoomService.GetAll(HotelID).Where(x => x.CheckinDate.IsBetween(startOfMonth, DateTime.Now));

            for (int i = 1; i <= daysInThisMonth; i++)
            {
                lst.Add(GetTodaysSales(i, guestSales));
            }


            return(Json(lst.ToArray(), JsonRequestBehavior.AllowGet));
        }
Пример #3
0
        //NextMonth
        public ActionResult NextMonth(int?id, int?room_select)
        {
            id++;

            if (id.Value > 12)
            {
                id = 1;
            }

            var nowNow = DateTime.Today;

            var now = new DateTime(nowNow.Year, id.Value, nowNow.Day);

            DateTime?arrive = new DateTime(now.Year, id.Value, 1);
            DateTime?depart = arrive.Value.AddMonths(1);



            if (!arrive.HasValue)
            {
                arrive = DateTime.Now;
            }
            if (!depart.HasValue)
            {
                depart = DateTime.Now.AddDays(1);
            }
            if (!room_select.HasValue)
            {
                room_select = 0;
            }

            IEnumerable <GuestReservation> gr = _roomService.GetAll(HotelID).SelectMany(x => x.GuestReservations.Where(y => y.IsActive)).ToList();


            var startOfMonth = new DateTime(now.Year, now.Month, 1);
            var daysInMonth  = System.DateTime.DaysInMonth(now.Year, now.Month);
            var endOfMonth   = new DateTime(now.Year, now.Month, daysInMonth);

            var conflicts = gr.SelectAvailable(arrive.Value, depart.Value, room_select.Value).ToList();
            var allRooms  = _roomService.GetAll(HotelID);

            if (conflicts.Count > 0)
            {
                var ids   = conflicts.Select(x => x.RoomId).ToList();
                var model = new RoomBookingViewModel {
                    RoomsList = allRooms.Where(x => !ids.Contains(x.Id)).ToList(), RoomsMatrixList = allRooms.ToList(), StartOfMonth = startOfMonth, EndOfMonth = endOfMonth
                };
                model.MonthId   = arrive.Value.Month;
                model.ThisMonth = arrive.Value;
                return(PartialView("_RoomMatrixDisplay", model));
            }
            else
            {
                var ids             = _guestRoomService.GetAll(HotelID).Where(x => x.CheckoutDate >= arrive).Select(x => x.RoomId).ToList();
                var dontSelectRooms = allRooms.Where(x => ids.Contains(x.Id)).ToList();

                var model = new RoomBookingViewModel {
                    RoomsList = dontSelectRooms, RoomsMatrixList = dontSelectRooms, StartOfMonth = startOfMonth, EndOfMonth = endOfMonth
                };
                model.MonthId   = arrive.Value.Month;
                model.ThisMonth = arrive.Value;
                return(PartialView("_RoomMatrixDisplay", model));
            }
        }