DB에 EmailVerfied column값이 변경되지 않아서 해당 로직을 추가시켜 주었다.
@GetMapping("/check-email-token")
public String checkEmailToken(String token, String email, Model model) {
Account account = accountService.findMembersByEmail(email);
//accountRepository.findByEmail(email);
String view = "account/checked-email";
if (account == null){
model.addAttribute("error","wrong email");
return view;
}
if(!account.isValidToken(token)){
model.addAttribute("error","wrong email");
return view;
}
File file;
ZipEntry entry = null;
accountService.completeSignUp(account); // <- 이곳
model.addAttribute("numberOfUser", accountService.count()); // n번째 가입임을 알려주기 위함
model.addAttribute("nickname", account.getNickname());
return view;
}
public void completeSignUp(Account account) {
account.completeSignup();
accountRepository.completeSignup(account);
login(account);
}
public void completeSignup(Account account) {
Long userId = account.getId();
if(1 == accountMapper.completeSignup(userId)){
System.out.println("done");
}
else{
System.out.println("not done");
}
}
@UpdateProvider(type = AccountSQL.class, method = "completeSignup")
int completeSignup(@Param("userid") Long userid);
public String completeSignup(@Param("userid") Long userid) {
return new SQL() {{
UPDATE("account");
SET("emailVerified=1")
SET("joinedAt=NOW()")
WHERE("id=#{userid}")
}}.toString();
}
'프로젝트 정리 > 경조사 가계부 프로젝트' 카테고리의 다른 글
12. Spring Security remember-me (0) | 2022.06.08 |
---|---|
9. 회원가입 토큰 인증 (0) | 2022.05.28 |
8. 회원가입 이메일 토큰 누락 에러 해결 (0) | 2022.05.25 |
7. SpringSecurity persistent_login 에러 (0) | 2022.05.23 |
#6 회원가입 로직 구현시 에러 해결 (0) | 2022.05.09 |