/// <summary> /// To the domain object. /// </summary> /// <param name="deferment">The deferment.</param> /// <returns></returns> public static Deferment ToDomainObject(this DefermentContract deferment) { return(null == deferment ? null : new Deferment() { UserId = deferment.LessonUserId, DefermentLength = deferment.InSchoolDeferment != null?deferment.InSchoolDeferment.DefermentMonths:0, HardshipDefermentExtraAmount = deferment.HardshipDeferment != null ? deferment.HardshipDeferment.ExtraAmount : 0, HardshipDefermentLength = deferment.HardshipDeferment != null ? deferment.HardshipDeferment.DefermentMonths : 0, ForbearanceLength = deferment.Forbearance != null ? deferment.Forbearance.ForbearanceMonths : 0 }); }
/// <summary> /// To the domain list object. /// </summary> /// <param name="deferment">The deferment.</param> /// <returns></returns> public static IList <Deferment> ToDomainListObject(this DefermentContract deferment) { var toReturn = deferment == null ? null : new List <Deferment>(); if (toReturn != null) { toReturn.Add(deferment.ToDomainObject()); toReturn.Add(deferment.ToDomainObject()); toReturn.Add(deferment.ToDomainObject()); } return(toReturn); }
/// <summary> /// To the data contract. /// </summary> /// <param name="deferments">The deferments.</param> /// <returns></returns> public static DefermentContract ToDataContract(this IList <Deferment> deferments) { if (null == deferments) { return(null); } var toReturn = new DefermentContract(); foreach (var option in deferments) { toReturn.Forbearance = option.PlanType == RepaymentOptionTypes.Forebearance ? new ForbearanceContract() { ForbearanceMonths = option.ForbearanceLength } : null; toReturn.HardshipDeferment = option.PlanType == RepaymentOptionTypes.HardshipBasedDeferment ? new HardshipDefermentContract() { DefermentMonths = option.DefermentLength, ExtraAmount = 0 } : null; toReturn.InSchoolDeferment = option.PlanType == RepaymentOptionTypes.Deferment ? new InSchoolDefermentContract() { DefermentMonths = option.DefermentLength } : null; } return(toReturn); }