package de.jottyfan.bico.modules.theme; 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.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import de.jottyfan.bico.db.tables.records.TLessonRecord; import de.jottyfan.bico.modules.CommonController; import jakarta.servlet.http.HttpServletRequest; /** * * @author jotty * */ @Controller public class ThemeController extends CommonController { @Autowired private ThemeService service; @GetMapping("/theme") public String getThemeManipulationBySlotId(@RequestParam("slotId") Integer slotId, Model model) { model.addAttribute("slotId", slotId); model.addAttribute("day", service.getSlotDay(slotId)); model.addAttribute("list", service.getThemeManipulation(slotId)); model.addAttribute("themes", service.getAllThemes()); model.addAttribute("lesson", service.getLesson(slotId)); return "/theme"; } @PostMapping("/theme/add") public String addThemeToSlot(@RequestParam("slotId") Integer slotId, Model model, HttpServletRequest request) { String subjectId = request.getParameter("pkSubject"); Integer pkSubject = Integer.valueOf(subjectId); service.addThemeToSlot(slotId, pkSubject); return "redirect:/theme?slotId=" + slotId; } @GetMapping("/theme/delete") public String addThemeToSlot(@RequestParam("lessonSubjectId") Integer pkLessonSubject, @RequestParam("slotId") Integer slotId) { service.removeThemeFromSlot(pkLessonSubject); return "redirect:/theme?slotId=" + slotId; } @PostMapping("/theme/update") public String updateLesson(@RequestParam("slotId") Integer slotId, @ModelAttribute("lesson") TLessonRecord bean) { service.updateLesson(bean); return "redirect:/theme?slotId=" + slotId; } }