public ActionResult GetReportHistoryValues(int reportHistoryId) { try { ReportHistoryViewModel reportHistories = _reportService.GetReportHistoryValues(reportHistoryId); return(Ok(reportHistories)); } catch (Exception ex) { throw new Exception(ex.Message, ex); } }
public IActionResult History() { var model = new ReportHistoryViewModel { Period = _currentPeriod, }; model.EditHistoryMostRecentFirst = _reportService .GetReportEditHistoryMostRecentFirst( _currentPeriod, EmployerAccount.AccountId); return(View("History", model)); }
public ReportHistoryViewModel GetReportHistoryValues(int reportHistoryId) { var reportHistory = _docFlowContext.ReportHistory.Include(i => i.Report).Include(i => i.ValuesHistory).ThenInclude(t => t.ReportValue).ThenInclude(f => f.ReportLabel).FirstOrDefault(x => x.Id == reportHistoryId); var items = reportHistory.ValuesHistory.Select(_mapper.Map <ReportValuesHistory, ReportValuesHistoryViewModel>).ToList(); var res = new ReportHistoryViewModel() { Id = reportHistory.Id, CreateDate = reportHistory.CreateDate, ReportName = reportHistory.Report.Name, ReportId = reportHistory.Report.Id, Values = items }; return(res); }
public async Task <IEnumerable <ReportHistoryViewModel> > GetReportsHistory(long ukprn) { var url = $"{_apiBaseUrl}/{ukprn}/reports-history"; _logger.LogInfo($"getting reports history for url : {url}"); var data = await _httpClient.GetDataAsync(url); var jobsList = _serializationService.Deserialize <IEnumerable <FileUploadJob> >(data); var result = new List <ReportHistoryViewModel>(); foreach (var job in jobsList) { var item = result.SingleOrDefault(x => x.PeriodNumber == job.PeriodNumber && x.AcademicYear == job.CollectionYear); if (item == null) { item = new ReportHistoryViewModel() { PeriodNumber = job.PeriodNumber, AcademicYear = job.CollectionYear, DisplayCollectionYear = $"20{job.CollectionYear.ToString().Substring(0, 2)} to 20{job.CollectionYear.ToString().Substring(2)}", Ukprn = ukprn }; result.Add(item); } var reportSize = await _storageService.GetReportFileSizeAsync(job); item.CombinedFileSize += reportSize / 1024; item.RelatedJobs.Add(job.JobType, job.JobId); } //calculate the overall filesize and put it on the model foreach (var model in result) { var fileNames = string.Join(", ", model.RelatedJobs.Select(kvp => (short)kvp.Key + "-" + kvp.Value)); model.ReportFileName = Convert.ToBase64String(Encoding.UTF8.GetBytes(fileNames)); } return(result.OrderByDescending(x => x.AcademicYear)); }