package com.ieslamar.GestionInventario.controllers; import com.ieslamar.GestionInventario.entities.User; import com.ieslamar.GestionInventario.services.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; @Controller public class UserController { private final UserService userService; public UserController(UserService userService) { this.userService = userService; } @GetMapping("/login") public String loginPage() { return "login"; // Retorna la vista login.html } @GetMapping("/home") public String homePage(Model model) { return "home"; // Retorna la vista home.html } @GetMapping("/register") public String registerPage() { return "register"; // Retorna la vista register.html } @PostMapping("/register") public String register(@RequestParam String username, @RequestParam String password, @RequestParam String role, @RequestParam String mail) { userService.registerUser(username, password, role, mail, null); return "redirect:/login?success"; // Redirige al login tras registrarse } @GetMapping("/management") public String managementPage(){ return "management"; } @GetMapping("/user_management") public String listUsers(Model model) { List users = userService.getAllUsers(); model.addAttribute("users", users); return "user_management"; } @GetMapping("/delete_user") public String deleteUser(@RequestParam Long id) { User user = userService.getUserById(id); if (user != null) { userService.deleteUser(user); } return "redirect:/user_management"; } }