/// <summary> Gets the given request. </summary> /// <param name="request"> The request. </param> /// <returns> A Task<object> </returns> public object Get(GetReportHeaders request) { if (string.IsNullOrEmpty(request.IncludeItemTypes)) { return(null); } request.DisplayType = "Screen"; ReportViewType reportViewType = ReportHelper.GetReportViewType(request.ReportView); List <ReportHeader> result = new List <ReportHeader>(); switch (reportViewType) { case ReportViewType.ReportData: ReportBuilder dataBuilder = new ReportBuilder(_libraryManager); result = dataBuilder.GetHeaders(request); break; case ReportViewType.ReportActivities: ReportActivitiesBuilder activityBuilder = new ReportActivitiesBuilder(_libraryManager, _userManager); result = activityBuilder.GetHeaders(request); break; } return(result); }
/// <summary> Gets report activities. </summary> /// <param name="request"> The request. </param> /// <returns> The report activities. </returns> private async Task <ReportResult> GetReportActivities(IReportsDownload request) { var activityLogQuery = new ActivityLogQuery { StartIndex = request.StartIndex, Limit = request.HasQueryLimit ? request.Limit : null }; var queryResult = await _activityManager.GetPagedResultAsync(activityLogQuery).ConfigureAwait(false); ReportActivitiesBuilder builder = new ReportActivitiesBuilder(_libraryManager, _userManager); var result = builder.GetResult(queryResult, request); result.TotalRecordCount = queryResult.TotalRecordCount; return(result); }
/// <summary> Gets report activities. </summary> /// <param name="request"> The request. </param> /// <returns> The report activities. </returns> private ReportResult GetReportActivities(IReportsDownload request) { QueryResult <ActivityLogEntry> queryResult; if (request.HasQueryLimit) { queryResult = _activityManager.GetPagedResult(request.StartIndex, request.Limit); } else { queryResult = _activityManager.GetPagedResult(request.StartIndex, null); } ReportActivitiesBuilder builder = new ReportActivitiesBuilder(_libraryManager, _userManager); var result = builder.GetResult(queryResult, request); result.TotalRecordCount = queryResult.TotalRecordCount; return(result); }
/// <summary> Gets report activities. </summary> /// <param name="request"> The request. </param> /// <returns> The report activities. </returns> private ReportResult GetReportActivities(IReportsDownload request) { DateTime?minDate = string.IsNullOrWhiteSpace(request.MinDate) ? (DateTime?)null : DateTime.Parse(request.MinDate, null, DateTimeStyles.RoundtripKind).ToUniversalTime(); QueryResult <ActivityLogEntry> queryResult; if (request.HasQueryLimit) { queryResult = _activityManager.GetActivityLogEntries(minDate, request.StartIndex, request.Limit); } else { queryResult = _activityManager.GetActivityLogEntries(minDate, request.StartIndex, null); } //var queryResult = _activityManager.GetActivityLogEntries(minDate, request.StartIndex, request.Limit); ReportActivitiesBuilder builder = new ReportActivitiesBuilder(_libraryManager, _userManager); var result = builder.GetResult(queryResult, request); result.TotalRecordCount = queryResult.TotalRecordCount; return(result); }
/// <summary> Gets the given request. </summary> /// <param name="request"> The request. </param> /// <returns> A Task<object> </returns> public async Task<object> Get(GetReportHeaders request) { if (string.IsNullOrEmpty(request.IncludeItemTypes)) return null; request.DisplayType = "Screen"; ReportViewType reportViewType = ReportHelper.GetReportViewType(request.ReportView); List<ReportHeader> result = new List<ReportHeader>(); switch (reportViewType) { case ReportViewType.ReportData: ReportBuilder dataBuilder = new ReportBuilder(_libraryManager); result = dataBuilder.GetHeaders(request); break; case ReportViewType.ReportStatistics: break; case ReportViewType.ReportActivities: ReportActivitiesBuilder activityBuilder = new ReportActivitiesBuilder(_libraryManager, _userManager); result = activityBuilder.GetHeaders(request); break; } return ToOptimizedResult(result); }
/// <summary> Gets report activities. </summary> /// <param name="request"> The request. </param> /// <returns> The report activities. </returns> private Task<ReportResult> GetReportActivities(IReportsDownload request) { return Task<ReportResult>.Run(() => { DateTime? minDate = string.IsNullOrWhiteSpace(request.MinDate) ? (DateTime?)null : DateTime.Parse(request.MinDate, null, DateTimeStyles.RoundtripKind).ToUniversalTime(); QueryResult<ActivityLogEntry> queryResult; if (request.HasQueryLimit) queryResult = _repo.GetActivityLogEntries(minDate, request.StartIndex, request.Limit); else queryResult = _repo.GetActivityLogEntries(minDate, request.StartIndex, null); //var queryResult = _activityManager.GetActivityLogEntries(minDate, request.StartIndex, request.Limit); ReportActivitiesBuilder builder = new ReportActivitiesBuilder(_libraryManager, _userManager); var result = builder.GetResult(queryResult, request); result.TotalRecordCount = queryResult.TotalRecordCount; return result; }); }