public async Task <ReportsModel> GetReportDetails(int collectionYear, int collectionPeriod) { var reportDetails = await _reportsService.GetAllReportDetails(collectionYear, collectionPeriod); var operationsReportsDetails = await _reportsService.GetOperationsReportsDetails(collectionYear, collectionPeriod); var fundingClaimsReportsDetails = await _reportsService.GetFundingClaimsReportsDetails(); var reportDetailsList = reportDetails.ToList(); reportDetailsList.AddRange(operationsReportsDetails); reportDetailsList.AddRange(fundingClaimsReportsDetails); var reportUrlDetails = reportDetailsList.Where(x => !string.IsNullOrEmpty(x.Url)); var availableReports = await _reportsService.GetAvailableReportsAsync(collectionYear, collectionPeriod); var model = new ReportsModel { AvailableReportsList = availableReports, ReportUrlDetails = reportUrlDetails }; return(model); }