{
  "issueId": "3324",
  "environment": "dev",
  "scenario": "offset-management",
  "source": "local checklist",
  "sourceText": "김경주님의 QA 요청입니다\n조지민 프로님 안녕하세요, 비스킷 링크 개발계 QA 요청드립니다\n[1] QA 요청 배경\n- https://itsm.bix.bz/issues/3324\n- 상계처리내역 화면에서 ADMIN 계정의 접속 기준 업체/테넌트에 따라 조회 범위가 분기되도록 백엔드/프론트가 반영되었습니다.\n- 화면 첫 진입 및 조회 결과는 전체 허용 테넌트가 아니라, 현재 접속 기준 업체/테넌트의 상계 데이터가 표시되는 것이 정상입니다.\n- 업체명은 접속한 업체명으로 고정되며, 사용자가 다른 업체를 선택하는 필터 대상이 아닙니다.\n- 상단 필터와 테이블 헤더 필터에서는 상태/부서명/처리자/처리일시 기준 검색이 가능해야 합니다.\n- 상계 처리 버튼 검증 중 발생한 거래 없음 오류는 원본 거래가 삭제되고 상계 데이터만 남아 있던 잘못된 테스트 데이터로 확인되어 삭제 조치 완료했습니다.\n[2] 사전 준비사항\n- 현재 접속 기준 업체/테넌트의 상계 데이터 준비\n- 상태 변경 검증이 가능한 정상 상계 데이터 준비\n- 이전 QA에서 발견된 원본 거래가 삭제된 잘못된 상계 데이터는 삭제 조치 완료\n- ADMIN 계정으로 로그인 가능 여부 확인\n- ADMIN 계정에서 거래관리 > 상계처리내역 메뉴 접근 가능 여부 확인\n- ADMIN 계정의 현재 접속 기준 업체/테넌트 확인\n- 개발계 백엔드와 프론트가 최신 반영 상태인지 확인\n- 테스트 전 브라우저 새로고침 후 기존 검색 조건이 남아 있지 않은 상태에서 시작\n[3] 검증 대상\n- 어드민 상계처리내역 화면\n- ADMIN 계정의 현재 접속 기준 업체/테넌트 목록 조회 범위\n- 상계처리내역 상단 검색 필터\n- 상계처리내역 테이블 헤더 필터\n- 전체 초기화 후 조회 조건 초기화\n- 상계 상태 변경 버튼 및 목록 새로고침 흐름\n[4] 검증 기준\n- 권한별 테스트: admin\n- 화면 첫 진입 시 목록은 현재 접속 기준 업체/테넌트의 상계 데이터 기준으로 표시되어야 합니다.\n- 업체명은 접속한 업체명으로 고정되어 표시되어야 합니다.\n- 상태, 부서명, 처리자, 처리일시 필터는 현재 접속 기준 업체/테넌트 범위 안에서만 적용되어야 합니다.\n- 전체 초기화 시 처리일시 기간 필터도 함께 초기화되어야 합니다.\n- 상계 처리 버튼 클릭 후에도 현재 필터 조건과 접속 기준 업체/테넌트 범위가 유지되어야 합니다.\n[5] 체크리스트\n- ADMIN 계정으로 상계처리내역 화면 진입 시 현재 접속 기준 업체의 상계 데이터만 표시되는지 확인\n- 목록의 업체명이 현재 접속한 업체명으로 고정되어 표시되는지 확인\n- 상태 필터에서 대기중, 채권부과, 완료를 각각 선택했을 때 현재 접속 기준 업체 범위 안에서 선택한 상태의 데이터만 표시되는지 확인\n- 부서명 필터 입력 시 현재 접속 기준 업체 범위 안에서 해당 부서명 기준으로 목록이 조회되는지 확인\n- 처리자 필터 입력 시 현재 접속 기준 업체 범위 안에서 해당 처리자 기준으로 목록이 조회되는지 확인\n- 처리일시 기간을 오늘 날짜 또는 다른 날짜 범위로 설정했을 때 현재 접속 기준 업체 범위 안에서 선택한 기간의 상계내역만 표시되는지 확인\n- 테이블 헤더 필터를 켰을 때 상태, 부서명, 처리자 필터가 각 컬럼 상단에 표시되는지 확인\n- 전체 초기화 시 상단 필터, 헤더 필터, 처리일시 기간 필터, 목록 조회 조건이 모두 초기화되고 현재 접속 기준 업체 목록으로 돌아오는지 확인\n- 상계 처리 버튼을 눌러 상태를 변경한 뒤 현재 접속 기준 업체 범위 안에서 목록이 새로고침되고 변경된 상태가 반영되는지 확인\n- 필터가 적용된 상태에서 상계 처리를 진행해도 현재 필터 조건과 접속 기준 업체 범위가 유지된 채 목록이 새로고침되는지 확인",
  "scope": "dev 환경에서 ADMIN 계정의 상계처리내역 화면을 현재 접속 기준 업체/테넌트 고정 범위로 검증합니다. 업체명은 선택 필터가 아니라 고정 표시 대상이며, 상태/부서명/처리자/처리일시 필터와 상계 처리 후 새로고침 흐름을 확인합니다.",
  "checklist": [
    "ADMIN 계정으로 상계처리내역 화면 진입 시 현재 접속 기준 업체의 상계 데이터만 표시되는지 확인",
    "목록의 업체명이 현재 접속한 업체명으로 고정되어 표시되는지 확인",
    "상태 필터에서 대기중, 채권부과, 완료를 각각 선택했을 때 현재 접속 기준 업체 범위 안에서 선택한 상태의 데이터만 표시되는지 확인",
    "부서명 필터 입력 시 현재 접속 기준 업체 범위 안에서 해당 부서명 기준으로 목록이 조회되는지 확인",
    "처리자 필터 입력 시 현재 접속 기준 업체 범위 안에서 해당 처리자 기준으로 목록이 조회되는지 확인",
    "처리일시 기간을 오늘 날짜 또는 다른 날짜 범위로 설정했을 때 현재 접속 기준 업체 범위 안에서 선택한 기간의 상계내역만 표시되는지 확인",
    "테이블 헤더 필터를 켰을 때 상태, 부서명, 처리자 필터가 각 컬럼 상단에 표시되는지 확인",
    "전체 초기화 시 상단 필터, 헤더 필터, 처리일시 기간 필터, 목록 조회 조건이 모두 초기화되고 현재 접속 기준 업체 목록으로 돌아오는지 확인",
    "상계 처리 버튼을 눌러 상태를 변경한 뒤 현재 접속 기준 업체 범위 안에서 목록이 새로고침되고 변경된 상태가 반영되는지 확인",
    "필터가 적용된 상태에서 상계 처리를 진행해도 현재 필터 조건과 접속 기준 업체 범위가 유지된 채 목록이 새로고침되는지 확인"
  ],
  "roles": [],
  "routeCandidates": "../../../../qa-results/issues/3324/dev/route-candidates.json",
  "setupSteps": [
    {
      "name": "ADMIN 계정 로그인 확인",
      "kind": "manual-precondition",
      "role": "ADMIN",
      "application": "admin",
      "description": "BIX_ADMIN_DEV_ADMIN_* 계정으로 로그인하고 거래관리 > 상계처리내역 메뉴 접근이 가능해야 합니다.",
      "required": true,
      "mutation": "none"
    },
    {
      "name": "현재 접속 기준 업체/테넌트 데이터 확인",
      "kind": "manual-precondition",
      "role": "ADMIN",
      "application": "admin",
      "description": "현재 접속 기준 업체/테넌트에 상태/부서명/처리자/처리일시 및 상태 변경 검증에 사용할 정상 상계 데이터가 준비되어 있어야 합니다.",
      "required": true,
      "mutation": "none"
    }
  ],
  "pages": [
    {
      "name": "상계처리내역",
      "application": "admin",
      "path": "/offset-management",
      "tenantParam": "tenantId",
      "searchButtonSelector": "button:has-text('검색')",
      "dataRequestUrlPattern": "/api/v1/offset",
      "filters": [
        {
          "name": "상태",
          "type": "combobox",
          "value": "PENDING",
          "queryParam": "offsetStatus"
        },
        {
          "name": "부서명",
          "selector": "input[placeholder='부서명 입력']",
          "type": "textbox",
          "value": "테스트",
          "queryParam": "offsetDepartmentName"
        },
        {
          "name": "처리자",
          "selector": "input[placeholder='처리자 입력']",
          "type": "textbox",
          "value": "테스트",
          "queryParam": "offsetUsername"
        },
        {
          "name": "처리일시",
          "type": "date-range",
          "queryParam": "from,to"
        }
      ]
    }
  ]
}
