Example #1
0
 public static int RecurringPaymentPeriod2Frequency(this BillingEnums.eBillingPeriodType type)
 {
     return(1);
     //TODO future logic for subscription planes
     //switch (type)
     //{
     //    case BillingEnums.eBillingPeriodType.DAY:
     //        return 365;
     //    case BillingEnums.eBillingPeriodType.WEEK:
     //        return 52;
     //    case BillingEnums.eBillingPeriodType.SEMIMONTH:
     //        return 1;
     //    case BillingEnums.eBillingPeriodType.MONTH:
     //        return 1;
     //    default:
     //        return 1;
     //}
 }
Example #2
0
        public static DateTime?ToRentalEndDate(this BillingEnums.eBillingPeriodType periodType, short numberOfPeriods)
        {
            var localZone = TimeZone.CurrentTimeZone;
            var localTime = DateTime.Now;
            var utc       = localZone.ToUniversalTime(localTime);

            switch (periodType)
            {
            case BillingEnums.eBillingPeriodType.HOUR:
                return(utc.AddHours(numberOfPeriods));

            case BillingEnums.eBillingPeriodType.DAY:
                return(utc.AddDays(numberOfPeriods));

            case BillingEnums.eBillingPeriodType.WEEK:
                return(utc.AddDays(numberOfPeriods * 7));

            case BillingEnums.eBillingPeriodType.MONTH:
                return(utc.AddMonths(numberOfPeriods));

            default:
                return(null);
            }
        }