public IActionResult Index(EventsReportViewModel request) { var model = request.Search; if (model == null) { model = new SearchEventsViewModel(); } model.Page = model.Page.HasValue ? model.Page.Value : 1; EventsReportListViewModel result = new EventsReportListViewModel(); IEnumerable <EventsItemReport> events = context.Query <EventsItemReport>().FromSql($"SELECT * FROM get_events_report({model.Page.Value}, {pageSize}, {model.StartAfter}, {model.StartBefore}, {model.EndAfter}, {model.EndBefore})").ToList(); result.Events = events; result.TotalEvents = context.Query <EventsReportCount>().FromSql($"SELECT * FROM get_events_report_count({model.StartAfter}, {model.StartBefore}, {model.EndAfter}, {model.EndBefore})").FirstOrDefault().total; result.TotalPages = (result.TotalEvents / pageSize) + ((result.TotalEvents % pageSize != 0) ? 1 : 0); EventsReportViewModel response = new EventsReportViewModel { EventsList = result, Search = model }; return(View(response)); }
// GET: Event/Search public ViewResult Search() { var city = _user.Repository.GetCurrent.City; var date = DateTime.Now.ToString(DateService.GetBasicDateFormat); var model = new SearchEventsViewModel { City = city, Date = date }; return(View(model)); }
public ActionResult Search(SearchEventsViewModel model, int skip, string orderBy) { if (ModelState.IsValid == false || model.HasValidDate == false) { _response.HasFailed("Some information was not entered correcntly"); return(PartialView("_EventResponse", _response as EventResponse)); } var bsonDate = DateService.ToBson(model.Date); var events = _atomicEventWork.SearchEvents(model.City, bsonDate, skip, orderBy); return(events.IsNullOrEmpty() ? PartialView("Search/_EventsNotAvailable") : PartialView("Search/_EventSearchResponsePartial", events)); }