🛠️ 기능 설명
AI-service 월간 배치 실행 중 account-service에서 조회한 분류 대상 출금 거래를 FastAPI 소비 분류 API로 전달하고, 반환된 분류 결과를 이후 account-service의 TXN_ANALYSIS 저장 단계에서 사용할 수 있도록 연동한다.
FastAPI는 이미 POST /api/v1/classify-transactions 계약 리팩터링이 완료되어 있으므로, 이번 작업은 Spring AI-service에서 해당 API를 호출하는 Client와 월간 배치 오케스트레이션 연결을 구현하는 작업이다.
🛠️ 구현 범위
- FastAPI 소비 분류 API 요청 DTO 작성
- FastAPI 소비 분류 API 응답 DTO 작성
- AI-service 내부 FastAPI 호출 Client 작성
MonthlyAiReportOrchestrationService에서 분류 대상 거래 조회 후 FastAPI 분류 호출 연결
- FastAPI 호출 실패 시 해당 사용자 처리 실패로 기록하고 다음 사용자 처리를 계속 진행
- 분류 결과는 account-service 저장 계약 확정 후 저장 Client로 전달 예정
🛠️ 연동 API
POST /api/v1/classify-transactions
Request
{
"transactions": [
{
"transactionId": 1001,
"merchantName": "KB카드대금",
"description": "카드 이용대금 출금",
"amount": 450000,
"transactionDate": "2026-07-15T09:30:00"
}
]
}
Response
{
"success": true,
"status_code": 200,
"message": "소비 내역 분류에 성공했습니다.",
"data": {
"results": [
{
"transactionId": 1001,
"isConsumption": true,
"category": "ETC",
"expenseType": "VARIABLE"
}
]
}
}
📝 Check-lists
🛠️ 기능 설명
AI-service 월간 배치 실행 중 account-service에서 조회한 분류 대상 출금 거래를 FastAPI 소비 분류 API로 전달하고, 반환된 분류 결과를 이후 account-service의
TXN_ANALYSIS저장 단계에서 사용할 수 있도록 연동한다.FastAPI는 이미
POST /api/v1/classify-transactions계약 리팩터링이 완료되어 있으므로, 이번 작업은 Spring AI-service에서 해당 API를 호출하는 Client와 월간 배치 오케스트레이션 연결을 구현하는 작업이다.🛠️ 구현 범위
MonthlyAiReportOrchestrationService에서 분류 대상 거래 조회 후 FastAPI 분류 호출 연결🛠️ 연동 API
📝 Check-lists
FastAPI 소비 분류 요청 DTO 작성
FastAPI 소비 분류 응답 DTO 작성
FastAPI 호출 Client 작성
FastAPI base-url 설정 추가
월간 배치 오케스트레이션에 소비 분류 호출 단계 연결
FastAPI 호출 실패 시 사용자 단위 예외 처리 확인
샘플 거래 기준 FastAPI 연동 테스트
ai-service 빌드 검증