private SearchAnswer ProcessSearchRequest(SearchRequest searchRequest) { SearchAnswer searchAnswer = new SearchAnswer(); if (searchRequest.SearchArticles) { searchAnswer.Articles = databaseAccess.GetArticles(searchRequest.Title, searchRequest.Author, searchRequest.InitialYear, searchRequest.FinalYear).Take(500).ToList(); _logger.LogInformation("Articles found: " + searchAnswer.Articles.Count); } if (searchRequest.SearchBooks) { searchAnswer.Books = databaseAccess.GetBooks(searchRequest.Title, searchRequest.Author, searchRequest.InitialYear, searchRequest.FinalYear).Take(500).ToList(); _logger.LogInformation("Books found: " + searchAnswer.Books.Count); } if (searchRequest.SearchCongressComunications) { searchAnswer.CongressComunications = databaseAccess.GetCongressComunications(searchRequest.Title, searchRequest.Author, searchRequest.InitialYear, searchRequest.FinalYear).Take(500).ToList(); _logger.LogInformation("Congress Comunications found: " + searchAnswer.CongressComunications.Count); } return(searchAnswer); }
public async Task <IEnumerable <Photo> > GetItemsAsync(Search search = null, bool forceRefresh = false) { var items = new List <Photo>(); string _uri = GetUri(search); Uri uri = string.IsNullOrEmpty(_uri) ? new Uri($"{HostUrl}/photos?client_id={client_id}") : new Uri($"{HostUrl}/search/photos?{_uri}client_id={client_id}"); try { var response = await client.GetAsync(uri); if (response.IsSuccessStatusCode) { var content = await response.Content.ReadAsStringAsync(); SearchAnswer temp = new SearchAnswer(); items = !string.IsNullOrEmpty(_uri) ? JsonConvert.DeserializeObject <SearchAnswer>(content).Results : JsonConvert.DeserializeObject <List <Photo> >(content); photos = items; } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(@" ERROR {0}", ex.Message); } return(await Task.FromResult(items)); }
public async void MainInitialization() { MainWindow main = new MainWindow(); MainVars mv = new MainVars(); InitLabel.Content = "Загрузка..."; await Task.Delay(1000); InitLabel.Content = "Инициализация команд..."; await Task.Delay(1000); SearchAnswer.InitCommandList(); InitLabel.Content = "Проверка интернет соединения..."; await Task.Delay(1000); InternetConnection ic = new InternetConnection(); MainVars.InternetConnection = ic.TryToConnect(); ic.InternetConnectionTimerStart(); InitLabel.Content = "Настройка Telegram..."; main.InitTelegram(); await Task.Delay(1000); InitLabel.Content = "Запуск..."; await Task.Delay(1000); main.InitHelper(); main.Show(); this.Close(); }
public string Get() { int Category = 0; int QuestionType = 0; SearchAnswer obj = new SearchAnswer(); return(obj.GetAnswer(Category, QuestionType)); }
public async Task <ActionResult <SearchAnswer> > GetByUserLiked([FromQuery] SearchQuery query) { query.UserInfo = new UserInfo { Id = User.GetUserId(), AdvertsType = AdvertsType.Liked }; SearchAnswer adverts = await _advertService.GetAllAsync(query); return(Ok(adverts)); }
public async Task <SearchAnswer> GetAllAsync(SearchQuery searchQuery) { ICollection <Advert> adverts = await _unitOfWork.AdvertRepository.GetAllAsync(searchQuery); int advertsAmount = await _unitOfWork.AdvertRepository.GetAdvertsAmountAsync(searchQuery); var mappedAdverts = _mapper.Map <List <AdvertDto> >(adverts); SearchAnswer result = new SearchAnswer { Adverts = mappedAdverts, AdvertsAmount = advertsAmount }; return(result); }
/// <summary> /// Функция возвращает объект с объявлениями, параметры выборки которых указаны в параметре <paramref name="query"/>. /// </summary> /// <param name="query">Объект, в котором находятся параметры фильтрации, сортировки и данные для пагинации.</param> /// <param name="id">Номер страницы с объявлениями. Извлекается из URI.</param> /// <returns>AdvertListViewModel - модель с непросредственно объявлениями, запросом и количеством объявлений.</returns> public async Task <IActionResult> Index(SearchQuery query, [FromRoute] int?id) { if (id != null) { query.CurrentPage = id.Value; } SearchAnswer result = await _advertService.GetAllAsync(query); return(View(new AdvertListViewModel { Adverts = result.Adverts, Query = query, AllAdvertsAmount = result.AdvertsAmount })); }
public async Task <IActionResult> GetUserLikedAdverts([FromQuery] SearchQuery query, [FromRoute] int?id) { if (id != null) { query.CurrentPage = id.Value; } SearchAnswer result = await _userInfoService.GetByUserLikedAsync(query); AdvertListViewModel data = new AdvertListViewModel { Adverts = result.Adverts, Query = query, AllAdvertsAmount = result.AdvertsAmount }; return(View("Adverts", data)); }
private void ShowResults(SearchAnswer searchAnswer, bool searchArticle, bool searchBook, bool searchCongress) { if (searchAnswer == null) { richTextBoxArticles.ForeColor = Color.Red; richTextBoxArticles.Text = "There was a problem with the answer of the warehouse."; return; } richTextBoxArticles.ForeColor = Color.Black; richTextBoxBooks.ForeColor = Color.Black; richTextBoxCongressComunications.ForeColor = Color.Black; if (searchArticle) { string text = ""; for (int i = 0; i < searchAnswer.Articles.Count; i++) { Article a = searchAnswer.Articles[i]; text += $"{i + 1}.- {a.Title}\n"; text += $"Year: {a.Year}\n"; text += a.Url == null ? "" : $"Url: {a.Url}\n"; text += a.InitialPage == null && a.FinalPage == null ? "" : $"Pages: {a.InitialPage} - {a.FinalPage}\n"; text += a.Exemplar == null ? "" : $"Volume: {a.Exemplar.Volume}\n"; text += a.Exemplar == null ? "" : $"Number: {a.Exemplar.Number}\n"; text += a.Exemplar == null ? "" : $"Month: {a.Exemplar.Month}\n"; text += a.Exemplar == null ? "" : $"Journal: {a.Exemplar.Journal.Name}\n"; text += PrepareAuthors(a.People); text += "\n"; } richTextBoxArticles.Text = text == "" ? "No articles found." : text; if (tabControlResults.TabPages.Contains(tabs[0])) { tabControlResults.TabPages.Remove(tabs[0]); } tabControlResults.TabPages.Add(tabs[0]); } else { tabControlResults.TabPages.Remove(tabs[0]); } if (searchBook) { string text = ""; for (int i = 0; i < searchAnswer.Books.Count; i++) { Book b = searchAnswer.Books[i]; text += $"{i + 1}.- {b.Title}\n"; text += $"Year: {b.Year}\n"; text += b.Url == null ? "" : $"Url: {b.Url}\n"; text += b.Editorial == null ? "" : $"Editorial: {b.Editorial}\n"; text += PrepareAuthors(b.People); text += "\n"; } richTextBoxBooks.Text = text == "" ? "No books found." : text; if (tabControlResults.TabPages.Contains(tabs[1])) { tabControlResults.TabPages.Remove(tabs[1]); } tabControlResults.TabPages.Add(tabs[1]); } else { tabControlResults.TabPages.Remove(tabs[1]); } if (searchCongress) { string text = ""; for (int i = 0; i < searchAnswer.CongressComunications.Count; i++) { CongressComunication cc = searchAnswer.CongressComunications[i]; text += $"{i + 1}.- {cc.Title}\n"; text += $"Year: {cc.Year}\n"; text += cc.Url == null ? "" : $"Url: {cc.Url}\n"; text += cc.Congress == null ? "" : $"Congress: {cc.Congress}\n"; text += cc.Edition == null ? "" : $"Edition: {cc.Edition}\n"; text += cc.Place == null ? "" : $"Place: {cc.Place}\n"; text += cc.InitialPage == null && cc.FinalPage == null ? "" : $"Pages: {cc.InitialPage} - {cc.FinalPage}\n"; text += PrepareAuthors(cc.People); text += "\n"; } richTextBoxCongressComunications.Text = text == "" ? "No congress comunications found." : text; if (tabControlResults.TabPages.Contains(tabs[2])) { tabControlResults.TabPages.Remove(tabs[2]); } tabControlResults.TabPages.Add(tabs[2]); } else { tabControlResults.TabPages.Remove(tabs[2]); } string PrepareAuthors(ICollection <Person> people) { if (people.Count == 0) { return(""); } string text = "Authors: "; foreach (Person person in people) { text += person.Name + " " + person.Surnames + ", "; } return(text.Substring(0, text.Length - 2) + "\n"); } }