diff --git a/src/main/java/com/example/demo/app/domain/service/CourseService.java b/src/main/java/com/example/demo/app/domain/service/CourseService.java index 4681860..c0831a4 100644 --- a/src/main/java/com/example/demo/app/domain/service/CourseService.java +++ b/src/main/java/com/example/demo/app/domain/service/CourseService.java @@ -8,4 +8,6 @@ public interface CourseService { public List findAll(); + public CourseModel findById(Long courseId); + } diff --git a/src/main/java/com/example/demo/app/domain/service/impl/CourseServiceImpl.java b/src/main/java/com/example/demo/app/domain/service/impl/CourseServiceImpl.java index 37638f6..61a4b7d 100644 --- a/src/main/java/com/example/demo/app/domain/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/example/demo/app/domain/service/impl/CourseServiceImpl.java @@ -21,4 +21,8 @@ public class CourseServiceImpl implements CourseService { return CourseEntity.createCourseModelList(courseRepository.findAll()); } + + public CourseModel findById(Long courseId) { + return CourseModel.convertFrom(courseRepository.findByCourseId(courseId)); + } } diff --git a/src/main/java/com/example/demo/app/infra/repository/CourseRepository.java b/src/main/java/com/example/demo/app/infra/repository/CourseRepository.java index 7d69932..5b74e85 100644 --- a/src/main/java/com/example/demo/app/infra/repository/CourseRepository.java +++ b/src/main/java/com/example/demo/app/infra/repository/CourseRepository.java @@ -1,9 +1,14 @@ package com.example.demo.app.infra.repository; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; import com.example.demo.app.infra.entity.CourseEntity; public interface CourseRepository extends JpaRepository { + @Query("SELECT c FROM CourseEntity c WHERE c.courseId = :courseId ") + public CourseEntity findByCourseId(Long courseId); + + } diff --git a/src/main/java/com/example/demo/app/presentation/controller/CourseController.java b/src/main/java/com/example/demo/app/presentation/controller/CourseController.java index b2f6a7e..def92f4 100644 --- a/src/main/java/com/example/demo/app/presentation/controller/CourseController.java +++ b/src/main/java/com/example/demo/app/presentation/controller/CourseController.java @@ -7,25 +7,25 @@ import jakarta.servlet.http.HttpSession; 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.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import com.example.demo.aop.aspect.SessionCheck; import com.example.demo.app.domain.model.LoginModel; -import com.example.demo.app.domain.model.UserModel; import com.example.demo.app.domain.service.CourseInfoService; import com.example.demo.app.domain.service.CourseService; import com.example.demo.app.domain.service.UserService; import com.example.demo.app.presentation.form.CourseForm; import com.example.demo.app.presentation.form.CourseInfoForm; +import com.example.demo.app.presentation.form.UserForm; import lombok.RequiredArgsConstructor; @Controller -@RequestMapping("/course") +//@RequestMapping("/course") @RequiredArgsConstructor public class CourseController { @@ -40,14 +40,17 @@ public class CourseController { @SessionCheck - @PostMapping("/select/register") - public String showSelectCourse(@ModelAttribute UserModel userModel, Model model) { + @GetMapping("/course/select/register") + public String showSelectCourse(@ModelAttribute UserForm userForm, Model model, HttpSession session) { try { + System.out.println(userForm.getMailAddress()); - model.addAttribute("mode", "select"); + session.setAttribute("userForm", userForm); + model.addAttribute("mode", "regist"); model.addAttribute("courseList", CourseForm.convertFrom(courseService.findAll())); model.addAttribute("courseInfoList", CourseInfoForm.convertFrom(courseInfoService.findAll())); + return "select_course"; @@ -65,7 +68,7 @@ public class CourseController { } @SessionCheck - @PostMapping("/select/change") + @GetMapping("/select/change") public String showChangeCourse(Model model) { try { diff --git a/src/main/java/com/example/demo/app/presentation/controller/UserController.java b/src/main/java/com/example/demo/app/presentation/controller/UserController.java index 4b4d4ce..84f2f0c 100644 --- a/src/main/java/com/example/demo/app/presentation/controller/UserController.java +++ b/src/main/java/com/example/demo/app/presentation/controller/UserController.java @@ -7,7 +7,9 @@ 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 com.example.demo.app.domain.service.CourseService; import com.example.demo.app.presentation.form.UserForm; import lombok.RequiredArgsConstructor; @@ -17,15 +19,33 @@ import lombok.RequiredArgsConstructor; @RequiredArgsConstructor public class UserController { + private final CourseService courseService; + @GetMapping("/user/register") public String showRegister(Model model, HttpSession session) { + UserForm userForm = new UserForm(); + + model.addAttribute("userForm", userForm); + return "user_register"; + } + + @PostMapping("/user/register/return") + public String showRegisterReturn(@RequestParam(required = false) Long courseId, Model model, HttpSession session) { + UserForm userForm = (UserForm) session.getAttribute("userForm"); if(userForm == null) { userForm = new UserForm(); + userForm.setCourseId(courseId); } + if(courseId != null) { + model.addAttribute("selectedCourseName", courseService.findById(courseId).getCourseName()); + } + + model.addAttribute("courseId", courseId); model.addAttribute("userForm", userForm); + return "user_register"; } diff --git a/src/main/resources/templates/select_course.html b/src/main/resources/templates/select_course.html index 7083240..0c937e1 100644 --- a/src/main/resources/templates/select_course.html +++ b/src/main/resources/templates/select_course.html @@ -9,42 +9,34 @@

コース選択

-
- - - - - - - - - - - -
-
-

- - -

-
-
- - - - - - - - - -
カテゴリ名配分(%)
-
-
-
-
+ + + + +
+
+

+ + +

+
+
+ + + + + + + + + +
カテゴリ名配分(%)
+
+
+
+