diff --git a/src/main/java/org/sopt/kareer/domain/member/dto/response/MemberStatusResponse.java b/src/main/java/org/sopt/kareer/domain/member/dto/response/MemberStatusResponse.java index 088cf0d..c36719d 100644 --- a/src/main/java/org/sopt/kareer/domain/member/dto/response/MemberStatusResponse.java +++ b/src/main/java/org/sopt/kareer/domain/member/dto/response/MemberStatusResponse.java @@ -23,15 +23,20 @@ public record MemberStatusResponse( LocalDate graduationDate, @Schema(description = "온보딩 여부", example = "true") - boolean onboardingRequired + boolean onboardingRequired, + + @Schema(description = "약관 동의 여부", example = "true") + boolean agreedTerm + ) { - public static MemberStatusResponse from(Member member, MemberVisa visa, boolean onboardingRequired) { + public static MemberStatusResponse from(Member member, MemberVisa visa, boolean onboardingRequired, boolean agreedTerm) { return MemberStatusResponse.builder() .visaType(visa.getVisaType()) .visaExpiredAt(visa.getVisaExpiredAt()) .graduationDate(member.getGraduationDate()) .expectedGraduationDate(member.getExpectedGraduationDate()) .onboardingRequired(onboardingRequired) + .agreedTerm(agreedTerm) .build(); } } diff --git a/src/main/java/org/sopt/kareer/domain/member/repository/MemberTermRepository.java b/src/main/java/org/sopt/kareer/domain/member/repository/MemberTermRepository.java index 4598f07..04a9a84 100644 --- a/src/main/java/org/sopt/kareer/domain/member/repository/MemberTermRepository.java +++ b/src/main/java/org/sopt/kareer/domain/member/repository/MemberTermRepository.java @@ -7,5 +7,7 @@ public interface MemberTermRepository extends JpaRepository { boolean existsByMemberId(Long memberId); + boolean existsByMemberIdAndAgreedTrue(Long memberId); + void deleteAllByMemberId(Long memberId); } diff --git a/src/main/java/org/sopt/kareer/domain/member/service/MemberService.java b/src/main/java/org/sopt/kareer/domain/member/service/MemberService.java index 2bcfd4c..8672676 100644 --- a/src/main/java/org/sopt/kareer/domain/member/service/MemberService.java +++ b/src/main/java/org/sopt/kareer/domain/member/service/MemberService.java @@ -178,8 +178,9 @@ public MemberStatusResponse getMemberStatus(Long memberId) { .orElseThrow(() -> new MemberException(MemberErrorCode.VISA_NOT_FOUND)); boolean onboardingRequired = member.getStatus().equals(MemberStatus.PENDING); + boolean agreedTerm = memberTermRepository.existsByMemberIdAndAgreedTrue(memberId); - return MemberStatusResponse.from(member, memberVisa, onboardingRequired); + return MemberStatusResponse.from(member, memberVisa, onboardingRequired, agreedTerm); } public MypageResponse getMypage(Long memberId) {