public byte[] SearchUnitReport(UnitReportInquirySearchTerms searchTerms)
        {
            var result = _session.Query <UnitReportViewModel>()
                         .ApplyOrganizationReferenceFilter(_userContext)
                         .ApplyOnlyReportFilter()
                         .ApplyQuickSearch(searchTerms.QuickSearch)
                         .ApplyTimestampFromSearch(searchTerms.TimestampFrom)
                         .ApplyTimestampToSearch(searchTerms.TimestampTo)
                         .FetchSimpleSearchResult(searchTerms.PagingData ?? new PagingData(1, DefaultPageSize, 0));

            return(_excelReportFactory.CreateExcelReport(result));
        }
Пример #2
0
        public IHttpActionResult DownloadReportSearchResult([FromUri] UnitReportInquirySearchTerms searchTerms)
        {
            if (!_userContext.CurrentUserIsSystemUser())
            {
                return(Unauthorized());
            }

            if (searchTerms == null)
            {
                searchTerms = new UnitReportInquirySearchTerms();
            }

            var response = _queryService.SearchUnitReport(searchTerms);

            return(new ExcelResult(response, "UnitReport.xlsx"));
        }