{
  "issueId": "3199",
  "environment": "dev",
  "scenario": "biscuit-card-dashboard",
  "source": "user request and Redmine #3199",
  "sourceText": "@조지민 프로님 안녕하세요, 비스킷카드 대시보드 개발계 QA 요청드립니다.\n\n[1] QA 요청 배경\nRedmine: https://itsm.bix.bz/issues/3199\n개발계 어드민 > 비스킷카드 대시보드 신규/개선 기능 검증 요청\n\n[2] QA 대상 화면\n접근 권한: ADMIN\n화면 탭\n  - 전체\n  - biscuitPay\n  - biscuit Card\n  - biscuit 선불카드\n\n[3] 사전 데이터\n조회 기간 내 biscuitPay / biscuit Card 충전 및 사용 데이터가 존재하는 테넌트 준비\n채널별 충전, 사용, 잔액, 수수료 데이터가 확인 가능한 데이터 준비\n조회 시점 기준 잔액 확인이 가능한 선불카드 잔액 및 이노바일 예치금 계좌 데이터 준비\nADMIN 외 권한 계정 접근 제한 확인용 계정 준비\n\n[4] 공통 체크리스트\nADMIN 계정으로 화면 진입 시 비스킷카드 대시보드가 정상 노출되는지 확인\nADMIN 외 권한 계정으로 접근 시 화면 또는 API 접근이 제한되는지 확인\n조회 기간 변경 시 기간성 지표와 차트가 동일 기간 기준으로 갱신되는지 확인\n집계 기준을 일별/주별/월별로 변경했을 때 차트 구간 라벨과 금액이 기준에 맞게 변경되는지 확인\n라이브성 잔액 지표는 조회 시점 기준 금액으로 표시되는지 확인\n데이터가 없는 조건에서 빈 상태 메시지가 정상 노출되는지 확인\nAPI 실패 또는 로딩 중 화면이 깨지지 않고 로딩/오류 상태가 표시되는지 확인\n\n[5] 탭별 체크리스트\n\n전체 탭\n선불카드 충전 금액, 선불카드 사용 금액, 선불카드 잔액, 이노바일 예치금 계좌 잔액 카드가 정상 표시되는지 확인\n선불카드 충전 금액과 선불카드 사용 금액은 설정한 조회 기간 기준 합계로 표시되는지 확인\n선불카드 잔액과 이노바일 예치금 계좌 잔액은 조회 시점 기준의 라이브성 잔액으로 표시되는지 확인\n채널별 카드 충전/사용 추이 차트가 조회 기간 및 집계 기준에 맞게 표시되는지 확인\n채널별 요약 테이블의 충전 금액, 사용 금액, 잔액 값이 상단 요약과 일관되는지 확인\n\nbiscuitPay 탭\n총 충전 금액과 예치금 계좌 잔액이 정상 표시되는지 확인\n총 충전 금액은 설정한 조회 기간 기준 합계로 표시되는지 확인\n예치금 계좌 잔액은 조회 시점 기준의 라이브성 잔액으로 표시되는지 확인\n총 사용 금액, 사용 건수, 평균 결제 금액, 취소 금액이 정상 표시되는지 확인\n기간별 충전 금액 추이와 기간별 사용 금액 추이가 조회 기간 및 집계 기준에 맞게 표시되는지 확인\n사용 금액은 취소/부분취소 차감 후 순 사용 금액 기준으로 표시되는지 확인\n\nbiscuit Card 탭\n트릿포인트 충전 금액, 카드 충전 금액, 미전환 트릿포인트 잔액, 카드 충전율이 정상 표시되는지 확인\n트릿포인트 충전 금액과 카드 충전 금액은 설정한 조회 기간 기준 합계로 표시되는지 확인\n미전환 트릿포인트 잔액은 조회 시점 기준의 라이브성 잔액으로 표시되는지 확인\n트릿포인트 충전 현황, 선불카드 충전, 사용 현황 차트가 조회 기간 및 집계 기준에 맞게 표시되는지 확인\n총 사용 금액, 사용 건수, 평균 결제 금액이 개인 회원 카드 사용 기준으로 표시되는지 확인\n\nbiscuit 선불카드 탭\n총 충전 수수료, biscuitPay 충전 수수료, biscuit Card 충전 수수료, 수수료 적용 채널 수가 정상 표시되는지 확인\n충전 수수료는 설정한 조회 기간 기준 합계로 표시되는지 확인\n기간별 충전 수수료 추이가 조회 기간 및 집계 기준에 맞게 표시되는지 확인\n채널별 충전 수수료 차트와 채널별 수수료 적용 현황 테이블이 일관되게 표시되는지 확인\n수수료율, 수수료 정책, 발생/미발생 상태가 채널별로 정상 표시되는지 확인",
  "scope": "dev 어드민 비스킷카드 대시보드에서 ADMIN 접근, ADMIN 외 접근 제한, 조회 기간/집계 기준 변경, 라이브성 잔액, 빈 상태, API 실패/로딩 상태, 전체/biscuitPay/biscuit Card/biscuit 선불카드 탭별 지표와 표/차트 API 일관성을 검증",
  "checklist": [
    "ADMIN 계정으로 화면 진입 시 비스킷카드 대시보드가 정상 노출되는지 확인",
    "ADMIN 외 권한 계정으로 접근 시 화면 또는 API 접근이 제한되는지 확인",
    "조회 기간 변경 시 기간성 지표와 차트가 동일 기간 기준으로 갱신되는지 확인",
    "집계 기준을 일별/주별/월별로 변경했을 때 차트 구간 라벨과 금액이 기준에 맞게 변경되는지 확인",
    "라이브성 잔액 지표는 조회 시점 기준 금액으로 표시되는지 확인",
    "데이터가 없는 조건에서 빈 상태 메시지가 정상 노출되는지 확인",
    "API 실패 또는 로딩 중 화면이 깨지지 않고 로딩/오류 상태가 표시되는지 확인",
    "전체 탭: 선불카드 충전 금액, 선불카드 사용 금액, 선불카드 잔액, 이노바일 예치금 계좌 잔액 카드가 정상 표시되는지 확인",
    "전체 탭: 선불카드 충전 금액과 선불카드 사용 금액은 설정한 조회 기간 기준 합계로 표시되는지 확인",
    "전체 탭: 선불카드 잔액과 이노바일 예치금 계좌 잔액은 조회 시점 기준의 라이브성 잔액으로 표시되는지 확인",
    "전체 탭: 채널별 카드 충전/사용 추이 차트가 조회 기간 및 집계 기준에 맞게 표시되는지 확인",
    "전체 탭: 채널별 요약 테이블의 충전 금액, 사용 금액, 잔액 값이 상단 요약과 일관되는지 확인",
    "biscuitPay 탭: 총 충전 금액과 예치금 계좌 잔액이 정상 표시되는지 확인",
    "biscuitPay 탭: 총 충전 금액은 설정한 조회 기간 기준 합계로 표시되는지 확인",
    "biscuitPay 탭: 예치금 계좌 잔액은 조회 시점 기준의 라이브성 잔액으로 표시되는지 확인",
    "biscuitPay 탭: 총 사용 금액, 사용 건수, 평균 결제 금액, 취소 금액이 정상 표시되는지 확인",
    "biscuitPay 탭: 기간별 충전 금액 추이와 기간별 사용 금액 추이가 조회 기간 및 집계 기준에 맞게 표시되는지 확인",
    "biscuitPay 탭: 사용 금액은 취소/부분취소 차감 후 순 사용 금액 기준으로 표시되는지 확인",
    "biscuit Card 탭: 트릿포인트 충전 금액, 카드 충전 금액, 미전환 트릿포인트 잔액, 카드 충전율이 정상 표시되는지 확인",
    "biscuit Card 탭: 트릿포인트 충전 금액과 카드 충전 금액은 설정한 조회 기간 기준 합계로 표시되는지 확인",
    "biscuit Card 탭: 미전환 트릿포인트 잔액은 조회 시점 기준의 라이브성 잔액으로 표시되는지 확인",
    "biscuit Card 탭: 트릿포인트 충전 현황, 선불카드 충전, 사용 현황 차트가 조회 기간 및 집계 기준에 맞게 표시되는지 확인",
    "biscuit Card 탭: 총 사용 금액, 사용 건수, 평균 결제 금액이 개인 회원 카드 사용 기준으로 표시되는지 확인",
    "biscuit 선불카드 탭: 총 충전 수수료, biscuitPay 충전 수수료, biscuit Card 충전 수수료, 수수료 적용 채널 수가 정상 표시되는지 확인",
    "biscuit 선불카드 탭: 충전 수수료는 설정한 조회 기간 기준 합계로 표시되는지 확인",
    "biscuit 선불카드 탭: 기간별 충전 수수료 추이가 조회 기간 및 집계 기준에 맞게 표시되는지 확인",
    "biscuit 선불카드 탭: 채널별 충전 수수료 차트와 채널별 수수료 적용 현황 테이블이 일관되게 표시되는지 확인",
    "biscuit 선불카드 탭: 수수료율, 수수료 정책, 발생/미발생 상태가 채널별로 정상 표시되는지 확인"
  ],
  "roles": [
    "TA"
  ],
  "setupSteps": [
    {
      "name": "조회 기간 내 대시보드 검증 데이터 준비",
      "kind": "manual-precondition",
      "application": "admin",
      "description": "현재 접속 기준 테넌트에 biscuitPay / biscuit Card 충전 및 사용 데이터, 채널별 충전/사용/잔액/수수료 데이터가 존재해야 한다.",
      "required": true,
      "mutation": "none"
    },
    {
      "name": "라이브성 잔액 기준 데이터 준비",
      "kind": "manual-precondition",
      "application": "admin",
      "description": "조회 시점 기준 선불카드 잔액과 이노바일 예치금 계좌 잔액을 API와 화면에서 비교할 수 있어야 한다.",
      "required": true,
      "mutation": "none"
    },
    {
      "name": "ADMIN 외 접근 제한 계정 준비",
      "kind": "manual-precondition",
      "application": "admin",
      "description": "ADMIN 외 권한 접근 제한 확인을 위해 TA 계정 인증정보가 .env.local에 입력되어 있어야 한다. 실제 계정과 비밀번호는 repo에 커밋하지 않는다.",
      "required": true,
      "mutation": "none"
    }
  ],
  "pages": [
    {
      "name": "비스킷카드 대시보드",
      "application": "admin",
      "path": "/admin/biscuit-card/dashboard",
      "tenantParam": "tenantId",
      "accessByRole": {
        "ADMIN": "allowed",
        "TA": "denied"
      },
      "searchButtonSelector": "button:has-text('검색')",
      "dataRequestUrlPattern": "/api/v1/admin/biscuit-card-dashboard"
    }
  ]
}
