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

Feat/#663 notification api 추가 #677

Merged
merged 22 commits into from
Oct 5, 2023

Conversation

java-saeng
Copy link
Collaborator

@java-saeng java-saeng commented Oct 1, 2023

#️⃣연관된 이슈

📝작업 내용

기존 UpdateNotification에 있던 API들을 Notification에 새로 만들었습니다.

알림 읽기, 알림 삭제 API 가 UpdateNotification에 있었는데,
Notification으로 변경되어서 해당 API 가 필요해졌습니다.

이전 이슈에서는 JsonData에 모든 값들을 저장했는데,
알림에서 공통적으로 필요한 redirectId, receiverId, createdAt은 JsonData에서 뺐습니다.

공통적으로 필요한 칼럼은 부모 NotificationEvent로 만들고,
특정한 알림에 필요한 데이터는 자식 클래스에 만들었습니다.

JsonData는 자식 클래스에 있는 값만을 저장하기 때문에 NotificationEvent에 있는 값들은 JsonIgnore 해주었습니다.

image

예상 소요 시간 및 실제 소요 시간

예상 : 10/2
실제 : 10/1

@java-saeng java-saeng added Backend 백엔드 관련 이슈 기능 추가 새로운 기능 추가 및 기존 기능 변경 labels Oct 1, 2023
@java-saeng java-saeng added this to the 5차 스프린트 milestone Oct 1, 2023
@java-saeng java-saeng self-assigned this Oct 1, 2023
Copy link
Collaborator

@amaran-th amaran-th left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다~!!
주석을 적절히 달아주셔서 코드를 이해하기 쉬웠던 것 같아요!
제가 보기엔 크게 수정할만한 점은 없는 것 같아서 approve 하겠습니다!

//given
//member1 -> 안드로이드, member2 -> 안드로이드 백엔드, member3 -> 프론트엔드
//안드로이드, 백엔드 태그를 가진 Event 추가
//member1, member2만 알림이 감
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

테스트를 굉장히 꼼꼼하게 짜주셨네요👍👍

Copy link
Collaborator

@hyeonjerry hyeonjerry left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다~!
연휴로 인해 리뷰가 늦어져서 죄송합니다,,
오랜만에 하는 만큼 꼼꼼히 봤는데 크게 수정할 점은 보이지 않네요!!

private final NotificationCommandService notificationCommandService;

@GetMapping("/notifications")
public List<NotificationAllResponse> find(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이건 제 개인적인 느낌인데 DTO명이 AllResponse라 List로 Response들을 갖고 있을 것 같은 느낌을 받았어요. 혹시 DetailResponse는 어떠신가요?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

그럴 수 있겠네요,, 수정했습니다

Copy link
Collaborator

@hong-sile hong-sile left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

전반적으로 잘 짜주신 것 같네요. 추석 전에 이야기했던 부분을 반영해준 것도 좋았고요.

그, 추가하셔야 될 부분 하나 있어서, 그것만 변경해주시면 될 것 같아요.

크게 무거운 부분도 아니니, 미리 approve는 누르겠습니다.


@RequiredArgsConstructor
@Getter
public abstract class NotificationEvent {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

제가 저번에 드린 의견을 잘 반영해주셨군요!

import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@transactional(readOnly=true)가 빠진 것 같아요.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

와;;; 감사합니다


final Notification notification = notificationRepository.save(
new Notification(NotificationType.COMMENT, jsonData)
new Notification(
NotificationType.valueOf(notificationEvent.getNotificationType()),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오 저는 저번에 Enum 자체를 Event 가 갖게했는데, 여기서 변환하는게 더 낫네요.

의존하는 곳이 잘 줄어든 것 같아요.

@java-saeng java-saeng merged commit 325bcb3 into backend-main Oct 5, 2023
1 check passed
@chws0508 chws0508 deleted the Refactor/#663-notification_api_추가 branch October 11, 2023 06:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backend 백엔드 관련 이슈 기능 추가 새로운 기능 추가 및 기존 기능 변경
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants