import request from "@/utils/request";

// 查询生成表数据
export function listTable(query) {
  return request({
    url: "/tool/gen/list",
    method: "get",
    params: query,
  });
}
// 查询db数据库列表
export function listDbTable(query) {
  return request({
    url: "/tool/gen/db/list",
    method: "get",
    params: query,
  });
}

// 查询表详细信息
export function getGenTable(tableId) {
  return request({
    url: "/tool/gen/" + tableId,
    method: "get",
  });
}

// 修改代码生成信息
export function updateGenTable(data) {
  return request({
    url: "/tool/gen",
    method: "put",
    data: data,
  });
}

// 导入表
export function importTable(data) {
  return request({
    url: "/tool/gen/importTable",
    method: "post",
    params: data,
  });
}

// 创建表
export function createTable(data) {
  return request({
    url: "/tool/gen/createTable",
    method: "post",
    params: data,
  });
}

// 预览生成代码
export function previewTable(tableId) {
  return request({
    url: "/tool/gen/preview/" + tableId,
    method: "get",
  });
}

// 删除表数据
export function delTable(tableId) {
  return request({
    url: "/tool/gen/" + tableId,
    method: "delete",
  });
}

// 生成代码（自定义路径）
export function genCode(tableName) {
  return request({
    url: "/tool/gen/genCode/" + tableName,
    method: "get",
  });
}

// 同步数据库
export function synchDb(tableName) {
  return request({
    url: "/tool/gen/synchDb/" + tableName,
    method: "get",
  });
}
/**
 * 获取一个正式流水号，此方法会修改数据库的流水序号。
 * 在表单保存前，必须调用此方法，获取正式流水号，同时修改数据库中的流水序号。
 */

export function generateSeq(params) {
  return request({
    url: "/common/generateSeq/",
    method: "get",
    params,
  });
}
/**
 * 从后端获取一个临时流水号，此方法并不会修改数据库的流水序号。
 * 页面刚打开时，调用临时流水号。让用户可以看到一个流水号。
 */

export function generateTempSeq(params) {
  return request({
    url: "/common/generateTempSeq/",
    method: "get",
    params,
  });
}
