mirror of
https://github.com/ktds-dg0501/kt-event-marketing.git
synced 2025-12-06 20:46:24 +00:00
- DTO 필드명 통일 (프론트엔드 호환) - totalParticipants → participants - channelName → channel - totalInvestment → totalCost - 증감 데이터 필드 추가 - participantsDelta: 참여자 증감 (현재 0, TODO) - targetRoi: 목표 ROI (EventStats에서 가져옴) - EventStats 엔티티 스키마 변경 - targetRoi 컬럼 추가 (BigDecimal, default: 0) - Service 로직 수정 - AnalyticsService: 필드명 변경 및 증감 데이터 적용 - ROICalculator: totalCost 필드명 변경 - UserAnalyticsService: 필드명 변경 및 증감 데이터 적용 - 검증 문서 추가 - frontend-backend-validation.md: 수정 내용 및 다음 단계 정리 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2.7 KiB
2.7 KiB
백엔드-프론트엔드 API 연동 검증 및 수정 결과
작업일시: 2025-10-28 브랜치: feature/analytics 작업 범위: Analytics Service 백엔드 DTO 및 Service 수정
📝 수정 요약
1️⃣ 필드명 통일 (프론트엔드 호환)
목적: 프론트엔드 Mock 데이터 필드명과 백엔드 Response DTO 필드명 일치
| 수정 전 (백엔드) | 수정 후 (백엔드) | 프론트엔드 |
|---|---|---|
summary.totalParticipants |
summary.participants |
summary.participants ✅ |
channelPerformance[].channelName |
channelPerformance[].channel |
channelPerformance[].channel ✅ |
roi.totalInvestment |
roi.totalCost |
roiDetail.totalCost ✅ |
2️⃣ 증감 데이터 추가
목적: 프론트엔드에서 요구하는 증감 표시 및 목표값 제공
| 필드 | 타입 | 설명 | 현재 값 |
|---|---|---|---|
summary.participantsDelta |
Integer |
참여자 증감 (이전 기간 대비) | 0 (TODO: 계산 로직 필요) |
summary.targetRoi |
Double |
목표 ROI (%) | EventStats에서 가져옴 |
🔧 수정 파일 목록
DTO (Response 구조 변경)
-
AnalyticsSummary.java
- ✅
totalParticipants→participants - ✅
participantsDelta필드 추가 - ✅
targetRoi필드 추가
- ✅
-
ChannelSummary.java
- ✅
channelName→channel
- ✅
-
RoiSummary.java
- ✅
totalInvestment→totalCost
- ✅
Entity (데이터베이스 스키마 변경)
- EventStats.java
- ✅
targetRoi필드 추가 (BigDecimal, default: 0)
- ✅
Service (비즈니스 로직 수정)
-
AnalyticsService.java
- ✅
.participants()사용 - ✅
.participantsDelta(0)추가 (TODO 마킹) - ✅
.targetRoi()추가 - ✅
.channel()사용
- ✅
-
ROICalculator.java
- ✅
.totalCost()사용
- ✅
-
UserAnalyticsService.java
- ✅
.participants()사용 - ✅
.participantsDelta(0)추가 - ✅
.channel()사용 - ✅
.totalCost()사용
- ✅
✅ 검증 결과
컴파일 성공
```bash $ ./gradlew analytics-service:compileJava
BUILD SUCCESSFUL in 8s ```
📊 데이터베이스 스키마 변경
EventStats 테이블
```sql ALTER TABLE event_stats ADD COLUMN target_roi DECIMAL(10,2) DEFAULT 0.00; ```
⚠️ 주의사항
- Spring Boot JPA
ddl-auto설정에 따라 자동 적용됨
📌 다음 단계
우선순위 HIGH
- 프론트엔드 API 연동 테스트
- participantsDelta 계산 로직 구현
- targetRoi 데이터 입력 (Event Service 연동)
우선순위 MEDIUM
- 시간대별 분석 구현
- 참여자 프로필 구현
- ROI 세분화 구현