This repository has been archived on 2020-08-02. You can view files and clone it, but cannot push or open issues or pull requests.
e-commerce/web_backend/src/main/java/org/hso/ecommerce/action/shop/SearchByTermAction.java

41 lines
1.2 KiB
Java

package org.hso.ecommerce.action.shop;
import org.hso.ecommerce.entities.shop.Article;
import org.hso.ecommerce.repos.shop.ArticleRepository;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class SearchByTermAction {
public static List<Article> searchByTerm(String sourceTerm, ArticleRepository repository) {
List<String> terms = Arrays.asList(sourceTerm.split(" "));
List<Article> resultArticles = new ArrayList<>();
terms.forEach(term -> {
List<Article> titleArticles = repository.getArticlesByTermInTitle(term); //search in Title
titleArticles.forEach(article -> {
if(!resultArticles.contains(article)){
resultArticles.add(article);
}
});
});
terms.forEach(term -> {
List<Article> descArticles = repository.getArticlesByTermInDescription(term); //search by Term
descArticles.forEach(article -> {
if(!resultArticles.contains(article)){
resultArticles.add(article);
}
});
});
return resultArticles;
}
}