void ReleaseDesignerOutlets() { if (OutcomeKey != null) { OutcomeKey.Dispose(); OutcomeKey = null; } if (OutcomeValue != null) { OutcomeValue.Dispose(); OutcomeValue = null; } if (OutcomeValueKey != null) { OutcomeValueKey.Dispose(); OutcomeValueKey = null; } if (UniqueOutcomeKey != null) { UniqueOutcomeKey.Dispose(); UniqueOutcomeKey = null; } if (PrivacyConsentControl != null) { PrivacyConsentControl.Dispose(); PrivacyConsentControl = null; } }
public void CheckOutcome() { RegistryKey LMachine = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, System.Environment.MachineName); RegistryKey SKey = LMachine.OpenSubKey("SOFTWARE", true); RegistryKey HKey = SKey.OpenSubKey("HolodeckEE", true); RegistryKey OutcomeKey; do { Thread.Sleep(500); OutcomeKey = HKey.OpenSubKey("Outcome"); }while(OutcomeKey == null); String OutcomeType = (String)(OutcomeKey.GetValue("Outcome")); Console.WriteLine("==> Test Outcome: {0}! <==", OutcomeType); Thread.Sleep(4000); Console.WriteLine("Now Closing Holodeck..."); Thread.Sleep(3000); Holodeck.HolodeckPane.File_Exit(false); }
public async Task <IEnumerable <AimAndDeliverableModel> > GetAimAndDeliverableModel( int ukPrn, CancellationToken cancellationToken) { var reportData = new List <AimAndDeliverableModel>(); var providerConRefNumbers = (await _validLearnerDataService.GetLearnerConRefNumbers(ukPrn, cancellationToken)).ToList(); var conRefNumbers = providerConRefNumbers.Where(IsConRefNumberRound2).ToList(); var validLearners = (await _validLearnerDataService.GetLearnerDetails(ukPrn, FundingModel, conRefNumbers, cancellationToken)) .ToDictionary(vl => new ValidLearnerKey(vl.LearnRefNumber, vl.AimSeqNumber ?? 0), vl => vl); var fm70LearningDeliveries = (await _fm70DataService.GetLearningDeliveries(ukPrn, false, cancellationToken)).ToList(); var learningDeliveryFams = (await _validLearnerDataService.GetLearningDeliveryFams(ukPrn, ReportingConstants.LearningDeliveryFamTypeRES, cancellationToken)).ToList(); var learnerMonitorings = (await _validLearnerDataService.GetLearnerMonitorings(ukPrn, cancellationToken)) .ToDictionary( lm => new LearnerMonitoringKey(lm.LearnRefNumber, lm.ProvSpecLearnMonOccur), lm => lm); var deliveryMonitorings = (await _validLearnerDataService.GetDeliveryMonitorings(ukPrn, cancellationToken)) .ToDictionary( dm => new DeliveryMonitoringKey(dm.LearnRefNumber, dm.ProvSpecDelMonOccur, dm.AimSeqNumber), dm => dm); var fm70Outcomes = (await _fm70DataService.GetOutcomes(ukPrn, cancellationToken)) .ToDictionary( oc => new OutcomeKey( oc.LearnRefNumber, oc.OutType, oc.OutCode, oc.OutStartDate), oc => oc); var outcomes = (await _validLearnerDataService.GetDPOutcomes(ukPrn, cancellationToken)) .ToDictionary( oc => new OutcomeKey( oc.LearnRefNumber, oc.OutType, oc.OutCode, oc.OutStartDate), oc => oc); var deliverableCodes = fm70LearningDeliveries.Select(ld => ld.DeliverableCode).ToList(); var fcsCodeMappings = _referenceDataService.GetContractDeliverableCodeMapping(deliverableCodes, cancellationToken).ToList(); var learnAimRefs = validLearners.Select(ld => ld.Value.LearnAimRef).ToList(); var larsDeliveries = (await _referenceDataService.GetLarsLearningDelivery(learnAimRefs, cancellationToken)) .ToDictionary(t => t.LearnAimRef, t => t, StringComparer.OrdinalIgnoreCase); foreach (var fm70Delivery in fm70LearningDeliveries) { var periodReportedForDeliverable = false; var key = new ValidLearnerKey(fm70Delivery.LearnRefNumber, fm70Delivery.AimSeqNumber); validLearners.TryGetValue(key, out var learningDelivery); if (learningDelivery == null) { continue; } DpOutcome outcome = null; Fm70DpOutcome fm70Outcome = null; if (!string.IsNullOrWhiteSpace(fm70Delivery.EligibleProgressionOutcomeType) && fm70Delivery.EligibleProgressionOutcomeCode != null && fm70Delivery.EligibleProgressionOutomeStartDate != null) { var outcomeKey = new OutcomeKey( fm70Delivery.LearnRefNumber, fm70Delivery.EligibleProgressionOutcomeType, fm70Delivery.EligibleProgressionOutcomeCode ?? 0, fm70Delivery.EligibleProgressionOutomeStartDate ?? DateTime.MinValue); outcomes.TryGetValue(outcomeKey, out outcome); fm70Outcomes.TryGetValue(outcomeKey, out fm70Outcome); } larsDeliveries.TryGetValue(learningDelivery.LearnRefNumber, out var larsDelivery); var fam = learningDeliveryFams.FirstOrDefault(ldf => ldf.LearnRefNumber.CaseInsensitiveEquals(learningDelivery.LearnRefNumber) && ldf.AimSeqNumber == learningDelivery.AimSeqNumber); if (!fm70Delivery.Fm70LearningDeliveryDeliverables.Any()) { var model = GetAimAndDeliverableModel(learningDelivery, fm70Delivery, larsDelivery, outcome, fm70Outcome, fam, learnerMonitorings, deliveryMonitorings); reportData.Add(model); continue; } foreach (var deliverable in fm70Delivery.Fm70LearningDeliveryDeliverables) { var deliverableCode = deliverable.DeliverableCode; var fcsMapping = fcsCodeMappings?.SingleOrDefault(f => f.ExternalDeliverableCode.CaseInsensitiveEquals(deliverableCode) && f.FundingStreamPeriodCode.CaseInsensitiveEquals(FundingStreamPeriodCode)); var fm70Periods = fm70Delivery.Fm70LearningDeliveryDeliverablePeriods.Where(delivery => delivery.LearnRefNumber.CaseInsensitiveEquals(fm70Delivery.LearnRefNumber) && delivery.AimSeqNumber == fm70Delivery.AimSeqNumber && delivery.DeliverableCode.CaseInsensitiveEquals(deliverableCode)); foreach (var period in fm70Periods) { var total = (period.StartEarnings ?? 0) + (period.AchievementEarnings ?? 0) + (period.AdditionalProgCostEarnings ?? 0) + (period.ProgressionEarnings ?? 0); if (period.ReportingVolume == 0 && period.DeliverableVolume == 0 && total == 0) { continue; } var model = GetAimAndDeliverableModel( learningDelivery, fm70Delivery, larsDelivery, outcome, fm70Outcome, fam, learnerMonitorings, deliveryMonitorings, deliverable, period, fcsMapping, total); periodReportedForDeliverable = true; reportData.Add(model); } if (!periodReportedForDeliverable) { var model = GetAimAndDeliverableModel(learningDelivery, fm70Delivery, larsDelivery, outcome, fm70Outcome, fam, learnerMonitorings, deliveryMonitorings, deliverable, null, fcsMapping, null); reportData.Add(model); } } } return(reportData); }