Ejemplo n.º 1
0
        public ActionResult Index(HotelSearchViewModel model = null, string username = null)
        {
            var Now = DateTime.Now;

            Session["CheckInDate"]  = Now.AddDays(1);
            Session["CheckOutDate"] = Now.AddDays(2);
            if (model != null && model.BeginDate >= DateTime.Now)
            {
                Session["CheckInDate"]  = model.BeginDate;
                Session["CheckOutDate"] = model.EndDate;
            }
            var result = new HotelListViewModel().GetHotels(model);

            ViewBag.HotelList = result;

            // var a = new FacilityModel().SelectListItems;

            ViewBag.Facility = new FacilityModel().SelectListItems;
            ViewBag.Scenic   = new ScenicModel().SelectListItems;

            var City = new Caches().TWCity;

            SelectList selectList = new SelectList(City, "ID", "Name", 0);

            ViewBag.City = selectList;

            return(View());
        }
Ejemplo n.º 2
0
        public ActionResult Search(HotelSearchViewModel hsViewModel)
        {
            hsViewModel.Cities = _hRepo.drpGetCountryStateCity();

            hsViewModel.RoomTypes = _hRepo.drpGetRoomTypes();

            if (TempData["hsViewModel"] != null)
            {
                hsViewModel = (HotelSearchViewModel)TempData["hsViewModel"];
            }

            return(View("Search", hsViewModel));
        }
Ejemplo n.º 3
0
        public PartialViewResult GetHotelRoomDetails(HotelSearchViewModel hsViewModel)
        {
            try
            {
                hsViewModel.HotelSearchRoomMealOccupancyPriceList = _hsRepo.GetHotelRoomDetails(hsViewModel.HotelSearch);
                Logger.Debug("HotelSearch Controller GetHotelSearch");
            }
            catch (Exception ex)
            {
                hsViewModel.FriendlyMessage.Add(MessageStore.Get("SYS01"));

                Logger.Error("HotelSearch Controller - GetHotelSearch" + ex.ToString());
            }

            TempData["hsViewModel"] = hsViewModel;

            return(PartialView("_HotelRoomDetails", hsViewModel));
        }
Ejemplo n.º 4
0
        public PartialViewResult GetHotelSearch(HotelSearchViewModel hsViewModel)
        {
            try
            {
                hsViewModel.HotelSearch.IsExtraChild = false;

                hsViewModel.HotelSearchRoomList = _hsRepo.GetHotelBasicDetails(hsViewModel.HotelSearch, (int)OccupancyType.Room);

                #region -----Price Calculation based on adult and child
                //decimal NetRate = 0;

                //decimal Extra = 0;

                //decimal ExtraPeopleCost = 0;

                //int PeopleCount = hsViewModel.HotelSearch.AdultCount + hsViewModel.HotelSearch.ChildCount;

                //foreach (var item in hsViewModel.HotelSearchRoomList)
                //{
                //    if (item.OccupancyCapacity >= PeopleCount)
                //    {
                //        if (hsViewModel.HotelSearch.ChildCount != 0)
                //        {
                //            hsViewModel.HotelSearch.IsExtraChild = true;

                //            hsViewModel.HotelSearchExtraList = _hsRepo.GetHotelBasicDetails(hsViewModel.HotelSearch, (int)OccupancyType.Extra);

                //            if (hsViewModel.HotelSearchExtraList.Count > 0)
                //            {
                //                decimal ExtraRate = 0;

                //                var minExtraCost = hsViewModel.HotelSearchExtraList.Min(a => a.HotelRoomPrice);

                //                ExtraRate = ((hsViewModel.HotelSearch.ChildCount) * minExtraCost);

                //                NetRate = item.HotelRoomPrice + ExtraRate;

                //                item.HotelRoomPrice = NetRate;

                //                //hsViewModel.HotelSearchList.Add(item);
                //            }
                //        }

                //        if (item.OccupancyValue <= hsViewModel.HotelSearch.AdultCount)
                //        {
                //            if (item.OccupancyValue == hsViewModel.HotelSearch.AdultCount)
                //            {
                //                item.HotelRoomPrice = ((item.HotelRoomPrice) * hsViewModel.HotelSearch.AdultCount);
                //            }
                //            else
                //            {
                //                int AdultCount = hsViewModel.HotelSearch.AdultCount;

                //                while (AdultCount >= item.OccupancyValue)
                //                {
                //                    int remains = AdultCount - item.OccupancyValue;

                //                    Extra = item.HotelRoomPrice;

                //                    AdultCount = remains;

                //                    ExtraPeopleCost += Extra;
                //                }

                //                item.HotelRoomPrice = ExtraPeopleCost;
                //            }
                //        }
                //        else
                //        {
                //            hsViewModel.HotelSearch.IsExtraChild = false;

                //            item.HotelRoomPrice = ((item.HotelRoomPrice) * hsViewModel.HotelSearch.AdultCount);

                //            hsViewModel.HotelSearchExtraList = _hsRepo.GetHotelBasicDetails(hsViewModel.HotelSearch, (int)OccupancyType.Extra);

                //            if (hsViewModel.HotelSearchExtraList.Count > 0)
                //            {

                //                var minExtraCost = hsViewModel.HotelSearchExtraList.Min(a => a.HotelRoomPrice);

                //                decimal ExtraRate = 0;

                //                ExtraRate = ((hsViewModel.HotelSearch.AdultCount) * minExtraCost);

                //                NetRate = NetRate + ExtraRate;

                //                item.HotelRoomPrice = NetRate;
                //            }
                //        }
                //        hsViewModel.HotelSearchList.Add(item);
                //    }
                //}
                #endregion

                #region ---Comment------
                //foreach (var item in hsViewModel.HotelSearchRoomList)
                //{
                //    if (item.OccupancyCapacity >= PeopleCount)
                //    {

                //        if (item.OccupancyValue <= hsViewModel.HotelSearch.AdultCount)
                //        {
                //            item.HotelRoomPrice = ((item.HotelRoomPrice) * hsViewModel.HotelSearch.AdultCount);

                //            if (hsViewModel.HotelSearch.ChildCount != 0)
                //            {
                //                //find pkg for extra child

                //                //hsViewModel.HotelSearch.OccupancyName = "Extra Child";

                //                hsViewModel.HotelSearch.IsExtraChild = true;

                //                hsViewModel.HotelSearchExtraList = _hsRepo.GetHotelBasicDetails(hsViewModel.HotelSearch, (int)OccupancyType.Extra);

                //                if (hsViewModel.HotelSearchExtraList.Count > 0)
                //                {
                //                    decimal ExtraRate = 0;

                //                    var minExtraCost = hsViewModel.HotelSearchExtraList.Min(a => a.HotelRoomPrice);

                //                    ExtraRate = ((hsViewModel.HotelSearch.ChildCount) * minExtraCost);

                //                    NetRate = item.HotelRoomPrice + ExtraRate;

                //                    item.HotelRoomPrice = NetRate;
                //                }

                //            }
                //        }

                //        else
                //        {
                //            //find pkg for extra adult

                //            //hsViewModel.HotelSearch.OccupancyName = "Extra Adult";

                //            hsViewModel.HotelSearch.IsExtraChild = false;

                //            item.HotelRoomPrice = ((item.HotelRoomPrice) * hsViewModel.HotelSearch.AdultCount);

                //            hsViewModel.HotelSearchExtraList = _hsRepo.GetHotelBasicDetails(hsViewModel.HotelSearch, (int)OccupancyType.Extra);

                //            if (hsViewModel.HotelSearchExtraList.Count > 0)
                //            {

                //                var minExtraCost = hsViewModel.HotelSearchExtraList.Min(a => a.HotelRoomPrice);

                //                decimal ExtraRate = 0;

                //                ExtraRate = ((hsViewModel.HotelSearch.AdultCount) * minExtraCost);

                //                NetRate = NetRate + ExtraRate;

                //                item.HotelRoomPrice = NetRate;
                //            }
                //        }

                //        hsViewModel.HotelSearchList.Add(item);
                //    }

                //}
                #endregion

                Logger.Debug("HotelSearch Controller GetHotelSearch");
            }
            catch (Exception ex)
            {
                hsViewModel.FriendlyMessage.Add(MessageStore.Get("SYS01"));

                Logger.Error("HotelSearch Controller - GetHotelSearch" + ex.ToString());
            }

            TempData["hsViewModel"] = hsViewModel;

            return(PartialView("_RoomMealOccupancy", hsViewModel));
        }
Ejemplo n.º 5
0
 public ActionResult Search(HotelSearchViewModel Model)
 {
     return(View("Search", Model));
 }