{
  "issueId": "4073",
  "environment": "dev",
  "scenario": "merchant-mid-alias-filter",
  "source": "Redmine #4073 + user-provided QA checklist 2026-09-01",
  "sourceText": "송인준 요청\n\nRedmine: https://itsm.bix.bz/issues/4073\n\n개발계 비스킷링크에서 ADMIN, TA, CO, BO 계정으로 업체관리 > 가맹점관리 화면을 검증한다.\n\n체크리스트\n1. 별칭 검색 필터 확인 후 정상 동작 확인\n2. 조회된 데이터의 별칭 컬럼 확인\n\nRedmine 완료 조건에 따라 별칭 조건과 기존 가맹점 검색 조건을 함께 적용했을 때 교집합으로 조회되는지 확인한다.\n요청에 별도 계정이 없으므로 ADMIN bigs_jjm, TA jjmta01, CO jjmco01, BO jjmbo01 기본 계정을 사용한다.",
  "scope": "개발계 비스킷링크 가맹점관리에서 ADMIN, TA, CO, BO 역할별 PG MID 별칭 검색 필터와 목록 별칭 컬럼을 검증한다.",
  "checklist": [
    "별칭 검색 필터 확인 후 정상 동작 확인",
    "조회된 데이터의 별칭 컬럼 확인"
  ],
  "roles": [
    "ADMIN",
    "TA",
    "CO",
    "BO"
  ],
  "subjectAccounts": [
    {
      "role": "ADMIN",
      "label": "bigs_jjm",
      "envRole": "ADMIN"
    },
    {
      "role": "TA",
      "label": "jjmta01",
      "envRole": "TA"
    },
    {
      "role": "CO",
      "label": "jjmco01",
      "envRole": "CO"
    },
    {
      "role": "BO",
      "label": "jjmbo01",
      "envRole": "QA4073_BO"
    }
  ],
  "setupSteps": [
    {
      "name": "권한별 개발계 로그인 및 가맹점관리 접근",
      "kind": "state-verify",
      "role": "ADMIN",
      "targetRoles": [
        "ADMIN",
        "TA",
        "CO",
        "BO"
      ],
      "application": "admin",
      "description": "요청에 별도 계정이 없으므로 문서화된 기본 계정 ADMIN bigs_jjm, TA jjmta01, CO jjmco01, BO jjmbo01로 로그인하고 업체관리 > 가맹점관리 화면에 접근할 수 있어야 한다. BO는 전역 계정 설정을 변경하지 않고 #4073 전용 런타임 역할에 연결한다.",
      "required": true,
      "mutation": "none",
      "navigation": {
        "name": "가맹점관리",
        "path": "/business/vendor-manage"
      }
    },
    {
      "name": "역할별 PG MID 별칭 보유 가맹점 확인",
      "kind": "manual-precondition",
      "role": "ADMIN",
      "targetRoles": [
        "ADMIN",
        "TA",
        "CO",
        "BO"
      ],
      "application": "admin",
      "description": "각 역할의 가맹점 조회 범위에 PG MID 별칭이 등록된 가맹점이 있어야 한다. 시나리오는 목록 API에서 후보를 동적으로 선택하고 별칭·가맹점명 복합 검색과 목록 컬럼을 검증한다.",
      "required": true,
      "mutation": "none"
    }
  ],
  "pages": [
    {
      "name": "가맹점관리",
      "application": "admin",
      "path": "/business/vendor-manage",
      "tenantParam": "tenantId",
      "roles": [
        "ADMIN",
        "TA",
        "CO",
        "BO"
      ],
      "recordsSelector": "[role='grid']",
      "searchButtonSelector": "button:has-text('검색')",
      "dataRequestUrlPattern": "/api/v2/vendors/manage",
      "filters": [
        {
          "name": "MID 별칭",
          "selector": "input[placeholder='MID 별칭 포함 검색']",
          "type": "textbox",
          "value": "동적 후보 별칭",
          "queryParamCandidates": [
            "note"
          ]
        },
        {
          "name": "가맹점명 직접 입력",
          "selector": "input[placeholder='가맹점명 포함 검색']",
          "type": "textbox",
          "value": "동적 후보 가맹점명",
          "queryParamCandidates": [
            "vendorName"
          ]
        }
      ]
    }
  ]
}
