Ajout article v3

This commit is contained in:
jleroy
2024-04-24 14:58:28 +02:00
parent 62d2de271e
commit be83631053
4 changed files with 49 additions and 25 deletions

View File

@@ -1,5 +1,7 @@
package fr.eni.enchere.bo;
import org.springframework.web.multipart.MultipartFile;
import java.util.Date;
public class Article {
@@ -7,18 +9,18 @@ public class Article {
int id;
String nom;
String desc;
String photo;
MultipartFile photo;
Date dateDebutEnch;
Date dateFinEnch;
float prixInitial;
float prixVente;
UserProfil Utilisateur;
int Utilisateur;
int numCategorie;
public Article() {
}
public Article(int id, String nom, String desc, String photo, Date dateDebutEnch, Date dateFinEnch, float prixInitial, float prixVente, UserProfil Utilisateur, int numCategorie) {
public Article(int id, String nom, String desc, MultipartFile photo, Date dateDebutEnch, Date dateFinEnch, float prixInitial, float prixVente, int Utilisateur, int numCategorie) {
setId(id);
setNom(nom);
setDesc(desc);
@@ -55,11 +57,11 @@ public class Article {
this.desc = desc;
}
public String getPhoto() {
public MultipartFile getPhoto() {
return photo;
}
public void setPhoto(String photo) {
public void setPhoto(MultipartFile photo) {
this.photo = photo;
}
@@ -95,11 +97,11 @@ public class Article {
this.prixVente = prixVente;
}
public UserProfil getUtilisateur() {
public int getUtilisateur() {
return Utilisateur;
}
public void setUtilisateur(UserProfil Utilisateur) {
public void setUtilisateur(int Utilisateur) {
this.Utilisateur = Utilisateur;
}

View File

@@ -8,9 +8,15 @@ import fr.eni.enchere.bo.Article;
import fr.eni.enchere.bo.Retrait;
import fr.eni.enchere.bo.UserProfil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.text.SimpleDateFormat;
import java.util.Date;
@Controller()
@RequestMapping("/article")
@@ -31,7 +37,7 @@ public class ArticleController {
@GetMapping
public String viewArticle(Model model) {
return "accueil";
return "redirect:/accueil";
}
//Affichage d'un article
@@ -60,15 +66,31 @@ public class ArticleController {
}
@PostMapping("/new")
public String newArticle(@RequestParam("article") Article article, @RequestParam("retrait") Retrait retrait) {
//Récupérer l'utilisateur pour set
System.out.println(article.getNumCategorie());
public String newArticle(@ModelAttribute("article") Article article,
@RequestParam("rue") String rue,
@RequestParam("code_postal") String code_postal,
@RequestParam("ville") String ville,
@RequestParam("dateDebut") String dateDebut,
@RequestParam("dateFin") String datefin) {
//Récupérer l'utilisateur pour set l'article
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
String username = authentication.getName();
UserProfil userProfile = userService.utilisateurByName(username);
article.setUtilisateur(userProfile.getId());
//Récupérer le lieu de retrait
Retrait retrait = new Retrait();
retrait.setRue(rue);
retrait.setCode_postale(code_postal);
retrait.setVille(ville);
//Reste de l'article
Date dDateDebut = new SimpleDateFormat(dateDebut);
article.setDateDebutEnch();
if (article.getId() == 0){
//Création d'un article
} else {
//Mise à jour d'un article
}
//articleService.saveArticle(article);
return "redirect:/accueil";
}

View File

@@ -17,7 +17,7 @@ public class WebSecurityConfig{
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http.authorizeHttpRequests((requests) -> requests
.requestMatchers("/", "/accueil").permitAll()
.requestMatchers("/accueil", "/login", "/inscription/**", "/searchArticle", "/article/**", "/change-language").permitAll()
.requestMatchers("/accueil", "/login", "/inscription/**", "/searchArticle", "/article/show", "/change-language").permitAll()
.requestMatchers("/css/**", "/images/**", "/assets/**", "/img/**", "/js/**", "/assets/**").permitAll()
.requestMatchers("/profil/**", "/article/new/**", "/article/update", "/article/delete").authenticated()
.requestMatchers("/admin").hasRole("ADMIN")