Merge branch 'refs/heads/marvin'
This commit is contained in:
@@ -11,13 +11,13 @@ public class Article {
|
||||
Date dateFinEnch;
|
||||
float prixInitial;
|
||||
float prixVente;
|
||||
int numUtilisateur;
|
||||
UserProfil Utilisateur;
|
||||
int numCategorie;
|
||||
|
||||
public Article() {
|
||||
}
|
||||
|
||||
public Article(int id, String nom, String desc, Date dateDebutEnch, Date dateFinEnch, float prixInitial, float prixVente, int numUtilisateur, int numCategorie) {
|
||||
public Article(int id, String nom, String desc, Date dateDebutEnch, Date dateFinEnch, float prixInitial, float prixVente, UserProfil Utilisateur, int numCategorie) {
|
||||
this.id = id;
|
||||
this.nom = nom;
|
||||
this.desc = desc;
|
||||
@@ -25,7 +25,7 @@ public class Article {
|
||||
this.dateFinEnch = dateFinEnch;
|
||||
this.prixInitial = prixInitial;
|
||||
this.prixVente = prixVente;
|
||||
this.numUtilisateur = numUtilisateur;
|
||||
this.Utilisateur = Utilisateur;
|
||||
this.numCategorie = numCategorie;
|
||||
}
|
||||
|
||||
@@ -85,12 +85,12 @@ public class Article {
|
||||
this.prixVente = prixVente;
|
||||
}
|
||||
|
||||
public int getNumUtilisateur() {
|
||||
return numUtilisateur;
|
||||
public UserProfil getUtilisateur() {
|
||||
return Utilisateur;
|
||||
}
|
||||
|
||||
public void setNumUtilisateur(int numUtilisateur) {
|
||||
this.numUtilisateur = numUtilisateur;
|
||||
public void setUtilisateur(UserProfil Utilisateur) {
|
||||
this.Utilisateur = Utilisateur;
|
||||
}
|
||||
|
||||
public int getNumCategorie() {
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package fr.eni.enchere.dal;
|
||||
|
||||
import fr.eni.enchere.bll.UserService;
|
||||
import fr.eni.enchere.bo.Article;
|
||||
import fr.eni.enchere.bo.SearchArticleCritere;
|
||||
import fr.eni.enchere.bo.UserProfil;
|
||||
import fr.eni.enchere.controllers.AccueilController;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -23,6 +25,7 @@ public class ArticleRepositoryImpl implements ArticleRepository {
|
||||
private static final Logger logger = LoggerFactory.getLogger(ArticleRepositoryImpl.class);
|
||||
private JdbcTemplate jdbcTemplate;
|
||||
private NamedParameterJdbcTemplate namedJdbcTemplate;
|
||||
private UserService userService;
|
||||
|
||||
private class ArticleRowMapper implements RowMapper<Article> {
|
||||
@Override
|
||||
@@ -35,15 +38,23 @@ public class ArticleRepositoryImpl implements ArticleRepository {
|
||||
article.setDateFinEnch(rs.getDate("date_fin_encheres"));
|
||||
article.setPrixInitial(rs.getFloat("prix_initial"));
|
||||
article.setPrixVente(rs.getFloat("prix_vente"));
|
||||
article.setNumUtilisateur(rs.getInt("no_utilisateur"));
|
||||
|
||||
UserProfil user = userService.utilisateur(rs.getInt("no_utilisateur"));
|
||||
if (user != null) {
|
||||
article.setUtilisateur(user);
|
||||
} else {
|
||||
logger.error("erreur de l'utilisateur");
|
||||
}
|
||||
|
||||
article.setNumCategorie(rs.getInt("no_categorie"));
|
||||
return article;
|
||||
}
|
||||
}
|
||||
|
||||
public ArticleRepositoryImpl(JdbcTemplate jdbcTemplate, NamedParameterJdbcTemplate namedJdbcTemplate) {
|
||||
public ArticleRepositoryImpl(JdbcTemplate jdbcTemplate, NamedParameterJdbcTemplate namedJdbcTemplate, UserService userService) {
|
||||
this.jdbcTemplate = jdbcTemplate;
|
||||
this.namedJdbcTemplate = namedJdbcTemplate;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
package fr.eni.enchere.dal;
|
||||
|
||||
import fr.eni.enchere.bo.Article;
|
||||
import fr.eni.enchere.bo.UserProfil;
|
||||
import org.apache.catalina.User;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Primary;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.jdbc.core.RowMapper;
|
||||
import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
|
||||
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
|
||||
import org.springframework.jdbc.support.GeneratedKeyHolder;
|
||||
@@ -12,6 +15,8 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -31,22 +36,10 @@ public class UserRepositoryImpl implements UserRepository {
|
||||
this.passwordEncoder = passwordEncoder;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<UserProfil> findAll() {
|
||||
return List.of();
|
||||
}
|
||||
public class UserRowMapper implements RowMapper<UserProfil> {
|
||||
|
||||
@Override
|
||||
public UserProfil findById(int id) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserProfil findByUsername(String username) {
|
||||
String sql = "SELECT * FROM UTILISATEURS WHERE pseudo = :username OR email = :username AND isDelete = 0";
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("username", username);
|
||||
UserProfil user = namedParameterJdbcTemplate.queryForObject(sql, params, (rs, rowNum) -> {
|
||||
public UserProfil mapRow(ResultSet rs, int rowNum) throws SQLException {
|
||||
UserProfil userProfile = new UserProfil();
|
||||
userProfile.setId(rs.getInt("no_utilisateur"));
|
||||
userProfile.setPrenom(rs.getString("prenom"));
|
||||
@@ -61,7 +54,28 @@ public class UserRepositoryImpl implements UserRepository {
|
||||
userProfile.setCredit(rs.getFloat("credit"));
|
||||
userProfile.setAdmin(rs.getBoolean("administrateur"));
|
||||
return userProfile;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserProfil findByUsername(String username) {
|
||||
String sql = "SELECT * FROM UTILISATEURS WHERE pseudo = :username OR email = :username AND isDelete = 0";
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("username", username);
|
||||
UserProfil user = jdbcTemplate.queryForObject(sql, new UserRowMapper(), params);
|
||||
return user;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public List<UserProfil> findAll() {
|
||||
return List.of();
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserProfil findById(int id) {
|
||||
String sql = "SELECT * FROM UTILISATEURS WHERE no_utilisateur = ?";
|
||||
UserProfil user = jdbcTemplate.queryForObject(sql, new UserRowMapper(), id);
|
||||
return user;
|
||||
}
|
||||
|
||||
|
||||
@@ -43,6 +43,11 @@
|
||||
<div class="d-flex justify-content-between align-items-center">
|
||||
<div>
|
||||
<h6>Prix de vente: <span th:text="${article.prixVente}"></span> €</h6>
|
||||
|
||||
<h6>Vendeur: <span th:text="${article.utilisateur.getPseudo()}"></span> </h6>
|
||||
</div>
|
||||
</div>
|
||||
</br>
|
||||
<h6 class="text-muted">Fin de l'enchere: <span th:text="${#dates.format(article.dateFinEnch, 'dd/MM/yyyy')}"></span></h6>
|
||||
</div>
|
||||
</div>
|
||||
@@ -52,8 +57,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="js/bootstrap/bootstrap.min.js"></script>
|
||||
</body>
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<body>
|
||||
<header>
|
||||
<nav class="navbar navbar-expand-lg navbar navbar-dark bg-dark navbar-">
|
||||
<a class="navbar-brand" href="#">
|
||||
<a class="navbar-brand" href="/accueil">
|
||||
<img src="img/logo.png" width="70" height="70" alt="Logo">
|
||||
</a>
|
||||
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
|
||||
Reference in New Issue
Block a user