feat: 메시지 미리보기 API 구현 (#120) #121

Merged
seonkyu.kim merged 1 commits from feature/#120-message-preview into develop 2026-02-10 08:31:21 +00:00
Owner

📋 작업 요약

  • 메시지 미리보기 API (POST /v1/in/message/preview) 구현
  • 저장된 메시지 템플릿에 변수를 치환하여 최종 결과 반환
  • IMessageService 인터페이스 정의 (향후 message CRUD 확장용)

Closes #120

🛠️ 작업 내용 (Changes)

  • SPMS.Application/DTOs/Message/MessagePreviewRequestDto.cs — 미리보기 요청 DTO (message_code, variables)
  • SPMS.Application/DTOs/Message/MessagePreviewResponseDto.cs — 미리보기 응답 DTO (title, body, image_url, link_url)
  • SPMS.Application/Interfaces/IMessageService.cs — 메시지 서비스 인터페이스
  • SPMS.Application/Services/MessageService.cs — 미리보기 로직 구현 (메시지 조회 → 변수 치환)
  • SPMS.Application/DependencyInjection.cs — IMessageService DI 등록 (Scoped)
  • SPMS.API/Controllers/MessageController.cs — preview 엔드포인트 추가

📢 리뷰어 참고 사항 (To Reviewers)

  • message_code로 DB에서 메시지 조회 후 {{변수명}} 패턴을 variables 값으로 치환
  • 존재하지 않는 메시지 코드는 MessageNotFound(151) 에러 반환
  • MessageController에 IMessageService 주입 추가 (기존 IMessageValidationService와 함께)

체크리스트 (Self Checklist)

  • 빌드(Build)가 성공적으로 수행되었는가?
  • 모든 단위 테스트(Unit Test)를 통과하였는가?
  • 불필요한 로그나 주석을 제거하였는가?
  • 컨벤션(Clean Architecture, Naming)을 준수하였는가?
  • 기밀 정보(비밀번호, 키 등)가 하드코딩 되어있지 않은가?

📸 스크린샷 / 테스트 로그 (Screenshots/Logs)

빌드했습니다.
    경고 0개
    오류 0개
## 📋 작업 요약 - 메시지 미리보기 API (`POST /v1/in/message/preview`) 구현 - 저장된 메시지 템플릿에 변수를 치환하여 최종 결과 반환 - IMessageService 인터페이스 정의 (향후 message CRUD 확장용) ## 🔗 관련 이슈 (Related Issues) Closes #120 ## 🛠️ 작업 내용 (Changes) - [x] `SPMS.Application/DTOs/Message/MessagePreviewRequestDto.cs` — 미리보기 요청 DTO (message_code, variables) - [x] `SPMS.Application/DTOs/Message/MessagePreviewResponseDto.cs` — 미리보기 응답 DTO (title, body, image_url, link_url) - [x] `SPMS.Application/Interfaces/IMessageService.cs` — 메시지 서비스 인터페이스 - [x] `SPMS.Application/Services/MessageService.cs` — 미리보기 로직 구현 (메시지 조회 → 변수 치환) - [x] `SPMS.Application/DependencyInjection.cs` — IMessageService DI 등록 (Scoped) - [x] `SPMS.API/Controllers/MessageController.cs` — preview 엔드포인트 추가 ## 📢 리뷰어 참고 사항 (To Reviewers) - message_code로 DB에서 메시지 조회 후 `{{변수명}}` 패턴을 variables 값으로 치환 - 존재하지 않는 메시지 코드는 MessageNotFound(151) 에러 반환 - MessageController에 IMessageService 주입 추가 (기존 IMessageValidationService와 함께) ## ✅ 체크리스트 (Self Checklist) - [x] 빌드(Build)가 성공적으로 수행되었는가? - [x] 모든 단위 테스트(Unit Test)를 통과하였는가? - [x] 불필요한 로그나 주석을 제거하였는가? - [x] 컨벤션(Clean Architecture, Naming)을 준수하였는가? - [x] 기밀 정보(비밀번호, 키 등)가 하드코딩 되어있지 않은가? ## 📸 스크린샷 / 테스트 로그 (Screenshots/Logs) ``` 빌드했습니다. 경고 0개 오류 0개 ```
seonkyu.kim added 1 commit 2026-02-10 08:28:50 +00:00
- POST /v1/in/message/preview 엔드포인트 추가
- MessageService: 메시지 조회 → 변수 치환 → 미리보기 데이터 반환
- IMessageService 인터페이스 정의 (향후 CRUD 확장용)

Closes #120
seonkyu.kim added the
Priority
Medium
Status
In Progress
Type
Feature
labels 2026-02-10 08:29:04 +00:00
seonkyu.kim added this to the Phase 3: 메시지 & Push Core milestone 2026-02-10 08:29:07 +00:00
seonkyu.kim self-assigned this 2026-02-10 08:29:28 +00:00
seonkyu.kim merged commit 975ed77d18 into develop 2026-02-10 08:31:21 +00:00
seonkyu.kim deleted branch feature/#120-message-preview 2026-02-10 08:31:49 +00:00
seonkyu.kim added
Status
Done
and removed
Status
In Progress
labels 2026-02-10 08:32:04 +00:00
Sign in to join this conversation.
No description provided.