RuoYi
2026-04-12 790736c98d8a7d6d1194d1e642946bc8219edcfb
ruoyi-ui/src/views/tool/gen/importTable.vue
@@ -1,13 +1,12 @@
<template>
  <!-- 导入表 -->
  <el-dialog title="导入表" :visible.sync="visible" width="800px" top="5vh" append-to-body>
    <el-form :model="queryParams" ref="queryForm" :inline="true">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
      <el-form-item label="表名称" prop="tableName">
        <el-input
          v-model="queryParams.tableName"
          placeholder="请输入表名称"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
@@ -16,7 +15,6 @@
          v-model="queryParams.tableComment"
          placeholder="请输入表描述"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
@@ -49,7 +47,7 @@
</template>
<script>
import { listDbTable, importTable } from "@/api/tool/gen";
import { listDbTable, importTable } from "@/api/tool/gen"
export default {
  data() {
    return {
@@ -68,50 +66,55 @@
        tableName: undefined,
        tableComment: undefined
      }
    };
    }
  },
  methods: {
    // 显示弹框
    show() {
      this.getList();
      this.visible = true;
      this.getList()
      this.visible = true
    },
    clickRow(row) {
      this.$refs.table.toggleRowSelection(row);
      this.$refs.table.toggleRowSelection(row)
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.tables = selection.map(item => item.tableName);
      this.tables = selection.map(item => item.tableName)
    },
    // 查询表数据
    getList() {
      listDbTable(this.queryParams).then(res => {
        if (res.code === 200) {
          this.dbTableList = res.rows;
          this.total = res.total;
          this.dbTableList = res.rows
          this.total = res.total
        }
      });
      })
    },
    /** 搜索按钮操作 */
    handleQuery() {
      this.queryParams.pageNum = 1;
      this.getList();
      this.queryParams.pageNum = 1
      this.getList()
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.resetForm("queryForm");
      this.handleQuery();
      this.resetForm("queryForm")
      this.handleQuery()
    },
    /** 导入按钮操作 */
    handleImportTable() {
      importTable({ tables: this.tables.join(",") }).then(res => {
        this.msgSuccess(res.msg);
      const tableNames = this.tables.join(",")
      if (tableNames == "") {
        this.$modal.msgError("请选择要导入的表")
        return
      }
      importTable({ tables: tableNames, tplWebType: 'element-ui' }).then(res => {
        this.$modal.msgSuccess(res.msg)
        if (res.code === 200) {
          this.visible = false;
          this.$emit("ok");
          this.visible = false
          this.$emit("ok")
        }
      });
      })
    }
  }
};
}
</script>