public ActionResult EventArchiveStats(EventArchiveStatsFilter filter = null) { if (filter == null) { filter = new EventArchiveStatsFilter(); } return(CreateExportQueue(filter, ExportableReportType.EventArchiveStats, _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId)); }
public string EventArchiveStatsExport(EventArchiveStatsFilter filter, long userId) { var dataGen = new ExportableDataGenerator <EventArchiveStatsViewModel, EventArchiveStatsFilter>(_eventArchiveStatsService.GetEventArchiveStats, Logger); var model = dataGen.GetData(filter); var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <EventArchiveStatsViewModel>(); return(WriteCsv(GetExportableFileName("EventArchiveStats"), exporter, model.Collection, userId)); }
public ActionResult EventArchiveStats(EventArchiveStatsFilter filter, int pageNumber = 1) { int totalRecords; if (filter == null) { filter = new EventArchiveStatsFilter(); } var model = _eventArchiveStatsService.GetEventArchiveStats(pageNumber, _pageSize, filter, out totalRecords) ?? new EventArchiveStatsListModel(); model.Filter = filter; var currentAction = ControllerContext.RouteData.Values["action"].ToString(); Func <int, string> urlFunc = pn => Url.Action(currentAction, new { pageNumber = pn, filter.EventId, filter.UploadDateFrom, filter.UploadDateTo, filter.UploadedBy, filter.UploadStatus }); model.PagingModel = new PagingModel(pageNumber, _pageSize, totalRecords, urlFunc); return(View(model)); }
public IEnumerable <ResultArchive> GetForEventArchiveStatsReport(EventArchiveStatsFilter filter, int pageNumber, int pageSize, out int totalRecords) { using (var adapter = PersistenceLayer.GetDataAccessAdapter()) { var linqMetaData = new LinqMetaData(adapter); var query = (from rau in linqMetaData.ResultArchiveUpload select rau); if (filter != null) { if (filter.EventId > 0) { query = query.Where(q => q.EventId == filter.EventId); } else { if (filter.UploadDateFrom != null) { query = query.Where(q => q.UploadStartTime >= filter.UploadDateFrom); } if (filter.UploadDateTo != null) { query = query.Where(q => q.UploadStartTime < filter.UploadDateTo.Value.AddDays(1)); } if (filter.UploadedBy > 0) { query = query.Where(q => q.UploadedByOrgRoleUserId == filter.UploadedBy); } if (filter.UploadStatus > 0) { if (filter.UploadStatus == (long)ResultArchiveUploadStatus.Uploading || filter.UploadStatus == (long)ResultArchiveUploadStatus.UploadFailed) { query = query.Where(q => q.Status == filter.UploadStatus); } else { query = query.Where(q => q.Status != (long)ResultArchiveUploadStatus.Uploading && q.Status != (long)ResultArchiveUploadStatus.UploadFailed); } } if (filter.PodId > 0) { var eventIds = (from e in linqMetaData.Events join ep in linqMetaData.EventPod on e.EventId equals ep.EventId join p in linqMetaData.PodDetails on ep.PodId equals p.PodId where p.PodId == filter.PodId select e.EventId); query = (from q in query where eventIds.Contains(q.EventId) select q); } } } totalRecords = query.Count(); var result = query.OrderByDescending(ul => ul.ResultArchiveUploadId).TakePage(pageNumber, pageSize).ToArray(); return(AutoMapper.Mapper.Map <IEnumerable <ResultArchiveUploadEntity>, IEnumerable <ResultArchive> >(result)); } }