[BE] 핀 수정 시 수정 이력 저장
yoondgu opened this issue · comments
Doyoung Yoo commented
📄 작업 대상
누구나 핀을 수정할 수 있는 도메인 특성 상, 수정 이력을 관리할 필요가 있습니다. (언제 누가 핀을 수정했는지 확인)
핀이 수정될때마다 핀 id, 회원 id, 수정 일시를 저장합니다.
핀 수정이라는 핵심 기능에 대한 부가 기능이기 때문에 이벤트를 도입하여 기존 코드 수정 없이 기능을 추가합니다.
✅ 작업 내용
- 핀 수정 이력 (PinHistory) 엔티티, 핀 수정 이력 서비스(PinHistoryCommandService) 정의
- PinCommandService의 Update 로직에 수정 이력 이벤트 발행 추가
- Pin 처음 생성 시에도 이력을 저장하기
-
Topic, Pin 삭제 시, Member 차단 시 Soft delete 되도록 구현 - 테스트 코드 작성
📎 참고 자료
- [테코블]스프링 이벤트 적용기
- [Spring] 스프링에서 이벤트의 발행과 구독 방법과 주의사항, 이벤트 사용의 장/단점과 사용 예시
- [Spring] 스프링 이벤트를 사용하여 도메인 의존성 분리하기
⏰ 추정 시간
비관적 추정: 3시간
낙관적 추정: 1시간