import { request } from '@/service/request';

// 查询参数列表
export function listConfig(query: Api.SystemManage.ConfigSearchParams) {
  return request<Api.SystemManage.ConfigList>({
    url: '/system/config/list',
    method: 'get',
    params: query
  });
}

// 查询参数详细
export function getConfig(configId: Api.SystemManage.Config['configId']) {
  return request<Api.SystemManage.Config>({
    url: `/system/config/${configId}`,
    method: 'get'
  });
}

// 根据参数键名查询参数值
export function getConfigKey(configKey: Api.SystemManage.Config['configKey']) {
  return request({
    url: `/system/config/configKey/${configKey}`,
    method: 'get'
  });
}

// 新增参数配置
export function addConfig(data: Api.SystemManage.Config) {
  return request({
    url: '/system/config',
    method: 'post',
    data
  });
}

// 修改参数配置
export function updateConfig(data: Api.SystemManage.Config) {
  return request({
    url: '/system/config',
    method: 'put',
    data
  });
}

// 删除参数配置
export function delConfig(configId: Api.SystemManage.Config['configId'][]) {
  return request({
    url: `/system/config/${configId}`,
    method: 'delete'
  });
}

// 刷新参数缓存
export function refreshCache() {
  return request({
    url: '/system/config/refreshCache',
    method: 'delete'
  });
}
