public bool IsCancellationPenalty(HotelBookingCancelPolicy objCancelPolicy, string strHotelCode, DateTime dtArrivalDate) { if (objCancelPolicy.NonRefundable) return true; DateTime dtCurrentLocal = TZNet.ToLocal(WbsUiHelper.GetTimeZone(strHotelCode), DateTime.UtcNow).Date; DateTime dtCancelDeadline = dtArrivalDate.Date; dtCancelDeadline = dtCancelDeadline.AddHours(objCancelPolicy.CancelDeadline.Hour); dtCancelDeadline = dtCancelDeadline.AddMinutes(objCancelPolicy.CancelDeadline.Minute); dtCancelDeadline = dtCancelDeadline.AddHours(objCancelPolicy.CancelDeadlineHours * -1); if (dtCurrentLocal > dtCancelDeadline) return true; return false; }
public string CancellationPolicy(HotelBookingCancelPolicy objCancelPolicy) { StringBuilder sb = new StringBuilder(); if (objCancelPolicy.NonRefundable) { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyNonrefundable")); } else { if (objCancelPolicy.CancelDeadlineHours != 0) { if (objCancelPolicy.CancelDeadlineHours > 48) { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyNoticeBeforeDayOfArrivalDays")); } else { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyNoticeBeforeDayOfArrivalHours")); } } else { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyNoticeOnDayOfArrival")); } } if (objCancelPolicy.CancelPenaltyNumberNights != 0) { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyFeeNumNights")); } else if (objCancelPolicy.CancelPenaltyPercent != 0) { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyFeePercentOfStay")); } else if (objCancelPolicy.CancelPenaltyAmount != 0) { sb.Append((String)GetGlobalResourceObject("SiteResources", "CancelPolicyFeeFixedAmount")); } string strPolicy = sb.ToString(); strPolicy = strPolicy.Replace("{cancel_deadline_hours}", objCancelPolicy.CancelDeadlineHours.ToString()); strPolicy = strPolicy.Replace("{cancel_deadline_days}", ((int)(objCancelPolicy.CancelDeadlineHours / 24)).ToString()); strPolicy = strPolicy.Replace("{cancel_deadline_time}", objCancelPolicy.CancelDeadline.ToString("h:mmtt")); strPolicy = strPolicy.Replace("{cancel_deadline_time_24h}", objCancelPolicy.CancelDeadline.ToString("HH:mm")); strPolicy = strPolicy.Replace("{cancel_penalty_number_nights}", objCancelPolicy.CancelPenaltyNumberNights.ToString()); strPolicy = strPolicy.Replace("{cancel_penalty_percent}", objCancelPolicy.CancelPenaltyPercent.ToString("F2")); strPolicy = strPolicy.Replace("{cancel_penalty_amount}", objCancelPolicy.CancelPenaltyAmount.ToString(this.CurrencyFormat())); strPolicy = strPolicy.Replace("{cancel_penalty_currency}", objCancelPolicy.CancelPenaltyCurrencyCode); return strPolicy; }