Exemple #1
0
        private void BestConfiguration(ILearner <TSample> learner)
        {
            var predictions = _cache.ContainsKey(learner.UniqueId) ? _cache[learner.UniqueId] : (_cache[learner.UniqueId] = GetPredictions(learner));

            var best = new LayerHolder(float.PositiveInfinity, null, null);

            var sampleCount      = predictions.Count;
            var samplesProcessed = 0;

            foreach (var p in predictions)
            {
                best = BestLayerSetup(learner.WithConfiguration(p.Key), p.Value, best);
                SetBest(best);

                if (_cancellation.IsCancellationRequested)
                {
                    return;
                }
                if (_progress != null)
                {
                    samplesProcessed++;
                    _progress.Report(Tuple.Create("Finding best setup for \"" + learner.UniqueId + "\"", samplesProcessed * 100 / sampleCount));
                }
            }
            //Parallel.ForEach(
            //    predictions,
            //    () => new LayerHolder(float.PositiveInfinity, null, null),
            //    (p, s, best) => BestLayerSetup(learner.WithConfiguration(p.Key), p.Value, best),
            //    SetBest
            //);
        }
Exemple #2
0
        /// <summary>
        /// Determines whether [is valid with employment support] [the specified candidate].
        /// </summary>
        /// <param name="candidate">The candidate.</param>
        /// <returns>
        ///   <c>true</c> if [is valid with employment support] [the specified candidate]; otherwise, <c>false</c>.
        /// </returns>
        public bool IsValidWithEmploymentSupport(ILearner candidate)
        {
            var lds = candidate.LearningDeliveries.AsSafeReadOnlyList();
            var les = candidate.LearnerEmploymentStatuses.AsSafeReadOnlyList();

            return(lds.Any(d => IsAdultSkills(d) && IsValidWithEmploymentSupport(les, d)));
        }
        public LearnerView(ILearner learner)
        {
            ///if (learner == null) throw new ArgumentNullException();
            ///if (learner.UserName == null) throw new ArgumentNullException();

            this.learner = learner;
        }
Exemple #4
0
        /// <summary>
        /// Determines whether [is adult funded unemployed with other state benefits] [the specified candidate].
        /// </summary>
        /// <param name="candidate">The candidate.</param>
        /// <returns>
        ///   <c>true</c> if [is adult funded unemployed with other state benefits] [the specified candidate]; otherwise, <c>false</c>.
        /// </returns>
        public bool IsAdultFundedUnemployedWithOtherStateBenefits(ILearner candidate)
        {
            It.IsNull(candidate)
            .AsGuard <ArgumentNullException>(nameof(candidate));

            var lds = candidate.LearningDeliveries.AsSafeReadOnlyList();
            var les = candidate.LearnerEmploymentStatuses.AsSafeReadOnlyList();

            /*
             *  if
             *      // is adult skills
             *      LearningDelivery.FundModel = 35
             *
             *      //  is umemployed (not employed, seeking and available or otherwise)
             *      and     LearnerEmploymentStatus.EmpStat = 11 or 12 for the latest Employment Status on (or before) the LearningDelivery.LearnStartDate
             *
             *              // in receipt of another benefit.
             *      and     ((Monitoring.EmploymentStatus.ESMType = BSI and Monitoring.EmploymentStatus.ESMCode = 3)
             *              or
             *              // in receipt of universal credit.
             *              (Monitoring.EmploymentStatus.ESMType = BSI and Monitoring.EmploymentStatus.ESMCode = 4
             *              // is learning delivery monitored
             *              and LearningDeliveryFAM.LearnDelFAMType = LDM
             *              // and not mandated to skills training
             *              and LearningDeliveryFAM.LearnDelFAMCode <> 318))
             *
             *          set to Y,
             *          otherwise set to N
             */

            return(lds.Any(d =>
                           IsAdultSkills(d) &&
                           IsNotEmployed(les, d, () => ConfirmMonitoringAndMandation(d.LearningDeliveryFAMs.AsSafeReadOnlyList()))));
        }
Exemple #5
0
 internal Layer(ILearner <TSample> learner, float coefPos, float coefNeg, float threshold)
 {
     _learner  = learner;
     CoefPos   = coefPos;
     CoefNeg   = coefNeg;
     Threshold = threshold;
 }
Exemple #6
0
        /// <summary>
        /// Determines whether [is adult skills unemployed with benefits] [the specified candidate].
        /// </summary>
        /// <param name="candidate">The candidate.</param>
        /// <returns>
        ///   <c>true</c> if [is adult skills unemployed with benefits] [the specified candidate]; otherwise, <c>false</c>.
        /// </returns>
        public bool IsAdultFundedUnemployedWithBenefits(ILearner candidate)
        {
            It.IsNull(candidate)
            .AsGuard <ArgumentNullException>(nameof(candidate));

            /*
             *  if
             *      // is adult skills
             *      LearningDelivery.FundModel = 35
             *      // and has valid employment status
             *      and LearnerEmploymentStatus.EmpStat = 10, 11, 12 or 98
             *      // and in receipt of support at the time of starting the learning aim
             *      and (EmploymentStatusMonitoring.ESMType = BSI and EmploymentStatusMonitoring.ESMCode = 1 or 2)
             *          (for the learner's Employment status on the LearningDelivery.LearnStartDate of the learning aim)
             *  or
             *      // or is not employed, and in receipt of benefits
             *      LearnerEmploymentStatus.EmpStat = 11 or 12
             *      and (EmploymentStatusMonitoring.ESMType = BSI and EmploymentStatusMonitoring.ESMCode = 3 or 4)
             *  or
             *      // or is employed with workng short hours and in receipt of support
             *      LearnerEmploymentStatus.EmpStat = 10
             *      and (EmploymentStatusMonitoring.ESMType = EII and EmploymentStatusMonitoring.ESMCode = 2, 5 or 6)
             *      and (EmploymentStatusMonitoring.ESMType = BSI and EmploymentStatusMonitoring.ESMCode = 3 or 4)
             *          set to Y,
             *          otherwise set to N
             */

            return(IsValidWithEmploymentSupport(candidate) ||
                   IsNotEmployedWithBenefits(candidate) ||
                   IsEmployedWithSupport(candidate));
        }
Exemple #7
0
 public LearningDeliveryHE BuildLearningDeliveryHERecord(int ukprn, ILearner learner, ILearningDelivery learningDelivery)
 {
     return(new LearningDeliveryHE
     {
         AimSeqNumber = learningDelivery.AimSeqNumber,
         UKPRN = ukprn,
         LearnRefNumber = learner.LearnRefNumber,
         DOMICILE = learningDelivery.LearningDeliveryHEEntity.DOMICILE,
         ELQ = learningDelivery.LearningDeliveryHEEntity.ELQNullable,
         FUNDCOMP = learningDelivery.LearningDeliveryHEEntity.FUNDCOMP,
         FUNDLEV = learningDelivery.LearningDeliveryHEEntity.FUNDLEV,
         GROSSFEE = learningDelivery.LearningDeliveryHEEntity.GROSSFEENullable,
         HEPostCode = learningDelivery.LearningDeliveryHEEntity.HEPostCode,
         MODESTUD = learningDelivery.LearningDeliveryHEEntity.MODESTUD,
         MSTUFEE = learningDelivery.LearningDeliveryHEEntity.MSTUFEE,
         NETFEE = learningDelivery.LearningDeliveryHEEntity.NETFEENullable,
         NUMHUS = learningDelivery.LearningDeliveryHEEntity.NUMHUS,
         PCFLDCS = learningDelivery.LearningDeliveryHEEntity.PCFLDCSNullable,
         PCOLAB = learningDelivery.LearningDeliveryHEEntity.PCOLABNullable,
         PCSLDCS = learningDelivery.LearningDeliveryHEEntity.PCSLDCSNullable,
         PCTLDCS = learningDelivery.LearningDeliveryHEEntity.PCTLDCSNullable,
         QUALENT3 = learningDelivery.LearningDeliveryHEEntity.QUALENT3,
         SEC = learningDelivery.LearningDeliveryHEEntity.SECNullable,
         SOC2000 = learningDelivery.LearningDeliveryHEEntity.SOC2000Nullable,
         SPECFEE = learningDelivery.LearningDeliveryHEEntity.SPECFEE,
         SSN = learningDelivery.LearningDeliveryHEEntity.SSN,
         STULOAD = learningDelivery.LearningDeliveryHEEntity.STULOADNullable,
         TYPEYR = learningDelivery.LearningDeliveryHEEntity.TYPEYR,
         UCASAPPID = learningDelivery.LearningDeliveryHEEntity.UCASAPPID,
         YEARSTU = learningDelivery.LearningDeliveryHEEntity.YEARSTU
     });
 }
 public static LearningDelivery BuildValidLearningDelivery(int ukprn, ILearner learner, ILearningDelivery learningDelivery)
 {
     return(new LearningDelivery
     {
         UKPRN = ukprn,
         LearnRefNumber = learner.LearnRefNumber,
         LearnAimRef = learningDelivery.LearnAimRef,
         AimSeqNumber = learningDelivery.AimSeqNumber,
         AchDate = learningDelivery.AchDateNullable,
         AddHours = learningDelivery.AddHoursNullable,
         AimType = learningDelivery.AimType,
         CompStatus = learningDelivery.CompStatus,
         ConRefNumber = learningDelivery.ConRefNumber,
         DelLocPostCode = learningDelivery.DelLocPostCode,
         EmpOutcome = learningDelivery.EmpOutcomeNullable,
         EPAOrgID = learningDelivery.EPAOrgID,
         FundModel = learningDelivery.FundModel,
         FworkCode = learningDelivery.FworkCodeNullable,
         LearnActEndDate = learningDelivery.LearnActEndDateNullable,
         LearnPlanEndDate = learningDelivery.LearnPlanEndDate,
         LearnStartDate = learningDelivery.LearnStartDate,
         OrigLearnStartDate = learningDelivery.OrigLearnStartDateNullable,
         OtherFundAdj = learningDelivery.OtherFundAdjNullable,
         OutGrade = learningDelivery.OutGrade,
         Outcome = learningDelivery.OutcomeNullable,
         PartnerUKPRN = learningDelivery.PartnerUKPRNNullable,
         PriorLearnFundAdj = learningDelivery.PriorLearnFundAdjNullable,
         ProgType = learningDelivery.ProgTypeNullable,
         PwayCode = learningDelivery.PwayCodeNullable,
         StdCode = learningDelivery.StdCodeNullable,
         SWSupAimId = learningDelivery.SWSupAimId,
         WithdrawReason = learningDelivery.WithdrawReasonNullable
     });
 }
Exemple #9
0
    public SharpML(MACHINE_TYPE t, string path)
    {
        LoadModel(path);

        // create new
        type = t;
        switch (type)
        {
        case MACHINE_TYPE.PLAYER:
            learner = null;
            break;

        case MACHINE_TYPE.DECISION_TREE:
            learner = new RegressionDecisionTreeLearner();
            break;

        case MACHINE_TYPE.RANDOM_FOREST:
            learner = new RegressionRandomForestLearner();
            break;

        case MACHINE_TYPE.EXTRA_TREES:
            learner = new RegressionExtremelyRandomizedTreesLearner();
            break;


        case MACHINE_TYPE.ADABOOST:
            learner = new RegressionAdaBoostLearner();
            break;

        case MACHINE_TYPE.GRAD_SQUARE:
            learner = new RegressionSquareLossGradientBoostLearner();
            break;

        case MACHINE_TYPE.GRAD_ABSOLUTE:
            learner = new RegressionAbsoluteLossGradientBoostLearner();
            break;

        case MACHINE_TYPE.GRAD_HUBER:
            learner = new RegressionHuberLossGradientBoostLearner();
            break;

        case MACHINE_TYPE.GRAD_QUANTILE:
            learner = new RegressionQuantileLossGradientBoostLearner();
            break;

        case MACHINE_TYPE.NEURAL_NETWORK:
            NeuralNet net = new NeuralNet();
            net.Add(new InputLayer(inputUnits: 4));
            net.Add(new DenseLayer(9, Activation.Relu));
            net.Add(new DenseLayer(9, Activation.Relu));
            net.Add(new SquaredErrorRegressionLayer());
            learner = new RegressionNeuralNetLearner(net
                                                     , loss: new SquareLoss()
                                                     , iterations: 100
                                                     , learningRate: 0.002
                                                     , batchSize: 128
                                                     );
            break;
        }
    }
 public virtual bool Filter(ILearner learner, FM25Learner fm25Learner)
 {
     return(learner != null && fm25Learner != null &&
            FilterStartFund(fm25Learner.StartFund) &&
            FilterFundLine(fm25Learner.FundLine) &&
            learner?.LearningDeliveries?.Any(ld => ld?.LearningDeliveryFAMs?.Any(FilterSOF) == true) == true);
 }
Exemple #11
0
 public Learner BuildValidLearner(int ukprn, ILearner ilrLearner)
 {
     return(new Learner
     {
         LearnRefNumber = ilrLearner.LearnRefNumber,
         UKPRN = ukprn,
         Accom = ilrLearner.AccomNullable,
         AddLine1 = ilrLearner.AddLine1,
         AddLine2 = ilrLearner.AddLine2,
         AddLine3 = ilrLearner.AddLine3,
         AddLine4 = ilrLearner.AddLine4,
         ALSCost = ilrLearner.ALSCostNullable,
         CampId = ilrLearner.CampId,
         DateOfBirth = ilrLearner.DateOfBirthNullable,
         Email = ilrLearner.Email,
         EngGrade = ilrLearner.EngGrade,
         Ethnicity = ilrLearner.Ethnicity,
         FamilyName = ilrLearner.FamilyName,
         GivenNames = ilrLearner.GivenNames,
         LLDDHealthProb = ilrLearner.LLDDHealthProb,
         MathGrade = ilrLearner.MathGrade,
         NINumber = ilrLearner.NINumber,
         PlanEEPHours = ilrLearner.PlanEEPHoursNullable,
         PlanLearnHours = ilrLearner.PlanLearnHoursNullable,
         PMUKPRN = ilrLearner.PMUKPRNNullable,
         Postcode = ilrLearner.Postcode,
         PostcodePrior = ilrLearner.PostcodePrior,
         PrevLearnRefNumber = ilrLearner.PrevLearnRefNumber,
         PrevUKPRN = ilrLearner.PrevUKPRNNullable,
         PriorAttain = ilrLearner.PriorAttainNullable,
         Sex = ilrLearner.Sex,
         TelNo = ilrLearner.TelNo,
         ULN = ilrLearner.ULN
     });
 }
Exemple #12
0
 public AppsDataMatchMonthEndModel BuildModel(ILearner learner)
 {
     return(new AppsDataMatchMonthEndModel()
     {
         LearnerReferenceNumber = learner.LearnRefNumber,
         UniqueLearnerNumber = learner.ULN
     });
 }
Exemple #13
0
 private int TLevelPlannedHours(ILearner learner)
 {
     return(learner.LearningDeliveries?
            .Where(ld => ld.AimType == ProgrammeAim && ld.ProgTypeNullable == TLevel)
            .OrderByDescending(ld => ld.LearnStartDate)
            .FirstOrDefault()
            ?.PHoursNullable ?? 0);
 }
Exemple #14
0
 public AppsMonthlyPaymentModel BuildModel(ILearner learner, FM36Learner learnerData)
 {
     return(new AppsMonthlyPaymentModel()
     {
         LearnerReferenceNumber = learner.LearnRefNumber,
         UniqueLearnerNumber = learner.ULN
     });
 }
 /// <summary>
 /// Stacking Regression Ensemble Learner.
 /// Combines several models into a single ensemble model using a top or meta level model to combine the models.
 /// The bottom level models generates output for the top level model using cross validation.
 /// Default is 5-fold RandomCrossValidation.
 /// </summary>
 /// <param name="learners">Learners in the ensemble</param>
 /// <param name="metaLearner">Meta learner or top level model for combining the ensemble models</param>
 /// <param name="includeOriginalFeaturesForMetaLearner">True; the meta learner also receives the original features.
 /// False; the meta learner only receives the output of the ensemble models as features. Default is true</param>
 public RegressionStackingEnsembleLearner(
     IIndexedLearner <double>[] learners,
     ILearner <double> metaLearner,
     bool includeOriginalFeaturesForMetaLearner = true)
     : this(learners, (obs, targets) => metaLearner.Learn(obs, targets),
            new RandomCrossValidation <double>(5, 42), includeOriginalFeaturesForMetaLearner)
 {
 }
Exemple #16
0
 public Tld(IObjectModel objectModel, ITracker tracker, ILearner learner, IDetector detector, IOutputStrategy outputStrategy)
 {
     _objectModel    = objectModel;
     _tracker        = tracker;
     _learner        = learner;
     _detector       = detector;
     _outputStrategy = outputStrategy;
 }
        public AppsIndicativeEarningsReportModel BuildLineModel(
            ILearner learner,
            ILearningDelivery learningDelivery,
            LearningDelivery fm36DeliveryAttribute,
            PriceEpisode fm36EpisodeAttribute,
            LARSLearningDelivery larsLearningDelivery,
            string notionalEndLevel,
            bool earliestEpisode,
            bool hasPriceEpisodes)
        {
            DateTime employmentStatusDate = learner.LearnerEmploymentStatuses?
                                            .Where(x => x.DateEmpStatApp <= learningDelivery.LearnStartDate).Select(x => x.DateEmpStatApp)
                                            .DefaultIfEmpty(DateTime.MinValue).Max() ?? DateTime.MinValue;

            var model = new AppsIndicativeEarningsReportModel
            {
                Learner = learner,
                ProviderSpecLearnerMonitoring =
                    _ilrModelMapper.MapProviderSpecLearnerMonitorings(learner.ProviderSpecLearnerMonitorings),
                ProviderSpecDeliveryMonitoring =
                    _ilrModelMapper.MapProviderSpecDeliveryMonitorings(learningDelivery
                                                                       .ProviderSpecDeliveryMonitorings),
                LearningDeliveryFAMs = _ilrModelMapper.MapLearningDeliveryFAMs(learningDelivery.LearningDeliveryFAMs),
                LearningDelivery     = learningDelivery,
                LarsLearningDelivery = larsLearningDelivery,
                EmploymentStatus     =
                    learner.LearnerEmploymentStatuses?.SingleOrDefault(x => x.DateEmpStatApp == employmentStatusDate),
                PriceEpisodeValues       = fm36EpisodeAttribute?.PriceEpisodeValues,
                StandardNotionalEndLevel = notionalEndLevel
            };

            model.EmpStatusMonitoringSmallEmployer = model.EmploymentStatus?.EmploymentStatusMonitorings
                                                     ?.FirstOrDefault(x => string.Equals(x.ESMType, ReportingConstants.EmploymentStatusMonitoringTypeSEM,
                                                                                         StringComparison.OrdinalIgnoreCase))?.ESMCode;
            model.FundingLineType      = GetFundingType(fm36DeliveryAttribute?.LearningDeliveryValues, fm36EpisodeAttribute?.PriceEpisodeValues);
            model.Fm36LearningDelivery = fm36DeliveryAttribute?.LearningDeliveryValues;

            if (learningDelivery?.LearningDeliveryFAMs != null)
            {
                CalculateApprenticeshipContractTypeFields(
                    learningDelivery,
                    model,
                    fm36DeliveryAttribute,
                    fm36EpisodeAttribute,
                    hasPriceEpisodes);
            }

            if (earliestEpisode || !hasPriceEpisodes)
            {
                CalculateAppFinTotals(model, learningDelivery);
            }

            var isMathsEngLearningDelivery = fm36DeliveryAttribute?.LearningDeliveryValues?.LearnDelMathEng ?? false;

            model.PeriodisedValues = BuildPeriodisedValuesModel(fm36EpisodeAttribute?.PriceEpisodePeriodisedValues,
                                                                fm36DeliveryAttribute?.LearningDeliveryPeriodisedValues, isMathsEngLearningDelivery);
            return(model);
        }
Exemple #18
0
        /// <summary>
        /// Main static method
        /// </summary>
        /// <param name="args">arguments list</param>
        static void Main(string[] args)
        {
            LearnerService learnerService = new LearnerService();
            ILearner       learner        = learnerService.GetCurrentLearner();

            LearnerView learnerView = new LearnerView(learner);

            learnerView.RenderView();
        }
Exemple #19
0
        public ILearnedImage Learn(ILearner learner, Action <ILearnerConfiguration> configuration)
        {
            LearnerConfiguration learnerConfiguration;

            configuration(learnerConfiguration = new LearnerConfiguration(learner));

            _learnedImage = learnerConfiguration.Learn(_exportedImage, learnerConfiguration.Alphabet, learnerConfiguration.Options);
            return(_learnedImage);
        }
Exemple #20
0
 public override bool Filter(ILearner learner, FM25Learner fm25Learner)
 {
     return(learner != null &&
            fm25Learner != null &&
            FilterFundLine(fm25Learner.FundLine) &&
            learner.LearningDeliveries?.Any(ld =>
                                            ld.FundModel == FundModelConstants.FM25 &&
                                            ld.LearningDeliveryFAMs?.Any(FilterSOF) == true) == true);
 }
        public void DoStuff()
        {
            LearnerService learnerService = new LearnerService();
            ILearner       learner        = learnerService.GetCurrenLearner();

            LearnerView view = new LearnerView(learner);

            view.RenderView();
        }
 /// <summary>
 /// Stacking Classification Ensemble Learner.
 /// Combines several models into a single ensemble model using a top or meta level model to combine the models.
 /// The bottom level models generates output for the top level model using cross validation.
 /// </summary>
 /// <param name="learners">Learners in the ensemble</param>
 /// <param name="metaLearner">Meta learner or top level model for combining the ensemble models</param>
 /// <param name="crossValidation">Cross validation method</param>
 /// <param name="includeOriginalFeaturesForMetaLearner">True; the meta learner also receives the original features.
 /// False; the meta learner only receives the output of the ensemble models as features. Default is true</param>
 public ClassificationStackingEnsembleLearner(
     IIndexedLearner <ProbabilityPrediction>[] learners,
     ILearner <ProbabilityPrediction> metaLearner,
     ICrossValidation <ProbabilityPrediction> crossValidation,
     bool includeOriginalFeaturesForMetaLearner = true)
     : this(learners, (obs, targets) => metaLearner.Learn(obs, targets),
            crossValidation, includeOriginalFeaturesForMetaLearner)
 {
 }
        public bool HasQualifyingOutcome(ILearner learner, IMessage message)
        {
            var dps = GetDAndP(learner.LearnRefNumber, message);
            var delivery = GetLastDelivery(learner);

            return dps != null
                && delivery != null
                && dps.DPOutcomes.NullSafeAny(x => HasQualifyingOutcome(x, delivery.LearnActEndDateNullable.Value));
        }
Exemple #24
0
        public MainOccupancyModel BuildFm25Model(
            ILearner learner,
            ILearningDelivery learningDelivery,
            FM25Learner fm25Data)
        {
            var onProgPayment = fm25Data?.LearnerPeriodisedValues?.SingleOrDefault(attr =>
                                                                                   string.Equals(attr.AttributeName, Constants.Fm25OnProgrammeAttributeName, StringComparison.OrdinalIgnoreCase));

            var onProgPaymentTotal = onProgPayment?.Period1
                                     + onProgPayment?.Period2
                                     + onProgPayment?.Period3
                                     + onProgPayment?.Period4
                                     + onProgPayment?.Period5
                                     + onProgPayment?.Period6
                                     + onProgPayment?.Period7
                                     + onProgPayment?.Period8
                                     + onProgPayment?.Period9
                                     + onProgPayment?.Period10
                                     + onProgPayment?.Period11
                                     + onProgPayment?.Period12;

            return(new MainOccupancyModel
            {
                LearnRefNumber = learner.LearnRefNumber,
                Uln = learner.ULN,
                AimSeqNumber = learningDelivery.AimSeqNumber,
                DateOfBirth = learner.DateOfBirthNullable?.ToString("dd/MM/yyyy"),
                PostcodePrior = learner.PostcodePrior,
                PmUkprn = learner.PMUKPRNNullable,
                CampId = learner.CampId,
                ProvSpecLearnMonA = learner.ProviderSpecLearnerMonitorings
                                    ?.SingleOrDefault(x => string.Equals(x.ProvSpecLearnMonOccur, "A", StringComparison.OrdinalIgnoreCase))?.ProvSpecLearnMon,
                ProvSpecLearnMonB = learner.ProviderSpecLearnerMonitorings
                                    ?.SingleOrDefault(x => string.Equals(x.ProvSpecLearnMonOccur, "B", StringComparison.OrdinalIgnoreCase))?.ProvSpecLearnMon,
                ApplicWeightFundRate = fm25Data?.NatRate,
                FundModel = learningDelivery.FundModel,
                LearnStartDate = fm25Data?.LearnerStartDate?.ToString("dd/MM/yyyy"),
                LearnPlanEndDate = fm25Data?.LearnerPlanEndDate?.ToString("dd/MM/yyyy"),
                LearnActEndDate = fm25Data?.LearnerActEndDate?.ToString("dd/MM/yyyy"),
                FundLine = fm25Data?.FundLine,
                Period1OnProgPayment = onProgPayment?.Period1,
                Period2OnProgPayment = onProgPayment?.Period2,
                Period3OnProgPayment = onProgPayment?.Period3,
                Period4OnProgPayment = onProgPayment?.Period4,
                Period5OnProgPayment = onProgPayment?.Period5,
                Period6OnProgPayment = onProgPayment?.Period6,
                Period7OnProgPayment = onProgPayment?.Period7,
                Period8OnProgPayment = onProgPayment?.Period8,
                Period9OnProgPayment = onProgPayment?.Period9,
                Period10OnProgPayment = onProgPayment?.Period10,
                Period11OnProgPayment = onProgPayment?.Period11,
                Period12OnProgPayment = onProgPayment?.Period12,
                TotalOnProgPayment = onProgPaymentTotal,
                TotalEarnedCash = onProgPaymentTotal
            });
        }
Exemple #25
0
        public ILearner GetLearner(int result)
        {
            ILearner learner = null;

            switch (result)
            {
            case 1:
                learner = new DownloadWinForm();
                break;

            case 2:
                learner = new Threads();
                break;

            case 3:
                learner = new ThreadSafety();
                break;

            case 4:
                learner = new EasyPools();
                break;

            case 5:
                learner = new SignalManualReset();
                break;

            case 6:
                learner = new AsyncIO();
                break;

            case 7:
                learner = new TPLDemo();
                break;

            case 8:
                learner = new AsyncAndAwait();
                break;

            case 9:
                learner = new ConcurrentQueueDemo();
                break;

            case 10:
                learner = new ConcurrentDictionaryDemo();
                break;

            case 11:
                learner = new ProduceConsumer();
                break;

            default:
                learner = new DownloadWinForm();
                break;
            }
            return(learner);
        }
Exemple #26
0
        /// <summary>
        /// Raises the validation message.
        /// </summary>
        /// <param name="learner">The learner.</param>
        /// <param name="dAndP">The destination and progression.</param>
        public void RaiseValidationMessage(ILearner learner, ILearnerDestinationAndProgression dAndP)
        {
            var parameters = Collection.Empty <IErrorMessageParameter>();

            parameters.Add(_messageHandler.BuildErrorMessageParameter(nameof(learner.ULN), learner.ULN));
            parameters.Add(_messageHandler.BuildErrorMessageParameter(PropertyNameConstants.LearningDestinationAndProgressionULN, dAndP.ULN));
            parameters.Add(_messageHandler.BuildErrorMessageParameter(PropertyNameConstants.LearningDestinationAndProgressionLearnRefNumber, dAndP.LearnRefNumber));

            _messageHandler.Handle(RuleName, learner.LearnRefNumber, null, parameters);
        }
Exemple #27
0
 public ContactPreference BuildContactPreference(int ukprn, ILearner learner, IContactPreference contactPreference)
 {
     return(new ContactPreference
     {
         UKPRN = ukprn,
         LearnRefNumber = learner.LearnRefNumber,
         ContPrefCode = contactPreference.ContPrefCode,
         ContPrefType = contactPreference.ContPrefType
     });
 }
Exemple #28
0
 public LearnerFAM BuildLearnerFAM(int ukprn, ILearner learner, ILearnerFAM fam)
 {
     return(new LearnerFAM
     {
         UKPRN = ukprn,
         LearnRefNumber = learner.LearnRefNumber,
         LearnFAMCode = fam.LearnFAMCode,
         LearnFAMType = fam.LearnFAMType
     });
 }
Exemple #29
0
 public LearnerHE BuildLearnerHE(int ukprn, ILearner learner)
 {
     return(new LearnerHE
     {
         LearnRefNumber = learner.LearnRefNumber,
         TTACCOM = learner.LearnerHEEntity.TTACCOMNullable,
         UKPRN = ukprn,
         UCASPERID = learner.LearnerHEEntity.UCASPERID
     });
 }
Exemple #30
0
 public LearnerHEFinancialSupport BuildLearnerHEFinancialSupport(int ukprn, ILearner learner, ILearnerHEFinancialSupport support)
 {
     return(new LearnerHEFinancialSupport
     {
         FINAMOUNT = support.FINAMOUNT,
         FINTYPE = support.FINTYPE,
         LearnRefNumber = learner.LearnRefNumber,
         UKPRN = ukprn
     });
 }