source: src/main/java/com/example/task/controller/SubjectController.java@ fdfbdde

Last change on this file since fdfbdde was fdfbdde, checked in by Stojilkova Sara <sara.stojilkova.students.finki.ukim.mk>, 9 months ago

Initial commit

  • Property mode set to 100644
File size: 3.2 KB
Line 
1package com.example.task.controller;
2
3import com.example.task.service.SubjectService;
4import lombok.AllArgsConstructor;
5import org.springframework.stereotype.Controller;
6import org.springframework.ui.Model;
7import org.springframework.web.bind.annotation.GetMapping;
8import org.springframework.web.bind.annotation.PostMapping;
9import org.springframework.web.bind.annotation.RequestParam;
10
11import java.time.LocalDate;
12
13@Controller
14@AllArgsConstructor
15public class SubjectController {
16
17 private final SubjectService subjectService;
18
19 @GetMapping("/add/subject/exam")
20 public String getAddExamPage(Model model) {
21 model.addAttribute("subjects", subjectService.findAllSubjects());
22 model.addAttribute("places", subjectService.findAllPlaces());
23 return "subject/form_exam";
24 }
25
26 @GetMapping("/add/subject/class")
27 public String getAddClassPage(Model model) {
28 model.addAttribute("subjects", subjectService.findAllSubjects());
29 model.addAttribute("places", subjectService.findAllPlaces());
30 return "subject/form_class";
31 }
32
33 @PostMapping("/add/subject/exam")
34 public String addExam(@RequestParam(name = "subject") String subjectId,
35 @RequestParam(name = "place") Integer placeId,
36 @RequestParam(name = "name") String examName,
37 @RequestParam(name = "description") String examDescription,
38 @RequestParam(name = "date") LocalDate date,
39 @RequestParam(name = "startTime") String startTime,
40 @RequestParam(name = "endTime") String endTime) throws Exception {
41 subjectService.addExam(subjectId, placeId, examName, examDescription, date, startTime, endTime);
42 return "redirect:/add/subject/exam";
43 }
44
45 @PostMapping("/add/subject/class")
46 public String addClass(@RequestParam(name = "subject") String subjectId,
47 @RequestParam(name = "place") Integer placeId,
48 @RequestParam(name = "name") String examName,
49 @RequestParam(name = "description") String examDescription,
50 @RequestParam(name = "startingDate", required = false) LocalDate startingDate,
51 @RequestParam(name = "endingDate", required = false) LocalDate endingDate,
52 @RequestParam(name = "day", required = false) String day,
53 @RequestParam(name = "startTime") String startTime,
54 @RequestParam(name = "endTime") String endTime) throws Exception {
55 subjectService.addClass(subjectId, placeId, examName, examDescription, startingDate, endingDate, day, startTime, endTime);
56 return "redirect:/add/subject/class";
57 }
58
59 @GetMapping("/exam")
60 public String getUserExam(Model model) {
61 model.addAttribute("exams", subjectService.findAllUserExams());
62 return "subject/list_exam";
63 }
64
65 @GetMapping("/class")
66 public String getUserClasses(Model model) {
67 model.addAttribute("nonRepeatingClasses", subjectService.findAllUserNonRepeatingClasses());
68 model.addAttribute("repeatingClasses", subjectService.findAllUserRepeatingClasses());
69 return "subject/list_class";
70 }
71}
Note: See TracBrowser for help on using the repository browser.