From 64d172717748c383a5c88348037354bffd60f966 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 27 五月 2025 17:52:03 +0800
Subject: [PATCH] 页面样式修改

---
 src/views/tool/gen/importTable.vue |  126 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 126 insertions(+), 0 deletions(-)

diff --git a/src/views/tool/gen/importTable.vue b/src/views/tool/gen/importTable.vue
new file mode 100644
index 0000000..b28eacb
--- /dev/null
+++ b/src/views/tool/gen/importTable.vue
@@ -0,0 +1,126 @@
+<template>
+  <!-- 瀵煎叆琛� -->
+  <el-dialog title="瀵煎叆琛�" v-model="visible" width="800px" top="5vh" append-to-body>
+    <el-form :model="queryParams" ref="queryRef" :inline="true">
+      <el-form-item label="琛ㄥ悕绉�" prop="tableName">
+        <el-input
+          v-model="queryParams.tableName"
+          placeholder="璇疯緭鍏ヨ〃鍚嶇О"
+          clearable
+          style="width: 180px"
+          @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="琛ㄦ弿杩�" prop="tableComment">
+        <el-input
+          v-model="queryParams.tableComment"
+          placeholder="璇疯緭鍏ヨ〃鎻忚堪"
+          clearable
+          style="width: 180px"
+          @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">鎼滅储</el-button>
+        <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button>
+      </el-form-item>
+    </el-form>
+    <el-row>
+      <el-table @row-click="clickRow" ref="table" :data="dbTableList" @selection-change="handleSelectionChange" height="260px">
+        <el-table-column type="selection" width="55"></el-table-column>
+        <el-table-column prop="tableName" label="琛ㄥ悕绉�" :show-overflow-tooltip="true"></el-table-column>
+        <el-table-column prop="tableComment" label="琛ㄦ弿杩�" :show-overflow-tooltip="true"></el-table-column>
+        <el-table-column prop="createTime" label="鍒涘缓鏃堕棿"></el-table-column>
+        <el-table-column prop="updateTime" label="鏇存柊鏃堕棿"></el-table-column>
+      </el-table>
+      <pagination
+        v-show="total>0"
+        :total="total"
+        v-model:page="queryParams.pageNum"
+        v-model:limit="queryParams.pageSize"
+        @pagination="getList"
+      />
+    </el-row>
+    <template #footer>
+      <div class="dialog-footer">
+        <el-button type="primary" @click="handleImportTable">纭� 瀹�</el-button>
+        <el-button @click="visible = false">鍙� 娑�</el-button>
+      </div>
+    </template>
+  </el-dialog>
+</template>
+
+<script setup>
+import { listDbTable, importTable } from "@/api/tool/gen"
+
+const total = ref(0)
+const visible = ref(false)
+const tables = ref([])
+const dbTableList = ref([])
+const { proxy } = getCurrentInstance()
+
+const queryParams = reactive({
+  pageNum: 1,
+  pageSize: 10,
+  tableName: undefined,
+  tableComment: undefined
+})
+
+const emit = defineEmits(["ok"])
+
+/** 鏌ヨ鍙傛暟鍒楄〃 */
+function show() {
+  getList()
+  visible.value = true
+}
+
+/** 鍗曞嚮閫夋嫨琛� */
+function clickRow(row) {
+  proxy.$refs.table.toggleRowSelection(row)
+}
+
+/** 澶氶�夋閫変腑鏁版嵁 */
+function handleSelectionChange(selection) {
+  tables.value = selection.map(item => item.tableName)
+}
+
+/** 鏌ヨ琛ㄦ暟鎹� */
+function getList() {
+  listDbTable(queryParams).then(res => {
+    dbTableList.value = res.rows
+    total.value = res.total
+  })
+}
+
+/** 鎼滅储鎸夐挳鎿嶄綔 */
+function handleQuery() {
+  queryParams.pageNum = 1
+  getList()
+}
+
+/** 閲嶇疆鎸夐挳鎿嶄綔 */
+function resetQuery() {
+  proxy.resetForm("queryRef")
+  handleQuery()
+}
+
+/** 瀵煎叆鎸夐挳鎿嶄綔 */
+function handleImportTable() {
+  const tableNames = tables.value.join(",")
+  if (tableNames == "") {
+    proxy.$modal.msgError("璇烽�夋嫨瑕佸鍏ョ殑琛�")
+    return
+  }
+  importTable({ tables: tableNames }).then(res => {
+    proxy.$modal.msgSuccess(res.msg)
+    if (res.code === 200) {
+      visible.value = false
+      emit("ok")
+    }
+  })
+}
+
+defineExpose({
+  show,
+})
+</script>

--
Gitblit v1.9.3