-- V107: 이근수(kslee)·천은희(ehcheon) 사용허가 + 시스템관리자(ADMIN) 권한 부여
-- 소유자 지시(2026-07-24): "운영서버 이근수, 천은희 사용허가 및 admin권한 부여(모든기능 사용 할 수 있도록)"
-- 전제: 두 계정은 이미 가입 완료(비밀번호 기등록 — 소유자 확인). 본 마이그레이션은 자격증명을
--       생성/변경하지 않고 기존 계정에 권한만 부여한다(UPDATE only, 멱등).
-- 효과: role_code='ADMIN'(시스템관리 백오피스 포함 전 메뉴 게이트 통과, V7 sys_role 정합),
--       status='ACTIVE'·잠금 해제(사용허가), 스코프 메뉴 해소용 행사 멤버십(V51 패턴).

UPDATE app_user
SET role_code          = 'ADMIN',
    status             = 'ACTIVE',
    failed_login_count = 0,
    locked_until       = NULL,
    updated_at         = now()
WHERE email IN ('kslee@kintex.co.kr', 'ehcheon@kintex.co.kr')
   OR display_name IN ('이근수', '천은희');

-- 스코프 메뉴(EVENT_SCOPED_PATH)는 event_member 로 대상 행사를 해소한다(V51 배경 동일).
-- 데모 해소행사(e-2026-live)·차기 행사(e-2026-smf)에 ORGANIZER 멤버로 등록(멱등·계정/행사 존재 시에만).
INSERT INTO event_member (id, event_id, user_id, role_code, booth_id, company_id)
SELECT 'em-adm-' || substr(md5(u.id || '-' || v.event_id), 1, 12), v.event_id, u.id, 'ORGANIZER', NULL, NULL
FROM app_user u
CROSS JOIN (VALUES ('e-2026-live'), ('e-2026-smf')) AS v(event_id)
WHERE (u.email IN ('kslee@kintex.co.kr', 'ehcheon@kintex.co.kr') OR u.display_name IN ('이근수', '천은희'))
  AND EXISTS (SELECT 1 FROM event e WHERE e.id = v.event_id)
  AND NOT EXISTS (
        SELECT 1 FROM event_member em
        WHERE em.event_id = v.event_id AND em.user_id = u.id
      );
