import { defHttp } from '@/utils/http/axios';
import { BasicFetchResult } from '@/api/model/baseModel';

// 常用返回消息
export interface responses {
  code: number;
  columnHeaders: [];
  count: number;
  result: [];
  msg: string;
}
export type responsesmodel = BasicFetchResult<responses>;

enum Api {
    // 分页获取列表数据
    LoadDataBaseInfo = '/api/Specialcolumn/LoadDataBaseInfo',
    // 获取全部数据（不显示的除外）
    GetDataColName = '/api/Specialcolumn/GetDataColName',
    // 获取单个数据源
    GetEntityById = '/api/Specialcolumn/GetEntityById',
    // 新增数据源
    AddOrUpdateForm = '/api/Specialcolumn/AddOrUpdateForm',
    // 删除数据源
    DeleteEntity = '/api/Specialcolumn/DeleteEntity',
    // 修改是否显示状态
    UpdateIsShow = '/api/Specialcolumn/UpdateIsShow',
  }

// 分页获取列表数据
export function LoadDataBaseInfo(params) {
    return defHttp.get<responsesmodel>({
        url: Api.LoadDataBaseInfo,
        params,
    });
}
// 获取全部数据（不显示的除外）
export function GetDataColName(params) {
    return defHttp.get<responsesmodel>({
        url: Api.GetDataColName,
        params,
    });
}
// 获取单个数据源
export function GetEntityById(params) {
    return defHttp.get<responsesmodel>({
        url: Api.GetEntityById,
        params,
    });
}
// 新增数据源
export function AddOrUpdateForm(params) {
    return defHttp.post<responsesmodel>({
        url: Api.AddOrUpdateForm + "?id=" + params.id,
        params,
    });
}
// 删除数据源
export function DeleteEntity(params) {
    return defHttp.post<responsesmodel>({
        url: Api.DeleteEntity + "?id=" + params.id,
    });
}
// 修改是否显示状态
export function UpdateIsShow(params) {
    return defHttp.post<responsesmodel>({
        url: Api.UpdateIsShow + "?id=" + params.id + "&isshow=" + params.isshow,
    });
}
