// =============================================================================
// 企微IT智能服务台 — 系统管理 API 调用模块
// =============================================================================
// 说明：封装系统级配置管理的 HTTP 请求
// 对应后端 API：/api/system/emergency-mode
// =============================================================================

import apiClient from './index'
import type { AxiosResponse } from 'axios'

// --------------------------------------------------------------------------
// TypeScript 类型定义
// --------------------------------------------------------------------------

/** 应急模式状态响应 */
export interface EmergencyModeData {
  /** 是否启用应急模式 */
  emergency_mode: boolean
  /** 启用时的引导文案（仅开启时返回） */
  employee_service_guide?: string
}

/** 切换应急模式请求 */
export interface EmergencyModeToggle {
  /** 是否启用应急模式 */
  emergency_mode: boolean
}

// --------------------------------------------------------------------------
// API 函数
// --------------------------------------------------------------------------

/**
 * 查询应急模式状态
 */
export async function getEmergencyMode(): Promise<EmergencyModeData> {
  const response: AxiosResponse = await apiClient.get('/system/emergency-mode')
  return response.data.data
}

/**
 * 切换应急模式开关
 *
 * @param enabled - true 开启应急模式，false 关闭
 */
export async function toggleEmergencyMode(enabled: boolean): Promise<EmergencyModeData> {
  const response: AxiosResponse = await apiClient.put('/system/emergency-mode', {
    emergency_mode: enabled,
  })
  return response.data.data
}
