diff --git a/TestDataGenerator/Scenarios/SpecificFiles/DatasetSpecificFilesScenarioGenerator.cs b/TestDataGenerator/Scenarios/SpecificFiles/DatasetSpecificFilesScenarioGenerator.cs new file mode 100644 index 00000000..c23315f4 --- /dev/null +++ b/TestDataGenerator/Scenarios/SpecificFiles/DatasetSpecificFilesScenarioGenerator.cs @@ -0,0 +1,41 @@ +using Btms.Types.Ipaffs; +using Microsoft.Extensions.Logging; +using TestDataGenerator.Helpers; + +namespace TestDataGenerator.Scenarios.SpecificFiles; + +public abstract class DatasetSpecificFilesScenarioGenerator(IServiceProvider sp, ILogger logger, string? sampleFolder = null) : SpecificFilesScenarioGenerator(sp, logger, sampleFolder) +{ + protected override List<(string filePath, IBaseBuilder builder)> ModifyBuilders(List<(string filePath, IBaseBuilder builder)> builders, int? scenario = null, int? item = null, DateTime? entryDate = null) + { + if (!scenario.HasValue || !item.HasValue || !entryDate.HasValue) + { + return builders; + } + + // There may be multiple CHEDs and MRNs in the list of builders, we want to keep those that + // are the same, the same, but change them to something thats unique... + Dictionary referenceMap = new Dictionary(); + + builders.ForEach(b => + { + switch (b.builder) + { + case ImportNotificationBuilder i: + //Todo, need ched type... + var chedReference = DataHelpers.GenerateReferenceNumber(ImportNotificationTypeEnum.Chedpp, scenario.Value, DateTime.Today, item.Value); + + break; + case ClearanceRequestBuilder c: + break; + default: + break; + } + }); + + + // .WithReferenceNumber(ImportNotificationTypeEnum.Cveda, scenario, entryDate, item) + + return builders; + } +} \ No newline at end of file