private FundingSummaryReport NewReport(
     ILogger logger = null,
     IStreamableKeyValuePersistenceService streamableKeyValuePersistenceService = null,
     IDateTimeProvider dateTimeProvider = null,
     IFundingSummaryReportModelBuilder fundingSummaryReportModelBuilder = null,
     IExcelService excelService = null,
     IRenderService <IFundingSummaryReport> fundingSummaryReportRenderService     = null,
     IPeriodisedValuesLookupProviderService periodisedValuesLookupProviderService = null,
     IFCSProviderService fcsProviderService = null,
     IPersistReportData persisteReportData  = null)
 {
     return(new FundingSummaryReport(
                logger,
                streamableKeyValuePersistenceService,
                dateTimeProvider,
                fundingSummaryReportModelBuilder,
                excelService,
                fundingSummaryReportRenderService,
                periodisedValuesLookupProviderService,
                fcsProviderService,
                persisteReportData));
 }
 public FundingSummaryReport(
     ILogger logger,
     IStreamableKeyValuePersistenceService streamableKeyValuePersistenceService,
     IDateTimeProvider dateTimeProvider,
     IFundingSummaryReportModelBuilder modelBuilder,
     IExcelService excelService,
     IRenderService <IFundingSummaryReport> fundingSummaryReportRenderService,
     IPeriodisedValuesLookupProviderService periodisedValuesLookupProvider,
     IFCSProviderService fcsProviderService,
     IPersistReportData persistReportData)
     : base(
         dateTimeProvider,
         streamableKeyValuePersistenceService,
         logger)
 {
     _modelBuilder = modelBuilder;
     _excelService = excelService;
     _fundingSummaryReportRenderService = fundingSummaryReportRenderService;
     _periodisedValuesLookupProvider    = periodisedValuesLookupProvider;
     _fcsProviderService = fcsProviderService;
     _persistReportData  = persistReportData;
 }