Feat: 알림 설정 기능 구현 (#207) #213
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📌 개요
사용자가 마이페이지에서 알림 수신 설정을 관리할 수 있는 기능을 구현했습니다. 5가지 알림 유형(시스템, 스터디룸, 학습, 게시글 댓글, 메시지 댓글)을 개별적으로 ON/OFF 할 수 있으며, 전체 알림을 한 번에 켜거나 끌 수도 있습니다. (모든 기능은 와이어프레임 기준으로 구현했습니다.)
🔨 작업 내용
NotificationSettingService 구현
initializeSettings(): 회원가입 시 기본 설정 자동 생성 (모두 true)getSettings(): 사용자 설정 조회toggleSetting(): 개별 설정 토글toggleAllSettings(): 전체 ON/OFFisNotificationEnabled(): 알림 발송 전 설정 확인용deleteSettings(): 사용자 삭제 시 설정도 함께 삭제NotificationSettingController 구현
GET /api/users/me/notification-settings: 설정 조회PUT /api/users/me/notification-settings/{type}: 개별 토글PUT /api/users/me/notification-settings/all: 전체 ON/OFF에러 코드 추가
NOTIFICATION_SETTING_001: 알림 설정을 찾을 수 없습니다 (404)NOTIFICATION_SETTING_002: 잘못된 알림 설정 타입입니다 (400)🔗 관련 이슈
Closes #207
📝 참고 사항
설계 결정사항
✅ 체크리스트