public IEnumerable <ALB_LearningDelivery_Period> MapLearningDeliveryPeriods(ALBGlobal albGlobal) { var periodisedValues = albGlobal.Learners .SelectMany(l => l.LearningDeliveries.Select(ld => new FundModelLearningDeliveryPeriodisedValue <List <LearningDeliveryPeriodisedValue> >(albGlobal.UKPRN, l.LearnRefNumber, ld.AimSeqNumber, ld.LearningDeliveryPeriodisedValues))); var learningDeliveryPeriods = new List <ALB_LearningDelivery_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryPeriods.AddRange( periodisedValues.Select(pv => new ALB_LearningDelivery_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, AimSeqNumber = pv.AimSeqNumber, Period = i, ALBCode = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.ALBCode), i), ALBSupportPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.ALBSupportPayment), i), AreaUpliftBalPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.AreaUpliftBalPayment), i), AreaUpliftOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.AreaUpliftOnProgPayment), i), LearnDelCarLearnPilotBalPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.LearnDelCarLearnPilotBalPayment), i), LearnDelCarLearnPilotOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.LearnDelCarLearnPilotOnProgPayment), i) })); } return(learningDeliveryPeriods); }
public IEnumerable <ESF_LearningDeliveryDeliverable_Period> MapLearningDeliveryDeliverablePeriods(FM70Global fm70Global) { var periodisedValues = fm70Global.Learners.SelectMany(l => l.LearningDeliveries .SelectMany(ld => ld.LearningDeliveryDeliverableValues.Select(ldd => new FundModelESFLearningDeliveryPeriodisedValue <List <LearningDeliveryDeliverablePeriodisedValue> >(fm70Global.UKPRN, l.LearnRefNumber, ld.AimSeqNumber.Value, ldd.DeliverableCode, ldd.LearningDeliveryDeliverablePeriodisedValues)))); var learningDeliveryDeliverablePeriods = new List <ESF_LearningDeliveryDeliverable_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryDeliverablePeriods.AddRange( periodisedValues.Select(pv => new ESF_LearningDeliveryDeliverable_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, AimSeqNumber = pv.AimSeqNumber, DeliverableCode = pv.EsfDeliverableCode, Period = i, AchievementEarnings = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryDeliverablePeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM70Constants.AchievementEarnings), i), AdditionalProgCostEarnings = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryDeliverablePeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM70Constants.AdditionalProgCostEarnings), i), DeliverableVolume = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryDeliverablePeriodisedValue, long?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM70Constants.DeliverableVolume), i), ProgressionEarnings = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryDeliverablePeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM70Constants.ProgressionEarnings), i), ReportingVolume = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryDeliverablePeriodisedValue, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM70Constants.ReportingVolume), i), StartEarnings = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryDeliverablePeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM70Constants.StartEarnings), i), })); } return(learningDeliveryDeliverablePeriods); }
public IEnumerable <TBL_LearningDelivery_Period> BuildLearningDeliveryPeriods(IEnumerable <FundModelLearningDeliveryPeriodisedValue <List <LearningDeliveryPeriodisedValue> > > periodisedValues) { var learningDeliveryPeriods = new List <TBL_LearningDelivery_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryPeriods.AddRange( periodisedValues.Select(pv => new TBL_LearningDelivery_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, AimSeqNumber = pv.AimSeqNumber, Period = i, AchPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.AchPayment), i), CoreGovContPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.CoreGovContPayment), i), CoreGovContUncapped = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.CoreGovContUncapped), i), InstPerPeriod = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.InstPerPeriod), i), LearnSuppFund = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, bool?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.LearnSuppFund), i), LearnSuppFundCash = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.LearnSuppFundCash), i), MathEngBalPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.MathEngBalPayment), i), MathEngBalPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.MathEngBalPct), i), MathEngOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.MathEngOnProgPayment), i), MathEngOnProgPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.MathEngOnProgPct), i), SmallBusPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.SmallBusPayment), i), YoungAppFirstPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.YoungAppFirstPayment), i), YoungAppPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.YoungAppPayment), i), YoungAppSecondPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM81Constants.YoungAppSecondPayment), i), })); } return(learningDeliveryPeriods); }
public void LearningDeliveryPeriodisedValue() { var learningDeliveryPeriodisedValue = new LearningDeliveryPeriodisedValue(); learningDeliveryPeriodisedValue.Period1 = 1.1m; PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(learningDeliveryPeriodisedValue, 1).Should().Be(1.1m); }
public void LearningDeliveryPeriodisedValue_PerformanceTest() { var learningDeliveryPeriodisedValue = new LearningDeliveryPeriodisedValue(); learningDeliveryPeriodisedValue.Period1 = 1.1m; for (int i = 0; i < 10000000; i++) { PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(learningDeliveryPeriodisedValue, 1); } }
public IEnumerable <AEC_LearningDelivery_Period> MapLearningDeliveryPeriods(FM36Global fm36Global) { var periodisedValues = fm36Global.Learners .SelectMany(l => l.LearningDeliveries.Select(ld => new FundModel36LearningDeliveryPeriodisedValue(fm36Global.UKPRN, l.LearnRefNumber, ld.AimSeqNumber, ld.LearningDeliveryPeriodisedValues, ld.LearningDeliveryPeriodisedTextValues))); var learningDeliveryPeriods = new List <AEC_LearningDelivery_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryPeriods.AddRange( periodisedValues.Select(pv => new AEC_LearningDelivery_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, AimSeqNumber = pv.AimSeqNumber, Period = i, DisadvFirstPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.DisadvFirstPayment), i), DisadvSecondPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.DisadvSecondPayment), i), FundLineType = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedTextValues, string>(pv.LearningDeliveryPeriodisedTextValue.FirstOrDefault(a => a.AttributeName == FM36Constants.FundLineType), i), InstPerPeriod = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.InstPerPeriod), i), LDApplic1618FrameworkUpliftBalancingPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LDApplic1618FrameworkUpliftBalancingPayment), i), LDApplic1618FrameworkUpliftCompletionPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LDApplic1618FrameworkUpliftCompletionPayment), i), LDApplic1618FrameworkUpliftOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LDApplic1618FrameworkUpliftOnProgPayment), i), LearnDelContType = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedTextValues, string>(pv.LearningDeliveryPeriodisedTextValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelContType), i), LearnDelFirstEmp1618Pay = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelFirstEmp1618Pay), i), LearnDelFirstProv1618Pay = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelFirstProv1618Pay), i), LearnDelLearnAddPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelLearnAddPayment), i), LearnDelLevyNonPayInd = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelLevyNonPayInd), i), LearnDelSecondEmp1618Pay = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelSecondEmp1618Pay), i), LearnDelSecondProv1618Pay = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelSecondProv1618Pay), i), LearnDelSEMContWaiver = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, bool?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelSEMContWaiver), i), LearnDelSFAContribPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnDelSFAContribPct), i), LearnSuppFund = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, bool?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnSuppFund), i), LearnSuppFundCash = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.LearnSuppFundCash), i), MathEngBalPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.MathEngBalPayment), i), MathEngBalPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.MathEngBalPct), i), MathEngOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.MathEngOnProgPayment), i), MathEngOnProgPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.MathEngOnProgPct), i), ProgrammeAimBalPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.ProgrammeAimBalPayment), i), ProgrammeAimCompletionPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.ProgrammeAimCompletionPayment), i), ProgrammeAimOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.ProgrammeAimOnProgPayment), i), ProgrammeAimProgFundIndMaxEmpCont = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.ProgrammeAimProgFundIndMaxEmpCont), i), ProgrammeAimProgFundIndMinCoInvest = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.ProgrammeAimProgFundIndMinCoInvest), i), ProgrammeAimTotProgFund = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValues, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.ProgrammeAimTotProgFund), i), })); } return(learningDeliveryPeriods); }
public IEnumerable <AEC_ApprenticeshipPriceEpisode_Period> MapPriceEpisodePeriods(FM36Global fm36Global) { var periodisedValues = fm36Global.Learners .SelectMany(l => l.PriceEpisodes.Select(pe => new FundModelPriceEpisodePeriodisedValue <List <PriceEpisodePeriodisedValues> >(fm36Global.UKPRN, l.LearnRefNumber, pe.PriceEpisodeIdentifier, pe.PriceEpisodePeriodisedValues))); var learningDeliveryPeriods = new List <AEC_ApprenticeshipPriceEpisode_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryPeriods.AddRange( periodisedValues.Select(pv => new AEC_ApprenticeshipPriceEpisode_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, PriceEpisodeIdentifier = pv.PriceEpisodeIdentifier, Period = i, PriceEpisodeApplic1618FrameworkUpliftBalancing = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeApplic1618FrameworkUpliftBalancing), i), PriceEpisodeApplic1618FrameworkUpliftCompletionPayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeApplic1618FrameworkUpliftCompletionPayment), i), PriceEpisodeApplic1618FrameworkUpliftOnProgPayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeApplic1618FrameworkUpliftOnProgPayment), i), PriceEpisodeBalancePayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeBalancePayment), i), PriceEpisodeBalanceValue = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeBalanceValue), i), PriceEpisodeCompletionPayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeCompletionPayment), i), PriceEpisodeFirstDisadvantagePayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeFirstDisadvantagePayment), i), PriceEpisodeFirstEmp1618Pay = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeFirstEmp1618Pay), i), PriceEpisodeFirstProv1618Pay = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeFirstProv1618Pay), i), PriceEpisodeInstalmentsThisPeriod = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, int?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeInstalmentsThisPeriod), i), PriceEpisodeLevyNonPayInd = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, int?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeLevyNonPayInd), i), PriceEpisodeLSFCash = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeLSFCash), i), PriceEpisodeOnProgPayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeOnProgPayment), i), PriceEpisodeProgFundIndMaxEmpCont = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeProgFundIndMaxEmpCont), i), PriceEpisodeProgFundIndMinCoInvest = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeProgFundIndMinCoInvest), i), PriceEpisodeSecondDisadvantagePayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeSecondDisadvantagePayment), i), PriceEpisodeSecondEmp1618Pay = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeSecondEmp1618Pay), i), PriceEpisodeSecondProv1618Pay = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeSecondProv1618Pay), i), PriceEpisodeSFAContribPct = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeSFAContribPct), i), PriceEpisodeTotProgFunding = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeTotProgFunding), i), PriceEpisodeLearnerAdditionalPayment = PeriodisedValueHelper.GetPeriodValue <PriceEpisodePeriodisedValues, decimal?>(pv.PriceEpisodePeriodisedValue.FirstOrDefault(a => a.AttributeName == FM36Constants.PriceEpisodeLearnerAdditionalPayment), i), })); } return(learningDeliveryPeriods); }
public List <ALB_Learner_Period> BuildLearnerPeriods(IEnumerable <FundModelLearnerPeriodisedValue <List <LearnerPeriodisedValue> > > periodisedValues, int ukprn) { var learnerPeriods = new List <ALB_Learner_Period>(); for (var i = 1; i < 13; i++) { learnerPeriods.AddRange( periodisedValues.Select(pv => new ALB_Learner_Period { UKPRN = ukprn, LearnRefNumber = pv.LearnRefNumber, Period = i, ALBSeqNum = PeriodisedValueHelper.GetPeriodValue <LearnerPeriodisedValue, int?>(pv.LearnerPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.ALBSeqNum), i), })); } return(learnerPeriods); }
public IEnumerable <FM35_LearningDelivery_Period> MapLearningDeliveryPeriods(FM35Global fm35Global) { var periodisedValues = fm35Global.Learners .SelectMany(l => l.LearningDeliveries.Select(ld => new FundModelLearningDeliveryPeriodisedValue <List <LearningDeliveryPeriodisedValue> >(fm35Global.UKPRN, l.LearnRefNumber, ld.AimSeqNumber.Value, ld.LearningDeliveryPeriodisedValues))); var learningDeliveryPeriods = new List <FM35_LearningDelivery_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryPeriods.AddRange( periodisedValues.Select(pv => new FM35_LearningDelivery_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, AimSeqNumber = pv.AimSeqNumber, Period = i, AchievePayPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.AchievePayPct), i), AchievePayPctTrans = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.AchievePayPctTrans), i), AchievePayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.AchievePayment), i), BalancePayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.BalancePayment), i), BalancePaymentUncapped = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.BalancePaymentUncapped), i), BalancePct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.BalancePct), i), BalancePctTrans = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.BalancePctTrans), i), EmpOutcomePay = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.EmpOutcomePay), i), EmpOutcomePct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.EmpOutcomePct), i), EmpOutcomePctTrans = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.EmpOutcomePctTrans), i), InstPerPeriod = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.InstPerPeriod), i), LearnSuppFund = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, bool?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.LearnSuppFund), i), LearnSuppFundCash = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.LearnSuppFundCash), i), OnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.OnProgPayment), i), OnProgPayPct = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.OnProgPayPct), i), OnProgPayPctTrans = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.OnProgPayPctTrans), i), OnProgPaymentUncapped = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.OnProgPaymentUncapped), i), TransInstPerPeriod = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == FM35Constants.TransInstPerPeriod), i) })); } return(learningDeliveryPeriods); }
public IEnumerable <ALB_Learner_Period> MapLearnerPeriods(ALBGlobal albGlobal) { var periodisedValues = albGlobal.Learners.Select(l => new FundModelLearnerPeriodisedValue <List <LearnerPeriodisedValue> >(albGlobal.UKPRN, l.LearnRefNumber, l.LearnerPeriodisedValues)); var learnerPeriods = new List <ALB_Learner_Period>(); for (var i = 1; i < 13; i++) { learnerPeriods.AddRange( periodisedValues.Select(pv => new ALB_Learner_Period { UKPRN = pv.Ukprn, LearnRefNumber = pv.LearnRefNumber, Period = i, ALBSeqNum = PeriodisedValueHelper.GetPeriodValue <LearnerPeriodisedValue, int?>(pv.LearnerPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.ALBSeqNum), i), })); } return(learnerPeriods); }
public IEnumerable <ALB_LearningDelivery_Period> BuildLearningDeliveryPeriods(IEnumerable <FundModelLearningDeliveryPeriodisedValue <List <LearningDeliveryPeriodisedValue> > > periodisedValues, int ukprn) { var learningDeliveryPeriods = new List <ALB_LearningDelivery_Period>(); for (var i = 1; i < 13; i++) { learningDeliveryPeriods.AddRange( periodisedValues.Select(pv => new ALB_LearningDelivery_Period { UKPRN = ukprn, LearnRefNumber = pv.LearnRefNumber, AimSeqNumber = pv.AimSeqNumber, Period = i, ALBCode = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, int?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.ALBCode), i), ALBSupportPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.ALBSupportPayment), i), AreaUpliftBalPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.AreaUpliftBalPayment), i), AreaUpliftOnProgPayment = PeriodisedValueHelper.GetPeriodValue <LearningDeliveryPeriodisedValue, decimal?>(pv.LearningDeliveryPeriodisedValue.FirstOrDefault(a => a.AttributeName == ALBConstants.AreaUpliftOnProgPayment), i) })); } return(learningDeliveryPeriods); }