Skip to content
This repository was archived by the owner on Jan 11, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ public enum ErrorStatus implements BaseErrorCode {
_UNABLE_TO_SEND_VERIFICATION_CODE(HttpStatus.BAD_REQUEST, "AA4017", "인증 코드를 전송할 수 없습니다."),
_UNABLE_TO_SEND_EMAIL(HttpStatus.BAD_REQUEST, "AA4018", "이메일을 전송할 수 없습니다."),
_UNABLE_TO_LOAD_MAIL_FORM(HttpStatus.INTERNAL_SERVER_ERROR, "AA4019", "이메일 인증 폼을 불러올 수 없습니다."),
_MEMBER_LOGIN_ID_ALREADY_EXISTS(HttpStatus.BAD_REQUEST, "AA4020", "해당 로그인 아이디로 가입한 회원이 이미 존재합니다."),

//스터디 관련 에러
_STUDY_NOT_FOUND(HttpStatus.NOT_FOUND, "STUDY4001", "스터디를 찾을 수 없습니다."),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public interface AuthService {
// 리프레시 토큰을 사용하여 새로운 액세스 토큰을 발급
TokenDTO reissueToken(String refreshToken);

MemberResponseDTO.MemberUpdateDTO signUpAndPartialUpdate(String nickname, Boolean personalInfo, Boolean idInfo);
MemberResponseDTO.MemberInfoCreationDTO signUpAndPartialUpdate(String nickname, Boolean personalInfo, Boolean idInfo);

void authorizeWithNaver(HttpServletRequest request, HttpServletResponse response);

Expand Down
11 changes: 5 additions & 6 deletions src/main/java/com/example/spot/service/auth/AuthServiceImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
import java.util.stream.Collectors;
import java.util.stream.IntStream;

import com.fasterxml.jackson.core.JsonProcessingException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
Expand Down Expand Up @@ -113,7 +112,7 @@ public TokenDTO reissueToken(String refreshToken) {
/* ----------------------------- 공통 회원 관리 API ------------------------------------- */

@Override
public MemberResponseDTO.MemberUpdateDTO signUpAndPartialUpdate(String nickname, Boolean personalInfo, Boolean idInfo) {
public MemberResponseDTO.MemberInfoCreationDTO signUpAndPartialUpdate(String nickname, Boolean personalInfo, Boolean idInfo) {

// Authorization
Long memberId = SecurityUtils.getCurrentUserId();
Expand All @@ -124,10 +123,7 @@ public MemberResponseDTO.MemberUpdateDTO signUpAndPartialUpdate(String nickname,
member.updateTerm(personalInfo, idInfo);
member = memberRepository.save(member);

return MemberResponseDTO.MemberUpdateDTO.builder()
.memberId(memberId)
.updatedAt(member.getUpdatedAt())
.build();
return MemberResponseDTO.MemberInfoCreationDTO.toDTO(member);
}

/* ----------------------------- 네이버 소셜로그인 API ------------------------------------- */
Expand Down Expand Up @@ -365,6 +361,9 @@ public MemberResponseDTO.MemberSignInDTO signUp(MemberRequestDTO.SignUpDTO signU
if (memberRepository.existsByEmail(signUpDTO.getEmail())) {
throw new MemberHandler(ErrorStatus._MEMBER_EMAIL_ALREADY_EXISTS);
}
if (memberRepository.existsByLoginId(signUpDTO.getLoginId())) {
throw new MemberHandler(ErrorStatus._MEMBER_LOGIN_ID_ALREADY_EXISTS);
}
if (!signUpDTO.getPassword().equals(signUpDTO.getPwCheck())) {
throw new MemberHandler(ErrorStatus._MEMBER_PW_AND_PW_CHECK_DO_NOT_MATCH);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,13 +54,13 @@ public ApiResponse<TokenDTO> reissueToken(HttpServletRequest request,
* Request Params : String nickname, Boolean personalInfo, Boolean idInfo
* Response Body : Long memberId, LocalDateTime updatedAt
""")
@GetMapping("/sign-up/update")
public ApiResponse<MemberResponseDTO.MemberUpdateDTO> signUpAndPartialUpdate(
@PostMapping("/sign-up/update")
public ApiResponse<MemberResponseDTO.MemberInfoCreationDTO> signUpAndPartialUpdate(
@RequestParam @TextLength(max = 8) String nickname,
@RequestParam Boolean personalInfo,
@RequestParam Boolean idInfo) {
MemberResponseDTO.MemberUpdateDTO memberUpdateDTO = authService.signUpAndPartialUpdate(nickname, personalInfo, idInfo);
return ApiResponse.onSuccess(SuccessStatus._MEMBER_UPDATED, memberUpdateDTO);
MemberResponseDTO.MemberInfoCreationDTO memberInfoCreationDTO = authService.signUpAndPartialUpdate(nickname, personalInfo, idInfo);
return ApiResponse.onSuccess(SuccessStatus._MEMBER_UPDATED, memberInfoCreationDTO);
}

/* ----------------------------- 네이버 소셜로그인 API ------------------------------------- */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,25 @@
@Getter
public class MemberResponseDTO {

@Getter
@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
@Builder(access = AccessLevel.PRIVATE)
public static class MemberInfoCreationDTO {
private final String name;
private final String email;
private final Boolean idInfo;
private final Boolean personalInfo;

public static MemberInfoCreationDTO toDTO(Member member) {
return MemberInfoCreationDTO.builder()
.name(member.getName())
.email(member.getEmail())
.idInfo(member.getIdInfo())
.personalInfo(member.getPersonalInfo())
.build();
}
}

@Getter
@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
@Builder(access = AccessLevel.PRIVATE)
Expand Down
Loading