private BargainsRateDto RateToDto(HotelRate rate) { return(new BargainsRateDto() { boardType = rate.BoardType, rateType = rate.RateType.ToString(), Price = rate.HotelRateCost() }); }
public PartialViewResult RateHotel(string Rate, int HotelId) { Hotel hotel = db.Hotels.Include("City") .Include("Images") .Include("HotelRooms") .Include("HotelRooms.Room") .Include("HotelRates") .SingleOrDefault(x => x.Id == HotelId); string userId = User.Identity.GetUserId(); HotelRate hr = db.HotelRates.SingleOrDefault(x => x.Hotel.Id == hotel.Id && x.User.Id == userId); if (hr == null) { hr = new HotelRate() { Hotel = hotel, User = db.Users.Find(User.Identity.GetUserId()), Rate = Rate }; db.HotelRates.Add(hr); } else { hr.Rate = Rate; } db.SaveChanges(); int ExRate = hotel.HotelRates.Where(x => x.Rate == "Excellent").Count(); int GRate = hotel.HotelRates.Where(x => x.Rate == "Good").Count(); int NBRate = hotel.HotelRates.Where(x => x.Rate == "Not Bad").Count(); int BRate = hotel.HotelRates.Where(x => x.Rate == "Bad").Count(); int allRates = hotel.HotelRates.Count; float GPer = (float)(GRate * 100) / allRates; float ExPer = (float)(ExRate * 100) / allRates; float NbPer = (float)(NBRate * 100) / allRates; float BPer = (float)(BRate * 100) / allRates; ViewBag.GRate = GPer; ViewBag.ExRate = ExPer; ViewBag.NbRate = NbPer; ViewBag.BRate = BPer; return(PartialView("_HotelRatingPartial", hotel)); }
public static HotelAvailability Map(AvailabilityDto dto, int nights) { var result = new HotelAvailability { Hotel = new HotelInfo { Name = dto?.Hotel?.Name, Rating = dto?.Hotel?.Rating ?? 0 } }; result.Rates = new List <HotelRate>(); if (dto.Rates != null) { foreach (var rateDto in dto.Rates) { var rate = new HotelRate(); switch (rateDto.BoardType) { case "No Meals": rate.BoardType = Core.Common.Enum.BoardType.NoMeals; break; case "Half Board": rate.BoardType = Core.Common.Enum.BoardType.HalfBoard; break; case "Full Board": rate.BoardType = Core.Common.Enum.BoardType.FullBoard; break; } rate.RateType = rateDto.RateType == "PerNight" ? Core.Common.Enum.HotelRateType.PerNight : Core.Common.Enum.HotelRateType.Stay; rate.FinalPrice = rate.RateType == Core.Common.Enum.HotelRateType.PerNight ? rateDto.Value * nights : rateDto.Value; result.Rates.Add(rate); } } return(result); }
public HotelRateExcelRow MapHotelRateToExcelSummary(HotelRate hotelRate) { var arrivalDate = hotelRate.TargetDay.Date; var departureDate = arrivalDate.AddDays(hotelRate.Los).Date; var price = hotelRate.Price.NumericFloat; var currency = hotelRate.Price.Currency; var rateName = hotelRate.RateName; var adults = hotelRate.Adults; var breakfastIncluded = hotelRate.RateTags .Any(tag => tag.Name == Breakfastliteral && tag.Shape); var breakfastIncludedAsInt = breakfastIncluded ? 1 : 0; return(new HotelRateExcelRow( arrivalDate, departureDate, price, currency, rateName, adults, breakfastIncludedAsInt)); }