Skip to content

#409 [Feat] 어드민 공지사항 수정/삭제 API 추가 - #410

Merged
si-zero merged 7 commits into
devfrom
feat/#409
Aug 26, 2026
Merged

#409 [Feat] 어드민 공지사항 수정/삭제 API 추가#410
si-zero merged 7 commits into
devfrom
feat/#409

Conversation

@si-zero

@si-zero si-zero commented Aug 26, 2026

Copy link
Copy Markdown
Member

#️⃣ 연관된 이슈

📝 작업 내용

✨ Feat

내용 파일
알림 제목/본문 수정 도메인 메서드 추가 Notification.java
알림 soft delete를 위한 deletedAt 필드 및 delete() 도메인 메서드 추가 Notification.java
공지 수정 요청 DTO 추가 AdminNoticeUpdateRequest.java
삭제된 알림을 제외하도록 조회 쿼리 전체 수정 (findByIdAndDeletedAtIsNull 추가) NotificationRepository.java
공지 수정/삭제 서비스 로직 추가 (삭제는 soft delete) AdminNotificationService.java
유저 알림함 상세/읽음 조회도 삭제된 알림 제외하도록 수정 NotificationService.java
공지 수정/삭제 API 엔드포인트 추가 AdminNotificationController.java

📚 Docs

내용 파일
공지사항 수정/삭제 API 명세 추가 docs/api-specs/notification-api.md

📌 공유 사항

  1. PUT /api/v1/admin/notices/{noticeId}은 제목/본문만 수정하며, category/detailCode는 등록 시점에 고정되어 수정 대상이 아닙니다.
  2. 공지는 등록 즉시 발송되는 구조라, 수정해도 재발송되지 않고 알림함에 남아있는 텍스트만 갱신됩니다.
  3. DELETE는 하드 삭제가 아니라 deleted_at을 기록하는 soft delete입니다. 목록/상세/읽음 처리 등 알림 관련 조회 쿼리 전체에 deletedAt IS NULL 조건을 추가해 삭제된 알림이 유저 알림함/어드민 화면에 다시 노출되지 않게 했습니다.
  4. 운영 DB 반영 필요: 이 프로젝트는 Flyway를 안 쓰고 ddl-auto: update만 적용되어 있어 로컬/개발 환경은 자동으로 컬럼이 생기지만, 운영 DB는 배포 후 notifications 테이블에 deleted_at 컬럼을 수동으로 추가해야 합니다. (ALTER TABLE notifications ADD COLUMN deleted_at DATETIME NULL;)

✅ 체크리스트

  • Reviewer에 팀원들을 선택했나요?
  • Assignees에 본인을 선택했나요?
  • 컨벤션에 맞는 Type을 선택했나요?
  • Development에 이슈를 연동했나요?
  • Merge 하려는 브랜치가 올바르게 설정되어 있나요?
  • 컨벤션을 지키고 있나요?
  • 로컬에서 실행했을 때 에러가 발생하지 않나요?
  • 팀원들에게 PR 링크 공유를 했나요?

📸 스크린샷

./gradlew test 전체 통과. AdminNotificationServiceTest/NotificationServiceTest soft delete 반영해 갱신.

💬 리뷰 요구사항

  1. 운영 DB 컬럼 추가를 배포 전/후 언제 수동으로 실행할지 일정 맞춰주시면 감사하겠습니다.

@si-zero si-zero self-assigned this Aug 26, 2026
@si-zero si-zero added the ✨ Feat (기능 추가) 새로운 기능을 추가할 때 사용합니다. label Aug 26, 2026
@si-zero si-zero linked an issue Aug 26, 2026 that may be closed by this pull request
4 tasks
@si-zero
si-zero merged commit 869de77 into dev Aug 26, 2026
1 check passed
@si-zero
si-zero deleted the feat/#409 branch August 26, 2026 07:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

✨ Feat (기능 추가) 새로운 기능을 추가할 때 사용합니다.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ Feat: 어드민 공지사항 수정/삭제 API 추가

1 participant