public static void MutateApprenticeLearningDeliveryToTrainee(MessageLearner learner, ILearnerCreatorDataCache dataCache) { foreach (var ld in learner.LearningDelivery) { ld.ProgType = (int)ProgType.Traineeship; ld.ProgTypeSpecified = true; ld.FworkCodeSpecified = false; ld.PwayCodeSpecified = false; ld.FundModel = (int)FundModel.Adult; ld.FundModel = (int)FundModel.Adult; ld.LearnPlanEndDate = ld.LearnStartDate.AddDays(60); } var fam = learner.LearningDelivery[0].LearningDeliveryFAM.Where(s => s.LearnDelFAMType == LearnDelFAMType.ACT.ToString()).First(); fam.LearnDelFAMType = LearnDelFAMType.FFI.ToString(); fam.LearnDelFAMDateFromSpecified = false; fam.LearnDelFAMCode = ((int)LearnDelFAMCode.FFI_Co).ToString(); var ld1Fams = learner.LearningDelivery[1].LearningDeliveryFAM.ToList(); ld1Fams.Add(new MessageLearnerLearningDeliveryLearningDeliveryFAM() { LearnDelFAMType = fam.LearnDelFAMType, LearnDelFAMCode = fam.LearnDelFAMCode }); learner.LearningDelivery[1].LearningDeliveryFAM = ld1Fams.ToArray(); ApprenticeshipProgrammeTypeAim pta = dataCache.ApprenticeshipAims(ProgType.Traineeship).First(); learner.LearningDelivery[1].LearnAimRef = pta.LearnAimRef; MoveEmploymentBeforeLearnStart(learner); learner.LearnerEmploymentStatus[0].EmploymentStatusMonitoring[0].ESMCode = (int)EmploymentStatusMonitoringCode.EmploymentIntensity16Less; learner.LearningDelivery[0].AppFinRecord = null; }
internal static void SetApprenticeshipAims(MessageLearner learner, ApprenticeshipProgrammeTypeAim pta) { foreach (var ld in learner.LearningDelivery) { ld.ProgType = (int)pta.ProgType; if (ld.ProgType == (int)ProgType.ApprenticeshipStandard) { ld.StdCode = pta.StdCode; ld.StdCodeSpecified = true; ld.FworkCodeSpecified = false; ld.PwayCodeSpecified = false; } else { ld.FworkCode = pta.FworkCode; ld.PwayCode = pta.PwayCode; } } learner.LearningDelivery[1].LearnAimRef = pta.LearnAimRef; }