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"; } }