From 31a6ce44a4d8f5fa1b8788035caaee3e748a01f4 Mon Sep 17 00:00:00 2001 From: kkazuya Date: Fri, 18 Sep 2026 16:04:53 +0900 Subject: [PATCH] =?UTF-8?q?[EDIT]=20=E3=82=B3=E3=83=BC=E3=82=B9=E9=81=B8?= =?UTF-8?q?=E6=8A=9E=E6=A9=9F=E8=83=BD=E3=82=92=E4=BF=AE=E6=AD=A3=E3=81=97?= =?UTF-8?q?=E3=81=BE=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/domain/service/CourseService.java | 2 + .../service/impl/CourseServiceImpl.java | 4 ++ .../infra/repository/CourseRepository.java | 5 ++ .../controller/CourseController.java | 17 +++-- .../controller/UserController.java | 20 ++++++ .../resources/templates/select_course.html | 64 ++++++++----------- 6 files changed, 69 insertions(+), 43 deletions(-) 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 7602769..7ab3af5 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,24 +7,24 @@ 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.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 { @@ -39,14 +39,17 @@ public class CourseController { - @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"; @@ -63,7 +66,7 @@ public class CourseController { } } - @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 cfcaa0d..f64a9a3 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; @@ -16,15 +18,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 @@

コース選択

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

- - -

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

+ + +

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