private FundingSummaryReportHeaderModel TestHeader(string conRefNumber, int years) { var header = new FundingSummaryReportHeaderModel { Ukprn = "12345678", ContractReferenceNumber = conRefNumber, ProviderName = "Provider", SecurityClassification = "OFFICIAL - SENSITIVE", LastSupplementaryDataFileUpdate = "01/08/2020 09:00", SupplementaryDataFile = "SUPPDATA_01", IlrFileDetails = new List <IlrFileDetail> { new IlrFileDetail { Year = 2018, AcademicYear = "2018/19", IlrFile = "Ilr1819.xml", MostRecent = "(most recent closed collection for year)", LastIlrFileUpdate = "01/08/2018 09:00", FilePrepDate = "01/08/2018 09:00", }, new IlrFileDetail { Year = 2019, AcademicYear = "2019/20", IlrFile = "Ilr1920.xml", MostRecent = "(most recent closed collection for year)", LastIlrFileUpdate = "01/08/2019 09:00", FilePrepDate = "01/08/2019 09:00", } } }; if (years == 3) { header.IlrFileDetails.Add(new IlrFileDetail { Year = 2020, AcademicYear = "2020/21", IlrFile = "Ilr2021.xml", LastIlrFileUpdate = "01/08/2020 09:00", FilePrepDate = "01/08/2020 09:00", }); } return(header); }
public FundingSummaryReportHeaderModel PopulateReportHeader( SourceFileModel sourceFile, IEnumerable <ILRFileDetails> ilrFileData, int ukPrn, string providerName, string conRefNumber, int collectionYear, int baseIlrYear, IDictionary <int, string> academicYearDictionary) { var ilrFileDetailModels = BuildIlrFileDetailModelsForYears(collectionYear, baseIlrYear, academicYearDictionary); var lastSupplementaryDataFileUpdateUk = sourceFile?.SuppliedDate.HasValue ?? false?_dateTimeProvider.ConvertUtcToUk(sourceFile.SuppliedDate.Value) : (DateTime?)null; foreach (var model in ilrFileDetailModels) { var ilrData = ilrFileData?.Where(x => x?.Year == model.Year).FirstOrDefault(); if (ilrData != null) { var lastIlrFileUpdateUk = ilrData.LastSubmission.HasValue ? _dateTimeProvider.ConvertUtcToUk(ilrData.LastSubmission.Value) : (DateTime?)null; model.IlrFile = !string.IsNullOrWhiteSpace(ilrData?.FileName) ? Path.GetFileName(ilrData?.FileName) : null; model.FilePrepDate = ilrData?.FilePreparationDate?.ToString(ReportingConstants.ShortDateFormat); model.LastIlrFileUpdate = lastIlrFileUpdateUk?.ToString(ReportingConstants.LongDateFormat); } } var header = new FundingSummaryReportHeaderModel { Ukprn = ukPrn.ToString(), ProviderName = providerName, ContractReferenceNumber = conRefNumber, SecurityClassification = ReportingConstants.Classification, SupplementaryDataFile = !string.IsNullOrWhiteSpace(sourceFile?.FileName) ? Path.GetFileName(sourceFile?.FileName) : null, LastSupplementaryDataFileUpdate = lastSupplementaryDataFileUpdateUk?.ToString(ReportingConstants.LongDateFormat), IlrFileDetails = ilrFileDetailModels }; return(header); }
private Worksheet RenderHeader(Worksheet worksheet, int row, FundingSummaryReportHeaderModel header) { worksheet.Cells.ImportTwoDimensionArray( new object[, ] { { FundingSummaryReportConstants.HeaderProviderName, header.ProviderName }, { FundingSummaryReportConstants.HeaderUkprn, header.Ukprn }, { FundingSummaryReportConstants.HeaderContractNumber, header.ContractReferenceNumber }, { FundingSummaryReportConstants.HeaderEsfFileName, header.SupplementaryDataFile }, { FundingSummaryReportConstants.HeaderEsfFileUpdated, header.LastSupplementaryDataFileUpdate }, { FundingSummaryReportConstants.HeaderClassification, header.SecurityClassification }, }, row, 0); var rowsToStyle = row + 6; while (row <= rowsToStyle) { ApplyStyleToRow(worksheet, row, _headerAndFooterStyle); row++; } var column = 3; var ilrHeaderRow = 1; worksheet.Cells.ImportObjectArray( new object[] { string.Empty, FundingSummaryReportConstants.HeaderIlrFileName, FundingSummaryReportConstants.HeaderIlrFileUpdated, FundingSummaryReportConstants.HeaderIlrFilePrepDate, string.Empty, }, ilrHeaderRow, column, true); foreach (var ilrDetail in header.IlrFileDetails) { column = NextColumn(column); worksheet.Cells.ImportObjectArray( new object[] { ilrDetail.AcademicYear, ilrDetail.IlrFile, ilrDetail.LastIlrFileUpdate, ilrDetail.FilePrepDate, ilrDetail.MostRecent, }, ilrHeaderRow, column, true); column = NextColumn(column); } return(worksheet); }