seminar/src/main/java/ru/ulstu/admin/controller/AdminManagerController.java

49 lines
1.8 KiB
Java

package ru.ulstu.admin.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import ru.ulstu.admin.model.ManagerForm;
import ru.ulstu.admin.service.AdminManagerService;
import ru.ulstu.manager.model.Manager;
@Controller
@RequestMapping("admin")
public class AdminManagerController {
private final AdminManagerService adminManagerService;
public AdminManagerController(AdminManagerService adminManagerService) {
this.adminManagerService = adminManagerService;
}
@GetMapping("managers")
public String getListOfManagers(Model model) {
model.addAttribute("managers", adminManagerService.getManagers());
return "admin/managersList";
}
@GetMapping("/editManager/{managerId}")
public String editManager(@PathVariable(value = "managerId") Integer id, Model model) {
model.addAttribute("manager",
(id != null && id != 0)
? adminManagerService.getManagerById(id)
: new Manager());
return "admin/editManager";
}
@PostMapping(value = "saveManager", params = "save")
public String saveManager(ManagerForm managerForm, Model model) {
adminManagerService.saveManager(managerForm);
return "redirect:/admin/managers";
}
@PostMapping(value = "saveManager", params = "delete")
public String deleteIndicator(ManagerForm managerForm, Model model) {
adminManagerService.deleteManager(managerForm);
return "redirect:/admin/managers";
}
}