4d19c31440
직전 Phase 1 의 후속 폴리시. 신규 백엔드 - crosstenant/CrossTenantDeptController.java GET /api/admin/cross-tenant/departments?company_code=TEST02 단일 모드 GET /admin/departments 와 응답 형태 동일. company_code query param 으로 명시된 회사 DB 컨텍스트로 임시 전환해서 부서 트리 반환. 버그 수정: 메타 DB DEPT_INFO 시드 (qnc/COMPANY_7 등 다른 회사 부서) 가 TEST02 선택 시에도 dropdown 에 섞여 보이던 문제 해결. 프론트 - lib/api/user.ts — getDepartmentList(companyCode) 가 isCrossTenantMode() 면 /admin/cross-tenant/departments?company_code= 호출. cross-tenant 모드 + companyCode 미지정 → 빈 배열 반환 (회사 안 골랐는데 메타 부서 보여주는 것 방지). UserFormModal - 회사 dropdown 을 폼 가장 위로 이동 — 사용자 ID 중복확인·부서 선택이 모두 회사에 의존하므로 자연스러운 입력 순서 - SUPER_ADMIN 인데 회사 미선택 상태에선 사용자 ID input + 중복확인 버튼 disable + placeholder "회사 먼저 선택" - checkUserIdDuplicate 가드: 회사 미선택이면 "회사를 먼저 선택해주세요" (백엔드의 400 "company_code 가 비어있음" 보다 친절) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>