From ba908f93520c721392907c180feb774cb71f6dbc Mon Sep 17 00:00:00 2001 From: Parpaillax Date: Tue, 30 Apr 2024 16:53:08 +0200 Subject: [PATCH] better article --- .../eni/enchere/controllers/ArticleController.java | 5 +++++ .../eni/enchere/controllers/EnchereController.java | 9 ++++++++- src/main/resources/templates/article.html | 13 ++++++++----- src/main/resources/templates/editArticle.html | 2 +- 4 files changed, 22 insertions(+), 7 deletions(-) diff --git a/src/main/java/fr/eni/enchere/controllers/ArticleController.java b/src/main/java/fr/eni/enchere/controllers/ArticleController.java index 5a76ae6..9cfa474 100644 --- a/src/main/java/fr/eni/enchere/controllers/ArticleController.java +++ b/src/main/java/fr/eni/enchere/controllers/ArticleController.java @@ -74,7 +74,12 @@ public class ArticleController { lastEnchere = lastEnchere.stream() .sorted(Comparator.comparing(Enchere::getMontantEnchere).reversed()) .collect(Collectors.toList()); + Optional pseudoMaxEnchere = lastEnchere.stream() + .max(Comparator.comparing(Enchere::getMontantEnchere)) // Comparaison basée sur le montant d'enchère + .map(Enchere::getPseudoUtilisateur); + model.addAttribute("encheres", lastEnchere); + model.addAttribute("maxEncherePseudo", pseudoMaxEnchere.orElse("")); model.addAttribute("isArticleCurrentUser", isArticleCurrentUser); model.addAttribute("article", article); model.addAttribute("username", user); diff --git a/src/main/java/fr/eni/enchere/controllers/EnchereController.java b/src/main/java/fr/eni/enchere/controllers/EnchereController.java index f086a83..da7087a 100644 --- a/src/main/java/fr/eni/enchere/controllers/EnchereController.java +++ b/src/main/java/fr/eni/enchere/controllers/EnchereController.java @@ -16,6 +16,7 @@ import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; +import java.util.Comparator; import java.util.Date; import java.util.List; import java.util.Optional; @@ -66,8 +67,14 @@ public class EnchereController { result.rejectValue("montantEnchere", "error.enchere", "Vous ne pouvez pas enchérir si vous n'avez pas les fonds suffisant"); } + Optional pseudoMaxEnchere = lastEnchere.stream() + .max(Comparator.comparing(Enchere::getMontantEnchere)) // Comparaison basée sur le montant d'enchère + .map(Enchere::getPseudoUtilisateur); + if (pseudoMaxEnchere.get().equals(authentication.getName())) { + result.rejectValue("montantEnchere", "error.enchere", "Vous ne pouvez pas enchèrir sur votre propre offre"); + } + if (result.hasErrors()) { - System.out.println(result); session.setAttribute("errors", result.getAllErrors()); return "redirect:/article/show?id=" + articleId; } diff --git a/src/main/resources/templates/article.html b/src/main/resources/templates/article.html index d1cde8e..f694af6 100644 --- a/src/main/resources/templates/article.html +++ b/src/main/resources/templates/article.html @@ -7,9 +7,12 @@
-
-
-

+
+
+

+
+
+

@@ -51,7 +54,7 @@
-
+ @@ -63,7 +66,7 @@
- +
diff --git a/src/main/resources/templates/editArticle.html b/src/main/resources/templates/editArticle.html index f1f48d8..c604f95 100644 --- a/src/main/resources/templates/editArticle.html +++ b/src/main/resources/templates/editArticle.html @@ -70,7 +70,7 @@
-
+