Files
ENI-enchere/src/main/java/fr/eni/enchere/controllers/AdminController.java
2024-04-26 13:51:17 +02:00

76 lines
2.5 KiB
Java

package fr.eni.enchere.controllers;
import fr.eni.enchere.bll.CategorieService;
import fr.eni.enchere.bll.UserService;
import fr.eni.enchere.bo.Article;
import fr.eni.enchere.bo.Categorie;
import fr.eni.enchere.bo.Retrait;
import fr.eni.enchere.bo.UserProfil;
import jakarta.servlet.http.HttpServletRequest;
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.*;
@Controller
@RequestMapping("/admin")
public class AdminController {
private UserService userService;
private CategorieService categorieService;
public AdminController(UserService userService, CategorieService categorieService) {
this.userService = userService;
this.categorieService = categorieService;
}
@GetMapping
public String viewAdminPanel(Model model) {
model.addAttribute("categories", categorieService.findAllCategories());
model.addAttribute("userProfil", userService.listeUtilisateurs());
model.addAttribute("categorie", new Categorie());
return "admin";
}
@PostMapping("/new")
public String ajouterCategorie(@ModelAttribute("categorie") Categorie categorie) {
categorieService.saveCategorie(categorie);
return "redirect:/admin";
}
@PostMapping("/update")
public String updateCategorie(@RequestParam("newCategorie") String libelle, @RequestParam("IdCategorie") int idCategorie) {
Categorie categorie = new Categorie();
categorie.setLibelle(libelle);
categorie.setId(idCategorie);
categorieService.updateCategorie(categorie);
return "redirect:/admin";
}
@PostMapping("/update/credit")
public String updateCreditUser(@RequestParam("newCredit") float credit, @RequestParam("idUser") int idUser) {
userService.setCredit(credit, idUser);
return "redirect:/admin";
}
@PostMapping("/deleteC")
public String deleteCategorie(@RequestParam("deleteIdCategorie") int id) {
categorieService.deleteCategorie(id);
return "redirect:/admin";
}
@PostMapping("/delete")
public String deleteUser(@RequestParam("userDelete") int id) {
userService.deleteUtilisateur(id);
return "redirect:/admin";
}
@PostMapping("/disabled")
public String disabledUser(@RequestParam("userDisabled") int id) {
userService.disableUtilisateur(id);
return "redirect:/admin";
}
}