import request from '@/utils/request'

// ==================== 主域名池管理 ====================

// 获取域名池列表
export function getDomainPoolList(params) {
  return request({
    url: '/platform/domain/pool/index',
    method: 'get',
    params
  })
}

// 获取启用的主域名列表
export function getEnabledDomains() {
  return request({
    url: '/platform/domain/pool/getEnabledDomains',
    method: 'get'
  })
}

// 创建主域名
export function createDomainPool(data) {
  return request({
    url: '/platform/domain/pool/create',
    method: 'post',
    data
  })
}

// 更新主域名
export function updateDomainPool(data) {
  return request({
    url: '/platform/domain/pool/update',
    method: 'post',
    data
  })
}

// 删除主域名
export function deleteDomainPool(id) {
  return request({
    url: `/platform/domain/pool/delete/${id}`,
    method: 'delete'
  })
}

// 切换主域名状态
export function toggleDomainPoolStatus(id) {
  return request({
    url: '/platform/domain/pool/toggleStatus',
    method: 'post',
    data: { id }
  })
}

// ==================== 租户域名管理 ====================

// 获取租户域名列表（管理员）
export function getTenantDomainList(params) {
  return request({
    url: '/platform/domain/tenant/index',
    method: 'get',
    params
  })
}

// 获取当前租户的域名列表
export function getMyDomains(params) {
  return request({
    url: '/platform/domain/tenant/myDomains',
    method: 'get',
    params
  })
}

// 申请二级域名
export function applyTenantDomain(data) {
  return request({
    url: '/platform/domain/tenant/apply',
    method: 'post',
    data
  })
}

// 审核租户域名
export function auditTenantDomain(data) {
  return request({
    url: '/platform/domain/tenant/audit',
    method: 'post',
    data
  })
}

// 禁用/启用租户域名
export function toggleTenantDomainStatus(id) {
  return request({
    url: '/platform/domain/tenant/toggleStatus',
    method: 'post',
    data: { id }
  })
}

// 删除租户域名
export function deleteTenantDomain(id) {
  return request({
    url: `/platform/domain/tenant/delete/${id}`,
    method: 'delete'
  })
}
