[HOTFIX] 質問の読み込み、コース名のセッション変数登録、DB登録機能追加など。
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package com.example.demo.app.presentation.controller;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import jakarta.servlet.http.HttpSession;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
@@ -10,21 +12,32 @@ 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.domain.service.QuestionService;
|
||||
import com.example.demo.app.domain.service.UserService;
|
||||
import com.example.demo.app.infra.entity.QuestionEntity;
|
||||
import com.example.demo.app.presentation.form.UserForm;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
|
||||
@Controller
|
||||
@RequiredArgsConstructor
|
||||
public class UserController {
|
||||
|
||||
private final UserService userService;
|
||||
|
||||
private final CourseService courseService;
|
||||
|
||||
private final QuestionService questionService;
|
||||
|
||||
|
||||
@GetMapping("/user/register")
|
||||
public String showRegister(Model model, HttpSession session) {
|
||||
UserForm userForm = new UserForm();
|
||||
|
||||
List<QuestionEntity> questionList = questionService.findAll();
|
||||
|
||||
session.setAttribute("questionList", questionList);
|
||||
|
||||
model.addAttribute("userForm", userForm);
|
||||
return "user_register";
|
||||
}
|
||||
@@ -33,8 +46,10 @@ public class UserController {
|
||||
public String showRegisterReturn(@RequestParam(required = false) Long courseId, Model model, HttpSession session) {
|
||||
|
||||
UserForm userForm = (UserForm) session.getAttribute("userForm");
|
||||
System.out.println(
|
||||
"######################################################################3" + userForm.getBirthDate());
|
||||
|
||||
if(userForm == null) {
|
||||
if (userForm.getUserName().equals("")) {
|
||||
userForm = new UserForm();
|
||||
userForm.setCourseId(courseId);
|
||||
}
|
||||
@@ -43,31 +58,34 @@ public class UserController {
|
||||
model.addAttribute("selectedCourseName", courseService.findById(courseId).getCourseName());
|
||||
}
|
||||
|
||||
session.setAttribute("selectedCourseName", courseService.findById(courseId).getCourseName());
|
||||
model.addAttribute("courseId", courseId);
|
||||
System.out.println(
|
||||
"######################################################################3" + userForm.getBirthDate());
|
||||
model.addAttribute("userForm", userForm);
|
||||
|
||||
return "user_register";
|
||||
return "user_register_return";
|
||||
}
|
||||
|
||||
@PostMapping("/user/register/confirm")
|
||||
public String confirmRegister(
|
||||
@ModelAttribute UserForm userForm,
|
||||
@GetMapping("/user/register/confirm")
|
||||
public String confirmRegisterGet(@ModelAttribute UserForm userForm,
|
||||
String selectedCourseName, Model model,
|
||||
HttpSession session) {
|
||||
|
||||
session.setAttribute("userForm", userForm);
|
||||
|
||||
model.addAttribute("selectedCourseName", (String) session.getAttribute("selectedCourseName"));
|
||||
return "user_register_confirm";
|
||||
|
||||
}
|
||||
|
||||
@PostMapping("/user/register/complete")
|
||||
public String completeRegister(HttpSession session) {
|
||||
public String confirmRegister(
|
||||
@ModelAttribute UserForm userForm,
|
||||
Model model,
|
||||
HttpSession session) {
|
||||
|
||||
UserForm userForm =
|
||||
(UserForm) session.getAttribute("userForm");
|
||||
Long courseId = courseService.findByName((String) session.getAttribute("selectedCourseName"));
|
||||
|
||||
// DBへの登録処理
|
||||
|
||||
session.removeAttribute("userForm");
|
||||
userService.register(userForm, courseId);
|
||||
|
||||
return "redirect:/login";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user