-- 세션 테이블 (Spring Session JDBC와 유사한 구조)
CREATE TABLE IF NOT EXISTS wr_session (
    session_id VARCHAR(64) PRIMARY KEY,           -- 세션 토큰 (랜덤 생성)
    employee_id INTEGER NOT NULL REFERENCES wr_employee_info(employee_id),
    login_history_id INTEGER REFERENCES wr_login_history(history_id),
    created_at TIMESTAMP DEFAULT NOW(),           -- 세션 생성 시간
    last_access_at TIMESTAMP DEFAULT NOW(),       -- 마지막 접근 시간
    expires_at TIMESTAMP NOT NULL,                -- 만료 시간
    login_ip VARCHAR(45),                         -- 로그인 IP
    user_agent TEXT                               -- 브라우저 정보
);

-- 인덱스
CREATE INDEX IF NOT EXISTS idx_wr_session_employee_id ON wr_session(employee_id);
CREATE INDEX IF NOT EXISTS idx_wr_session_expires_at ON wr_session(expires_at);

-- 만료된 세션 자동 정리 (선택사항 - 배치로 실행)
-- DELETE FROM wr_session WHERE expires_at < NOW();
