Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

로그인 기능 리팩토링 #108

Merged
merged 8 commits into from
Jan 20, 2024
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import static kr.co.fastcampus.yanabada.domain.member.entity.ProviderType.EMAIL;
import static kr.co.fastcampus.yanabada.domain.member.entity.RoleType.ROLE_USER;

import java.util.Random;
import kr.co.fastcampus.yanabada.common.exception.EmailDuplicatedException;
import kr.co.fastcampus.yanabada.common.jwt.dto.TokenIssueResponse;
import kr.co.fastcampus.yanabada.common.jwt.dto.TokenRefreshResponse;
Expand Down Expand Up @@ -43,14 +44,16 @@ public Long signUp(SignUpRequest signUpRequest) {
}

String encodedPassword = passwordEncoder.encode(signUpRequest.password());

Member member = Member.builder()
.email(signUpRequest.email())
.nickName(signUpRequest.nickName())
.password(encodedPassword)
.phoneNumber(signUpRequest.phoneNumber())
.roleType(ROLE_USER)
.providerType(EMAIL)
.build();
.email(signUpRequest.email())
.nickName(signUpRequest.nickName())
.password(encodedPassword)
.phoneNumber(signUpRequest.phoneNumber())
.roleType(ROLE_USER)
.image(getRandomProfileImage())
.providerType(EMAIL)
.build();

Member savedMember = memberRepository.save(member);
return savedMember.getId();
Expand All @@ -67,13 +70,20 @@ public Long oauthSignUp(OauthSignUpRequest signUpRequest) {
.password(encodedPassword)
.phoneNumber(signUpRequest.phoneNumber())
.roleType(ROLE_USER)
.image(getRandomProfileImage())
.providerType(signUpRequest.provider())
.build();

Member savedMember = memberRepository.save(member);
return savedMember.getId();
}

private String getRandomProfileImage() {
Random random = new Random();
int randomNumber = random.nextInt(5) + 1;
return randomNumber + "profile.png"; //todo: 환경 변수 분리
}

@Transactional
public LoginResponse login(LoginRequest loginRequest) {
UsernamePasswordAuthenticationToken authenticationToken = loginRequest.toAuthentication();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public static SendChatMessage from(
.chatRoomCode(chatRoom.getCode())
.sendId(sender.getId())
.senderNickname(sender.getNickName())
.senderProfileImage(sender.getImageUrl())
.senderProfileImage(sender.getImage())
.content(content)
.sendTime(sendTime)
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ public static ChatMessageInfoResponse from(
) {
return ChatMessageInfoResponse.builder()
.senderId(sender.getId())
.senderImage(sender.getImageUrl())
.senderImage(sender.getImage())
.senderNickname(sender.getNickName())
.content(content)
.sendDateTime(sendDateTime)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ public static ChatRoomSummaryResponse from(
) {
return ChatRoomSummaryResponse.builder()
.chatRoomCode(chatRoomCode)
.partnerImage(partner.getImageUrl())
.partnerImage(partner.getImage())
.partnerNickname(partner.getNickName())
.lastChatMessage(message.getContent())
.lastSentMessageTime(message.getSendDateTime())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import kr.co.fastcampus.yanabada.common.response.ResponseBody;
import kr.co.fastcampus.yanabada.common.security.PrincipalDetails;
import kr.co.fastcampus.yanabada.domain.member.dto.request.FcmTokenUpdateRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.ImgUrlModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.ImageModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.NickNameModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.PasswordModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.PhoneNumberModifyRequest;
Expand Down Expand Up @@ -69,17 +69,6 @@ public ResponseBody<Void> modifyPhoneNumber(
return ResponseBody.ok();
}

@PutMapping("/image")
public ResponseBody<Void> modifyImage(
@AuthenticationPrincipal PrincipalDetails principalDetails,
@RequestBody @Valid ImgUrlModifyRequest imgUrlRequest
) {
memberService.modifyImageUrl(
imgUrlRequest, principalDetails.email(), principalDetails.provider()
);
return ResponseBody.ok();
}

@PutMapping("/fcm-token")
public ResponseBody<Void> updateFcmToken(
@AuthenticationPrincipal PrincipalDetails principalDetails,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import jakarta.validation.constraints.NotEmpty;

public record ImgUrlModifyRequest(
public record ImageModifyRequest(
Programmer-may marked this conversation as resolved.
Show resolved Hide resolved
@NotEmpty(message = "패스워드가 비어있을 수 없습니다")
String imageUrl
String image
) {
}

Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ public record MemberDetailResponse(
String email,
String nickName,
String phoneNumber,
String imageUrl,
String image,
Integer point,
ProviderType provider
) {
Expand All @@ -20,7 +20,7 @@ public static MemberDetailResponse from(Member member) {
.email(member.getEmail())
.nickName(member.getNickName())
.phoneNumber(member.getPhoneNumber())
.imageUrl(member.getImageUrl())
.image(member.getImage())
.point(member.getPoint())
.provider(member.getProviderType())
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
public record MemberSummaryResponse(
Long id,
String nickname,
String imageUrl
String image
) {

public static MemberSummaryResponse from(Member member) {
return MemberSummaryResponse.builder()
.id(member.getId())
.nickname(member.getNickName())
.imageUrl(member.getImageUrl())
.image(member.getImage())
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public class Member extends BaseEntity {
private String nickName;
private String password;
private String phoneNumber;
private String imageUrl;
private String image;
@Builder.Default
private Integer point = 0;
@Enumerated(EnumType.STRING)
Expand All @@ -48,8 +48,8 @@ public void updatePhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}

public void updateImageUrl(String imageUrl) {
this.imageUrl = imageUrl;
public void updateImage(String image) {
Programmer-may marked this conversation as resolved.
Show resolved Hide resolved
this.image = image;
}

public void subtractPoint(int point) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import kr.co.fastcampus.yanabada.domain.auth.dto.response.EmailAuthResponse;
import kr.co.fastcampus.yanabada.domain.auth.service.MailAuthService;
import kr.co.fastcampus.yanabada.domain.member.dto.request.FcmTokenUpdateRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.ImgUrlModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.ImageModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.NickNameDuplCheckRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.NickNameModifyRequest;
import kr.co.fastcampus.yanabada.domain.member.dto.request.PasswordModifyRequest;
Expand Down Expand Up @@ -67,16 +67,6 @@ public void modifyPhoneNumber(
member.updatePhoneNumber(phoneNumberRequest.phoneNumber());
}

@Transactional
public void modifyImageUrl(
ImgUrlModifyRequest imgUrlRequest,
String email,
ProviderType providerType
) {
Member member = memberRepository.getMember(email, providerType);
member.updateImageUrl(imgUrlRequest.imageUrl());
}

@Transactional(readOnly = true)
public EmailAuthResponse verifyEmail(
EmailAuthRequest emailRequest
Expand Down
Loading