[할인코드확장 PR2] ValidationService scope 검증 + 공개 API 확장

ID: ed525364-5643-4f48-a578-0297011c6ea2

높음 완료

## 목표
ValidationService가 apply_scope별로 할인코드 적용 가능 여부를 검증하도록 확장

## 변경 사항

### ValidationService
- product: → item: 파라미터 변경 (Product, Expert::Course, Study::Course 수용)
- apply_scope별 검증: all→항상, report→Product만, education→Expert::Course/Study::Course만, specific→items 존재 체크

### DiscountCodesController#validate
- item_type, item_id optional 파라미터 추가
- 허용 타입: Product, Expert::Course, Study::Course
- 기존 code+amount만 보내는 호출 하위호환 유지

## 완료 기준
- [ ] ValidationService scope별 검증 정상
- [ ] report scope에서 교육 거부
- [ ] education scope에서 리포트 거부
- [ ] specific scope에서 미등록 항목 거부
- [ ] 공개 API item_type/item_id 파라미터 동작
- [ ] 기존 리포트 결제 할인코드 흐름 정상 (하위호환)

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

## 관련 파일
- app/services/discount_codes/validation_service.rb
- app/controllers/discount_codes_controller.rb
- test/services/discount_codes/validation_service_test.rb
- test/controllers/discount_codes_controller_test.rb

첨부 이미지

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

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

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

활동 로그

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

    2026년 04월 15일 08:37:46

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

    2026년 04월 15일 08:23:23

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

    2026년 04월 15일 08:04:38