示例#1
0
 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));
        }
示例#3
0
        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);
        }
示例#4
0
        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));
        }