private decimal TotalRoomRatePerNight(HotelAvailRate objRate)
    {
        decimal decRoomPrice = objRate.Amount;
        decimal decRoomTax = this.TaxesPerNight(objRate.PerNightTaxesFees, objRate.NumNights, TaxFeeType.Exclusive);
        decimal decRoomFee = this.FeesPerNight(objRate.PerNightTaxesFees, objRate.NumNights, TaxFeeType.Exclusive);

        return decRoomPrice + decRoomTax + decRoomFee;
    }
    protected decimal GetMinRate(HotelAvailRate[] objHotelAvailRates)
    {
        decimal decMinRate = 0;

        if (objHotelAvailRates.Length > 0)
        {
            decMinRate = objHotelAvailRates[0].Amount;

            for (int i = 1; i < objHotelAvailRates.Length; i++)
            {
                if (objHotelAvailRates[i].Amount < decMinRate)
                    decMinRate = objHotelAvailRates[i].Amount;
            }

        }

        return decMinRate;
    }
    private bool IsRateChange(HotelAvailRate[] objHotelAvailRates)
    {
        bool bRateChange = false;

        if (objHotelAvailRates.Length > 1)
        {
            decimal decLastRate = objHotelAvailRates[0].Amount;

            for (int i = 1; i < objHotelAvailRates.Length; i++)
            {
                if (objHotelAvailRates[i].Amount != decLastRate)
                {
                    bRateChange = true;
                    break;
                }

            }

        }

        return bRateChange;
    }