public async Task <IActionResult> Search(string query, PagingInfo pagingInfo, string method = null, string startdate = null, string enddate = null) { if (string.IsNullOrEmpty(query)) { return(Ok("No query provided")); } var cleanedQuery = CleanString(query); var getStartDate = string.IsNullOrEmpty(startdate) ? startdate = "'2000-01-01'" : startdate; var getEndDate = string.IsNullOrEmpty(enddate) ? enddate = "'" + DateTime.Today.ToString("yyyy-MM-dd") + "'" : enddate; var search = await UseFetchingMethod(cleanedQuery, pagingInfo, method, getStartDate, getEndDate); if (search == null || search.Item2 <= 0) { return(Json(NotFound())); } var model = search.Item1.Select(s => CreateSearchResultModel(s)); var urls = GetUrls(query, pagingInfo, method, getStartDate, getEndDate); var prev = urls[0]; var next = urls[1]; var total = search.Item2; var returnType = new ReturnTypeConstants("posts"); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, returnType, prev, next); return(Ok(result)); }
public async Task <IActionResult> Search(string query, PagingInfo pagingInfo, string method = null, string sortby = null, string orderby = null) { if (string.IsNullOrEmpty(query)) { return(Ok("No query provided")); } var search = await UseFetchingMethod(query, pagingInfo, method, sortby, orderby); if (search == null && search.Count <= 0) { return(NotFound()); } var model = search.Select(s => CreateSearchResultModel(s)); var urls = GetUrls(query, pagingInfo, method, sortby, orderby); var prev = urls[0]; var next = urls[1]; var total = search.Count(); const string returnType = "posts"; var result = PagingHelper.GetPagingResult(pagingInfo, total, model, returnType, prev, next); return(Ok(result)); }
public async Task <IActionResult> GetQuestions(PagingInfo pagingInfo) { var question = await _QuestionRepository.GetAll(pagingInfo); IEnumerable <QuestionListModel> model = question.Select(que => CreateQuestionListModel(que)); var total = _QuestionRepository.Count(); var prev = Url.Link(nameof(GetQuestions), new { page = pagingInfo.Page - 1, pagingInfo.PageSize }); var next = Url.Link(nameof(GetQuestions), new { page = pagingInfo.Page + 1, pagingInfo.PageSize }); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, "Question", prev, next); return(Ok(result)); }
public async Task <IActionResult> GetPosts(PagingInfo pagingInfo) { var posts = await _PostRepository.GetAll(pagingInfo); IEnumerable <PostListModel> model = posts.Select(post => CreatePostListModel(post)); var total = _PostRepository.Count(); var prev = Url.Link(nameof(GetPosts), new { page = pagingInfo.Page - 1, pagingInfo.PageSize }); var next = Url.Link(nameof(GetPosts), new { page = pagingInfo.Page + 1, pagingInfo.PageSize }); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, "Post", prev, next); return(Ok(result)); }
public async Task <IActionResult> GetNotes(PagingInfo pagingInfo) { var notes = await _NoteRepository.GetAll(pagingInfo); IEnumerable <NoteListModel> model = notes.Select(note => CreateNoteListModel(note)); var total = _NoteRepository.Count(); var prev = Url.Link(nameof(GetNotes), new { page = pagingInfo.Page - 1, pagingInfo.PageSize }); var next = Url.Link(nameof(GetNotes), new { page = pagingInfo.Page + 1, pagingInfo.PageSize }); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, "Note", prev, next); return(Ok(result)); }
public async Task <IActionResult> GetQuestions(PagingInfo pagingInfo) { var question = await _QuestionRepository.GetAll(pagingInfo); var model = question.Select(que => CreateQuestionListModel(que)); var total = _QuestionRepository.Count(); var prev = Url.Link(nameof(GetQuestions), new { page = pagingInfo.Page - 1, pagingInfo.PageSize }).ToLower(); var next = Url.Link(nameof(GetQuestions), new { page = pagingInfo.Page + 1, pagingInfo.PageSize }).ToLower(); var returnType = new ReturnTypeConstants("questions"); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, returnType, prev, next); return(Ok(result)); }
public async Task <IActionResult> GetHistory(int userid, PagingInfo pagingInfo) { var history = await _SearchHistoryRepository.GetSearchHistory(userid, pagingInfo); var model = history.Select(search => SearchHistoryListModel(search)); var total = _SearchHistoryRepository.Count(); var prev = Url.Link(nameof(GetHistory), new { page = pagingInfo.Page - 1, pagingInfo.PageSize }).ToLower(); var next = Url.Link(nameof(GetHistory), new { page = pagingInfo.Page + 1, pagingInfo.PageSize }).ToLower(); var returnType = new ReturnTypeConstants("searchhistory"); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, returnType, prev, next); return(Ok(result)); }
public async Task <IActionResult> GetNotes(PagingInfo pagingInfo) { // var notes = await _NoteRepository.GetAll(pagingInfo); var notes = await _NoteRepository.GetNotes(pagingInfo); var model = notes.Select(note => CreateNoteListModel(note)); var total = _NoteRepository.Count(); var prev = Url.Link(nameof(GetNotes), new { page = pagingInfo.Page - 1, pagingInfo.PageSize }).ToLower(); var next = Url.Link(nameof(GetNotes), new { page = pagingInfo.Page + 1, pagingInfo.PageSize }).ToLower(); var returnType = new ReturnTypeConstants("notes"); var result = PagingHelper.GetPagingResult(pagingInfo, total, model, returnType, prev, next); return(Ok(result)); }