Skip to content

Commit 333206f

Browse files
committed
✨ feat: 닉네임 중복 확인 기능
1 parent 1cb31a9 commit 333206f

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

backend/src/main/java/io/f1/backend/domain/user/api/SignupController.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@
1010

1111
import org.springframework.http.HttpStatus;
1212
import org.springframework.http.ResponseEntity;
13+
import org.springframework.web.bind.annotation.GetMapping;
1314
import org.springframework.web.bind.annotation.PostMapping;
1415
import org.springframework.web.bind.annotation.RequestBody;
16+
import org.springframework.web.bind.annotation.RequestParam;
1517
import org.springframework.web.bind.annotation.RestController;
1618

1719
@RestController
@@ -26,4 +28,10 @@ public ResponseEntity<CurrentUserAndAdminResponse> completeSignup(
2628
CurrentUserAndAdminResponse response = userService.signup(httpSession, signupRequest);
2729
return ResponseEntity.status(HttpStatus.CREATED).body(response);
2830
}
31+
32+
@GetMapping("/check-nickname")
33+
public ResponseEntity<Void> checkNicknameDuplicate(@RequestParam String nickname) {
34+
userService.checkNickname(nickname);
35+
return ResponseEntity.ok().build();
36+
}
2937
}

backend/src/main/java/io/f1/backend/domain/user/app/UserService.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,7 @@ public class UserService {
3131
public CurrentUserAndAdminResponse signup(HttpSession session, SignupRequest signupRequest) {
3232
AuthenticationUser authenticationUser = extractSessionUser(session);
3333

34-
String nickname = signupRequest.nickname();
35-
validateNicknameFormat(nickname);
36-
validateNicknameDuplicate(nickname);
37-
38-
User user = initNickname(authenticationUser.userId(), nickname);
34+
User user = initNickname(authenticationUser.userId(), signupRequest.nickname());
3935
updateSessionAfterSignup(session, user);
4036

4137
SecurityUtils.setAuthentication(user);
@@ -99,11 +95,14 @@ public void deleteUser(Long userId) {
9995

10096
@Transactional
10197
public void updateNickname(Long userId, String newNickname, HttpSession session) {
102-
validateNicknameFormat(newNickname);
103-
validateNicknameDuplicate(newNickname);
104-
10598
User user = initNickname(userId, newNickname);
10699
session.setAttribute(USER, AuthenticationUser.from(user));
107100
SecurityUtils.setAuthentication(user);
108101
}
102+
103+
@Transactional(readOnly = true)
104+
public void checkNickname(String nickname) {
105+
validateNicknameFormat(nickname);
106+
validateNicknameDuplicate(nickname);
107+
}
109108
}

0 commit comments

Comments
 (0)