Skip to content

Story: 원가 CSV 다운로드

메타

항목
Story IDE-03-S-07
EpicE-03 원가 히스토리
상태draft
우선순위P0
규모M
담당BE: 희선님, FE: 수민님

사용자 스토리

As a 상품 수가 많은 셀러, I want 전체 상품의 원가 정보를 CSV로 다운로드, So that 엑셀에서 일괄 확인/편집 후 업로드할 수 있다.


수락 기준 (Acceptance Criteria)

AC-01: 다운로드 버튼 노출

항목내용
Given매입원가 관리 페이지
WhenBasic 이상 요금제 사용자
Then"CSV 다운로드" 버튼 노출

요금제별 노출:

티어CSV 다운로드
Starter❌ (업그레이드 유도 UI)
Basic+

AC-02: CSV 파일 생성

항목내용
Given다운로드 버튼 클릭
When상품 데이터 조회
ThenUTF-8 BOM CSV 파일 생성 (엑셀 한글 깨짐 방지)

CSV 컬럼 구조:

#컬럼명 (한글)DB 컬럼수정 가능
1쇼핑몰marketCode❌ (Key)
2판매자IDvendorId❌ (Key)
3상품코드productId❌ (Key)
4상품명productName
5매입원가purchasePrice
6매입배송비purchaseDeliveryAmount
7운임비actualDeliveryAmount
8기타비용etcAmount
9광고비용marketingAmount
10입출고비용warehousingAmount

AC-03: 필터 적용

항목내용
Given쇼핑몰/판매상태 필터 적용 상태
WhenCSV 다운로드
Then필터링된 상품만 포함

태스크 분해

Task 1: BE - CSV 생성 API (AC-02)

  • [ ] GET /api/products/cost/export 엔드포인트
  • [ ] Product 테이블 조회 (필터 조건 적용)
  • [ ] UTF-8 BOM CSV 스트림 생성
  • [ ] 한글 컬럼명 매핑

Task 2: FE - 다운로드 UI (AC-01, AC-03)

  • [ ] 다운로드 버튼 컴포넌트
  • [ ] 요금제별 노출 분기 (PlanTier 체크)
  • [ ] Starter: 업그레이드 유도 모달
  • [ ] 필터 상태 API 파라미터 전달

Task 3: 파일명 규칙

  • [ ] 장사왕_매입원가_{YYYYMMDD}.csv 형식
  • [ ] 다운로드 시 현재 날짜 자동 적용

Dev Notes

참고 코드

  • 기존 CSV 다운로드 기능 있으면 참조

성능 고려

  • 상품 수 많을 경우 스트리밍 처리
  • 10,000건 이상 시 비동기 처리 검토 (S54+ 백로그)

E-05 연계

  • PlanTier 또는 Feature Flag로 요금제 체크
  • E-05 구현 전에는 전체 공개 후, E-05 배포 시 제한 적용

References


생성일: 2026-01-28

장사왕 Product Team