diff --git a/src/main/java/fr/eni/enchere/bll/ArticleService.java b/src/main/java/fr/eni/enchere/bll/ArticleService.java index b371a1f..f4be3ea 100644 --- a/src/main/java/fr/eni/enchere/bll/ArticleService.java +++ b/src/main/java/fr/eni/enchere/bll/ArticleService.java @@ -11,4 +11,5 @@ public interface ArticleService { void saveArticle(Article article); void deleteArticle(int id); void updateArticle(int id); + List
findArticleByTitle(String title); } diff --git a/src/main/java/fr/eni/enchere/bll/ArticleServiceImpl.java b/src/main/java/fr/eni/enchere/bll/ArticleServiceImpl.java index 3cd5ade..5a0b42a 100644 --- a/src/main/java/fr/eni/enchere/bll/ArticleServiceImpl.java +++ b/src/main/java/fr/eni/enchere/bll/ArticleServiceImpl.java @@ -38,4 +38,9 @@ public class ArticleServiceImpl implements ArticleService{ public void updateArticle(int id) { } + + @Override + public List
findArticleByTitle(String title) { + return articleRepository.findArticleByTitle(title); + } } diff --git a/src/main/java/fr/eni/enchere/controllers/AccueilController.java b/src/main/java/fr/eni/enchere/controllers/AccueilController.java index b577289..c79871c 100644 --- a/src/main/java/fr/eni/enchere/controllers/AccueilController.java +++ b/src/main/java/fr/eni/enchere/controllers/AccueilController.java @@ -1,11 +1,17 @@ package fr.eni.enchere.controllers; import fr.eni.enchere.bll.ArticleService; +import fr.eni.enchere.bo.Article; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; @Controller @@ -16,6 +22,7 @@ public class AccueilController { public AccueilController(ArticleService articleService) { super(); + this.articleService = articleService; } @@ -25,6 +32,12 @@ public class AccueilController { return "accueil"; } + @PostMapping("/searchArticle") + public String searchArticle(@ModelAttribute String title, Model model) { + model.addAttribute("Articles", articleService.findArticleByTitle(title)); + return "accueil"; + } + @GetMapping("/login") public String login(Model modele) { return "login"; diff --git a/src/main/java/fr/eni/enchere/dal/ArticleRepository.java b/src/main/java/fr/eni/enchere/dal/ArticleRepository.java index 4866c62..7eb8d01 100644 --- a/src/main/java/fr/eni/enchere/dal/ArticleRepository.java +++ b/src/main/java/fr/eni/enchere/dal/ArticleRepository.java @@ -7,6 +7,7 @@ import java.util.List; public interface ArticleRepository { List
findAllArticle(); Article findArticleById(int id); + List
findArticleByTitle(String title); void saveArticle(Article article); void deleteArticle(int id); void updateArticle(int id); diff --git a/src/main/java/fr/eni/enchere/dal/ArticleRepositoryImpl.java b/src/main/java/fr/eni/enchere/dal/ArticleRepositoryImpl.java index f588383..88bf04c 100644 --- a/src/main/java/fr/eni/enchere/dal/ArticleRepositoryImpl.java +++ b/src/main/java/fr/eni/enchere/dal/ArticleRepositoryImpl.java @@ -56,6 +56,13 @@ public class ArticleRepositoryImpl implements ArticleRepository { return null; } + @Override + public List
findArticleByTitle(String title) { + String sql = "SELECT * FROM ARTICLES_VENDUS WHERE nom_article LIKE '?'"; + List
articles = jdbcTemplate.query(sql, new ArticleRowMapper(), title); + return articles; + } + @Override public void saveArticle(Article article) { diff --git a/src/main/resources/templates/accueil.html b/src/main/resources/templates/accueil.html index 4172347..45f8b38 100644 --- a/src/main/resources/templates/accueil.html +++ b/src/main/resources/templates/accueil.html @@ -11,8 +11,8 @@
-
- + +
@@ -32,7 +32,6 @@
Prix de vente: €
Fin de l'enchere:
-
diff --git a/src/main/resources/templates/modele-page.html b/src/main/resources/templates/modele-page.html index 635630d..481cc90 100644 --- a/src/main/resources/templates/modele-page.html +++ b/src/main/resources/templates/modele-page.html @@ -16,7 +16,7 @@ -