Skip to content

Commit

Permalink
refactor: #18 Member Domain 푸시 알림 로직 제거
Browse files Browse the repository at this point in the history
기존 Member Domain에 존재하던 푸시 알림 로직을 제거하였다.
  • Loading branch information
edgar6bf committed Jan 10, 2024
1 parent f659043 commit 9d679f9
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 52 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -70,18 +70,4 @@ public ResponseEntity<SingleSuccessApiResponse<CheckMemberNicknameDuplicatedResp

return ResponseUtil.successApiResponse(OK, "사용자 닉네임 중복 검증 결과 입니다.", response);
}

@PutMapping("/enable-notification")
public ResponseEntity<SuccessApiResponse> enableNotification(@AuthenticationPrincipal CustomUserPrincipal userPrincipal) {
memberService.enableNotification(userPrincipal.getMemberId());

return ResponseUtil.successApiResponse(OK, "푸시 알림이 활성화 되었습니다.");
}

@PutMapping("/disable-notification")
public ResponseEntity<SuccessApiResponse> disableNotification(@AuthenticationPrincipal CustomUserPrincipal userPrincipal) {
memberService.disableNotification(userPrincipal.getMemberId());

return ResponseUtil.successApiResponse(OK, "푸시 알림이 비 활성화 되었습니다.");
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public record MemberDto(
LoginProvider loginProvider,
boolean enableNotification
) {
public static MemberDto of(Member member) {
public static MemberDto of(Member member, boolean enableNotification) {
return new MemberDto(
member.getId(),
member.getPersonalId(),
Expand All @@ -24,7 +24,7 @@ public static MemberDto of(Member member) {
member.getAccountStatus(),
member.getAccountRole(),
member.getLoginProvider(),
member.isEnableNotification()
enableNotification
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
public record UpdateMemberProfileRequest(
String nickname,
String profileImageUrl,
boolean enableNotification,
boolean checkTerms
) {
}
19 changes: 0 additions & 19 deletions src/main/java/site/packit/packit/domain/member/entity/Member.java
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,6 @@ public class Member extends BaseTimeEntity {
@Column(length = 50, nullable = false, updatable = false)
private LoginProvider loginProvider;

@Column(nullable = false)
private boolean enableNotification;

@Column(nullable = false)
private boolean checkTerms;

Expand All @@ -71,7 +68,6 @@ private Member(
this.accountRole = accountRole;
this.loginProvider = loginProvider;
this.checkTerms = false;
this.enableNotification = false;
}

public static Member createTempUser(String personalId, LoginProvider loginProvider) {
Expand All @@ -88,17 +84,10 @@ public static Member createTempUser(String personalId, LoginProvider loginProvid
public void register(
String nickname,
String profileImageUrl,
boolean enableNotification,
boolean checkTerms
) {
updateMemberProfile(nickname, profileImageUrl);

if ((enableNotification)) {
enableNotification();
} else {
disableNotification();
}

this.checkTerms = checkTerms;
this.accountStatus = ACTIVE;
}
Expand All @@ -108,14 +97,6 @@ public void updateMemberProfile(String nickname, String profileImageUrl) {
this.profileImageUrl = profileImageUrl;
}

public void enableNotification() {
this.enableNotification = true;
}

public void disableNotification() {
this.enableNotification = false;
}

public Collection<GrantedAuthority> getGrantedAuthorities() {
return List.of(new SimpleGrantedAuthority(accountRole.toString()));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
import site.packit.packit.domain.member.dto.MemberDto;
import site.packit.packit.domain.member.dto.request.UpdateMemberProfileRequest;
import site.packit.packit.domain.member.entity.Member;
import site.packit.packit.domain.member.exception.MemberErrorCode;
import site.packit.packit.domain.member.exception.MemberException;
import site.packit.packit.domain.member.repository.MemberRepository;
import site.packit.packit.domain.notification.service.PushNotificationService;

import static site.packit.packit.domain.member.constant.AccountStatus.WAITING_TO_JOIN;
import static site.packit.packit.domain.member.exception.MemberErrorCode.MEMBER_NOT_FOUND;
Expand All @@ -18,9 +18,11 @@
@Service
public class MemberService {

private final PushNotificationService pushNotificationService;
private final MemberRepository memberRepository;

public MemberService(MemberRepository memberRepository) {
public MemberService(PushNotificationService pushNotificationService, MemberRepository memberRepository) {
this.pushNotificationService = pushNotificationService;
this.memberRepository = memberRepository;
}

Expand All @@ -36,7 +38,7 @@ private Member createTempMember(String personalId, LoginProvider loginProvider)

public Long register(Long memberId, UpdateMemberProfileRequest request) {
Member tempMember = getTempMember(memberId);
tempMember.register(request.nickname(), request.profileImageUrl(), request.enableNotification(), request.checkTerms());
tempMember.register(request.nickname(), request.profileImageUrl(), request.checkTerms());

return tempMember.getId();
}
Expand All @@ -56,8 +58,9 @@ public Member getMember(String personalId) {
public MemberDto getMember(Long memberId) {
Member member = memberRepository.findById(memberId)
.orElseThrow(() -> new MemberException(MEMBER_NOT_FOUND));
boolean isPushNotificationSubscriber = pushNotificationService.isPushNotificationSubscriber(member);

return MemberDto.of(member);
return MemberDto.of(member, isPushNotificationSubscriber);
}

public void updateMemberProfile(Long memberId, UpdateMemberProfileRequest request) {
Expand All @@ -76,16 +79,4 @@ public void deleteMember(Long memberId) {
public boolean checkMemberNicknameDuplicated(String memberNickname) {
return memberRepository.existsByNickname(memberNickname);
}

public void enableNotification(Long memberId) {
Member member = memberRepository.findById(memberId)
.orElseThrow(() -> new MemberException(MEMBER_NOT_FOUND));
member.enableNotification();
}

public void disableNotification(Long memberId) {
Member member = memberRepository.findById(memberId)
.orElseThrow(() -> new MemberException(MEMBER_NOT_FOUND));
member.disableNotification();
}
}

0 comments on commit 9d679f9

Please sign in to comment.