ustify-content: center; min-height: 100vh; margin: 0; padding: 20px; }}
.card {{ background: #1e293b; border-radius: 16px; padding: 40px 32px; max-width: 400px; text-align: center; box-shadow: 0 10px 30px rgba(0,0,0,0.3); }}
h1 {{ color: #34d399; margin: 0 0 16px 0; font-size: 24px; }}
p {{ color: #94a3b8; margin: 8px 0; line-height: 1.6; }}
.ico {{ font-size: 56px; margin-bottom: 16px; }}
</style>
</head>
<body>
<div class="card">
<div class="ico">✅</div>
<h1>扫码成功</h1>
<p>请在刚才打开登录页的浏览器中</p>
<p>点击 <strong style="color:#60a5fa">「确认登录」</strong> 按钮完成登录</p>
<p style="margin-top:24px;font-size:13px;color:#64748b">本页可关闭</p>
</div>
</body>
</html>"""
            return HTMLResponse(content=html, status_code=200)

        # POST 模式:返回 JSON
        return success_response(data={
            "success": result["success"],
            "message": result["message"],
        })

    except ValueError as ve:
        # 票据过期/不存在 → 业务错误
        logger.warning(f"扫码业务错误: {ve}")
        raise AppException(1003, str(ve))
    except Exception as e:
        logger.error(f"扫码处理异常: error={e}", exc_info=True)
        raise AppException(1005, f"扫码处理失败: {str(e)}")


# --------------------------------------------------------------------------
# POST /api/auth_qrcode/confirm — 当前已登录坐席确认授权
# --------------------------------------------------------------------------
@router.post("/confirm", response_model=None)
async def confirm_qrcode(
    body: QrcodeConfirmRequest,
    current_user: UserInfo = Depends(get_current_user),
    redis_client: aioredis.Redis = Depends(dep_redis),
):
    """处理当前已登录坐席的扫码确认授权。

    需要鉴权: 只有已登录的坐席/管理员能确认授权。
    把扫码用户身份变成可登录 Token(roles=['agent']),
    写 Redis confirm:{ticket},前端 poll 拿到后跳坐席主页。

    otp_code: admin 场景下可选,Phase 1.1 仅记录日志,
              真实 OTP 校验留给 Phase 2.1(参考 agents.py:272-274 的 totp.verify)。

    Args:
        body: 包含 ticket 和 otp_code(可选)
        current_user: 当前已登录用户(由 get_current_user 注入)
        redis_client: Redis 客户端

    Returns:
        Dict: 统一响应格式,data 字段是 QrcodeConfirmResponse
    """
    try:
        service = _get_qrcode_service(redis_client)
        result = await service.process_confirm(
            ticket=body.ticket,
            current_user_id=current_user.employee_id,
            current_user_name=current_user.name,
            current_roles=current_user.roles,
            otp_code=body.otp_code,
        )

        return success_response(data={
            "token": result["token"],
            "employee_id": result["employee_id"],
            "name": result["name"],