// GET: Events public async System.Threading.Tasks.Task <ActionResult> Index(int id) { List <EventInfo> events = new List <EventInfo>(); var eventResults = new List <GogoKit.Models.Response.Event>(); Dictionary <string, MinPriceEvents> minPrice = new Dictionary <string, MinPriceEvents>(); EventInfo eInfo = new EventInfo(); EventSearch s = new EventSearch(); if (id != 0) { eventResults = await s.SearchEventsAsync(id); } var filteredResults = eventResults.AsEnumerable().Where(x => x.MinTicketPrice != null).OrderBy(x => x.Venue.Country.Name).ToList(); foreach (GogoKit.Models.Response.Event e in filteredResults) { MinPriceTracker(minPrice, e); eInfo = new EventInfo(); eInfo.ID = e.Id.Value; eInfo.Artist = e.Name; eInfo.EventDate = DateTime.Parse(e.StartDate.Value.ToString()); eInfo.Venue = e.Venue.Name; eInfo.Location = e.Venue.City + ", " + e.Venue.Country.Name; eInfo.Tickets = e.NumberOfTickets.Value; eInfo.MinPrice = e.MinTicketPrice == null ? "N/A" : e.MinTicketPrice.Display; events.Add(eInfo); } MarkMinPricedEvents(events, minPrice); return(View(events)); }
/// <summary> /// Asynchronously retrieves a list of events matching the given criteria. This operation does not support /// pagination. /// </summary> /// <param name="query">Search query.</param> /// <param name="token">Optional cancellation token.</param> /// <returns>List of events matching given criteria.</returns> public async Task <IEnumerable <Event> > SearchAsync(EventSearch query, CancellationToken token = default) { if (query is null) { throw new ArgumentNullException(nameof(query)); } return(await SearchAsync <Event>(query, token).ConfigureAwait(false)); }
public IActionResult EventGrid([FromForm] EventSearchForm form) { var model = new EventSearch(_configuration) { Search = true, Form = form }; return(PartialView("Partial/EventGrid", model)); }
/// <summary> /// Retrieves a list of assets matching the given criteria. This operation does not support pagination. /// </summary> /// <param name="query">Search query.</param> /// <param name="token">Optional cancellation token.</param> /// <returns>List of assets matching given criteria.</returns> public async Task <IEnumerable <Event> > SearchAsync(EventSearch query, CancellationToken token = default) { if (query is null) { throw new ArgumentNullException(nameof(query)); } var req = Oryx.Cognite.Events.search <IEnumerable <Event> >(query); return(await RunAsync(req, token).ConfigureAwait(false)); }
public async Task <EventSearch> SearchAsync(DateTime date, string userId) { var result = new EventSearch(); result.SearchTime = date; var datePlus24Hours = date.AddHours(24); result.Events = await _repo.Events.Where(m => m.DateOfEventUtc > date && m.DateOfEventUtc <= datePlus24Hours).ProjectTo <Poco.Models.EventProfile>(MapObjects()).ToListAsync(); return(result); }
public async Task <EventSearch> SearchEvents(EventSearchRequest request, int page = 1) { var row = 50 * page; var query = QueryHandler.BuildQuery(request); var req = await this._client.GetAsync($"https://api.stubhub.com/search/catalog/events/v3{query}&rows=10&start={row}"); var res = await req.Content.ReadAsStringAsync(); EventSearch jResponse = JsonConvert.DeserializeObject <EventSearch>(res); return(jResponse); }
void GetData() { var apiTask = new ServiceApi().SearchEvents(currentTime); apiTask.HandleError(this); apiTask.OnSucess(this, response => { if (response.Result.SearchTime == currentTime) { result = response.Result; adapter.Items = response.Result.Events; adapter.NotifyDataSetChanged(); } }); }
void GetData() { var apiTask = new ServiceApi().SearchEvents(currentTime); apiTask.HandleError(); apiTask.OnSucess(response => { if (response.Result.SearchTime == currentTime) { result = response.Result; eventsSource.Items = response.Result.Events; tvEvents.ReloadData(); } }); }
public ActionResult GetEvents(EventParam param) { try { if (param != null && !param.ItemId.IsNullOrEmpty()) { Sitecore.Context.Item = Sitecore.Context.Database.GetItem(Sitecore.Data.ID.Parse(param.ItemId)); } var EventResult = EventSearch.GetEvents(param); var s = EventResult.ToJson(); return(Json(s, JsonRequestBehavior.AllowGet)); } catch (Exception e) { return(Json(new { success = false, ex = e.Message }, JsonRequestBehavior.AllowGet)); } }
public IActionResult EventSearch(EventSearch searchModel) { //Get records from DB using the search logic var eventSearch = new EventSearchLogic(_context); var model = eventSearch.GetEvents(searchModel); //Set ViewBag Data ViewBag.showRecords = searchModel.showRecords; ViewBag.currentPage = searchModel.currentPage; ViewBag.searchString = searchModel.searchString; ViewBag.searchField = searchModel.searchField; ViewBag.eventType = searchModel.eventType; ViewBag.recordsReturned = searchModel.recordsReturned; ViewBag.totalRecords = searchModel.totalRecords; ViewBag.sortOrder = searchModel.sortOrder; ViewBag.sortField = searchModel.sortField; return(View("Index", model)); }
public async Task <HttpResponseMessage> PostSearch([FromBody] EventSearch body) { var instance = EventService.GetInstance(); IStateFactory <@event, EventsCollectionState> _stateFactory = new EventsCollectionFactory(new EventLinkFactory(Request)); if (body.isEmpty()) { return(Request.CreateResponse(HttpStatusCode.BadRequest, new BadRequest(Request.RequestUri, "The body must not be null"), "application/problem+json")); } var events = await instance.Search(body.location, body.tags); if (events.Success) { var res = events.Result.Select <@event, EventsCollectionState>(i => _stateFactory.Create(i)); return(Request.CreateResponse(HttpStatusCode.OK, res, "application/json")); } return(Request.CreateResponse(HttpStatusCode.Conflict, new Conflict(Request.RequestUri, events.Message), "application/problem+json")); }
public IActionResult Search([FromBody] EventSearch model) { EventListResult result = this.eventService.Search(model.Keywords, model.OrderBy, model.PageNo, model.PageSize, model.BlockSize); return(Ok(result)); }
private IQueryable <DocEntityEvent> _ExecSearch(EventSearch request, DocQuery query) { request = InitSearch <Event, EventSearch>(request); IQueryable <DocEntityEvent> entities = null; query.Run(session => { entities = query.SelectAll <DocEntityEvent>(); if (!DocTools.IsNullOrEmpty(request.FullTextSearch)) { var fts = new EventFullTextSearch(request); entities = GetFullTextSearch <DocEntityEvent, EventFullTextSearch>(fts, entities); } if (null != request.Ids && request.Ids.Any()) { entities = entities.Where(en => en.Id.In(request.Ids)); } if (!DocTools.IsNullOrEmpty(request.Updated)) { entities = entities.Where(e => null != e.Updated && e.Updated.Value.Date == request.Updated.Value.Date); } if (!DocTools.IsNullOrEmpty(request.UpdatedBefore)) { entities = entities.Where(e => null != e.Updated && e.Updated <= request.UpdatedBefore); } if (!DocTools.IsNullOrEmpty(request.UpdatedAfter)) { entities = entities.Where(e => null != e.Updated && e.Updated >= request.UpdatedAfter); } if (!DocTools.IsNullOrEmpty(request.Created)) { entities = entities.Where(e => null != e.Created && e.Created.Value.Date == request.Created.Value.Date); } if (!DocTools.IsNullOrEmpty(request.CreatedBefore)) { entities = entities.Where(e => null != e.Created && e.Created <= request.CreatedBefore); } if (!DocTools.IsNullOrEmpty(request.CreatedAfter)) { entities = entities.Where(e => null != e.Created && e.Created >= request.CreatedAfter); } if (true == request.Archived?.Any() && currentUser.HasProperty(DocConstantModelName.EVENT, nameof(Reference.Archived), DocConstantPermission.VIEW)) { entities = entities.Where(en => en.Archived.In(request.Archived)); } else { entities = entities.Where(en => !en.Archived); } if (true == request.Locked?.Any()) { entities = entities.Where(en => en.Locked.In(request.Locked)); } if (!DocTools.IsNullOrEmpty(request.AuditRecord) && !DocTools.IsNullOrEmpty(request.AuditRecord.Id)) { entities = entities.Where(en => en.AuditRecord.Id == request.AuditRecord.Id); } if (true == request.AuditRecordIds?.Any()) { entities = entities.Where(en => en.AuditRecord.Id.In(request.AuditRecordIds)); } if (!DocTools.IsNullOrEmpty(request.Description)) { entities = entities.Where(en => en.Description.Contains(request.Description)); } if (!DocTools.IsNullOrEmpty(request.Descriptions)) { entities = entities.Where(en => en.Description.In(request.Descriptions)); } if (!DocTools.IsNullOrEmpty(request.Processed)) { entities = entities.Where(en => null != en.Processed && request.Processed.Value.Date == en.Processed.Value.Date); } if (!DocTools.IsNullOrEmpty(request.ProcessedBefore)) { entities = entities.Where(en => en.Processed <= request.ProcessedBefore); } if (!DocTools.IsNullOrEmpty(request.ProcessedAfter)) { entities = entities.Where(en => en.Processed >= request.ProcessedAfter); } if (!DocTools.IsNullOrEmpty(request.Status)) { entities = entities.Where(en => en.Status.Contains(request.Status)); } if (!DocTools.IsNullOrEmpty(request.Statuss)) { entities = entities.Where(en => en.Status.In(request.Statuss)); } if (true == request.TeamsIds?.Any()) { entities = entities.Where(en => en.Teams.Any(r => r.Id.In(request.TeamsIds))); } if (true == request.UpdatesIds?.Any()) { entities = entities.Where(en => en.Updates.Any(r => r.Id.In(request.UpdatesIds))); } if (true == request.UsersIds?.Any()) { entities = entities.Where(en => en.Users.Any(r => r.Id.In(request.UsersIds))); } entities = ApplyFilters <DocEntityEvent, EventSearch>(request, entities); if (request.Skip > 0) { entities = entities.Skip(request.Skip.Value); } if (request.Take > 0) { entities = entities.Take(request.Take.Value); } if (true == request?.OrderBy?.Any()) { entities = entities.OrderBy(request.OrderBy); } if (true == request?.OrderByDesc?.Any()) { entities = entities.OrderByDescending(request.OrderByDesc); } }); return(entities); }
public object Get(EventSearch request) => GetSearchResultWithCache <Event, DocEntityEvent, EventSearch>(DocConstantModelName.EVENT, request, _ExecSearch);
public object Post(EventSearch request) => Get(request);
// Render Search Form public ActionResult renderSearch() { var model = new EventSearch(); return(PartialView("renderSearch", model)); }
//Action for exporting query to an Excel spreadsheet. public IActionResult Export(EventSearch searchModel) { //Get records from DB using the search logic var eventSearch = new EventSearchLogic(_context); var model = eventSearch.GetEvents(searchModel); string sWebRootFolder = _hostingEnvironment.WebRootPath; DateTime datetime = System.DateTime.Now; string sFileName = @"Email-Events.xlsx"; string URL = string.Format("{0}://{1}/{2}", Request.Scheme, Request.Host, sFileName); FileInfo file = new FileInfo(Path.Combine(sWebRootFolder, sFileName)); if (file.Exists) { file.Delete(); file = new FileInfo(Path.Combine(sWebRootFolder, sFileName)); } using (ExcelPackage package = new ExcelPackage(file)) { // add a new worksheet to the empty workbook ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Email Events"); //First add the headers worksheet.Cells[1, 1].Value = "Timestamp"; worksheet.Cells[1, 2].Value = "Response"; worksheet.Cells[1, 3].Value = "Event Type"; worksheet.Cells[1, 4].Value = "Email Address"; worksheet.Cells[1, 5].Value = "Reason"; worksheet.Cells[1, 6].Value = "URL"; worksheet.Cells[1, 7].Value = "IP Address"; worksheet.Cells[1, 8].Value = "TLS Version"; worksheet.Cells[1, 9].Value = "Cert Error"; worksheet.Cells[1, 10].Value = "User Agent"; worksheet.Cells[1, 11].Value = "User ID"; worksheet.Cells[1, 12].Value = "Attempt Number"; worksheet.Cells[1, 13].Value = "Sent At"; //Add values var i = 2; foreach (var item in model) { worksheet.Cells["A" + i.ToString()].Value = item.eventTimestamp; worksheet.Cells["A" + i.ToString()].Style.Numberformat.Format = "dd-mm-yyyy hh:MM:ss"; worksheet.Cells["B" + i.ToString()].Value = item.response; worksheet.Cells["C" + i.ToString()].Value = item.@event; worksheet.Cells["D" + i.ToString()].Value = item.email; worksheet.Cells["E" + i.ToString()].Value = item.reason; worksheet.Cells["F" + i.ToString()].Value = item.url; worksheet.Cells["G" + i.ToString()].Value = item.ip; worksheet.Cells["H" + i.ToString()].Value = item.tls; worksheet.Cells["I" + i.ToString()].Value = item.cert_err; worksheet.Cells["J" + i.ToString()].Value = item.useragent; worksheet.Cells["K" + i.ToString()].Value = item.userid; worksheet.Cells["L" + i.ToString()].Value = item.attempt; worksheet.Cells["M" + i.ToString()].Value = item.eventSend_at; worksheet.Cells["M" + i.ToString()].Style.Numberformat.Format = "dd-mm-yyyy hh:MM:ss"; i++; } package.Save(); //Save the workbook. } return(Redirect(URL)); }