[할인코드확장 PR3] Expert/Study 서비스 할인 연동

ID: 242c06ab-a679-4cc8-8d21-d6dbb5ff1e48

높음 완료

## 목표
Expert::ApplicationService와 Study::EnrollmentService에 할인코드 지원 추가

## 변경 사항

### Expert::ApplicationService
- discount_code_id: 파라미터 추가 (optional, default: nil)
- ValidationService로 검증 → discount_amount 계산
- Payments::CheckoutService에 discount_amount, discount_code_id 전달 (이미 지원됨)
- 할인코드 사용 횟수 증가 (discount_code.use!)

### Study::EnrollmentService
- discount_code_id: 파라미터 추가 (optional, default: nil)
- prepare_checkout에서 할인코드 검증 + 할인액 계산
- create_pending_payment에서 할인된 금액으로 Payment 생성

### WorkshopPaymentsController
- create 액션에서 params[:discount_code_id] 받아서 ApplicationService에 전달

## 완료 기준
- [ ] Expert 교육 결제 시 할인코드 적용 정상
- [ ] Study 온라인강좌 결제 시 할인코드 적용 정상
- [ ] 할인코드 없이 기존 결제 흐름 정상 (하위호환)
- [ ] 무효 할인코드 거부 정상

## 의존성: PR #2 완료 필수

## 관련 파일
- app/services/expert/application_service.rb
- app/services/study/enrollment_service.rb
- app/controllers/study/workshop_payments_controller.rb

첨부 이미지

이미지 추가 (Ctrl+V로 붙여넣기 또는 클릭)

JPEG, PNG, GIF, WebP / 최대 10MB

담당자: 미배정
생성일: 2026년 04월 15일 08:04

활동 로그

  • 팀리드 상태 변경: 리뷰 → 완료

    2026년 04월 15일 08:37:47

  • 팀리드 상태 변경: 진행 중 → 리뷰

    2026년 04월 15일 08:25:38

  • 팀리드 상태 변경: 백로그 → 진행 중

    2026년 04월 15일 08:23:27

  • 팀리드 상태 변경: 할 일 → 백로그

    2026년 04월 15일 08:04:40