From a8ad928324da550605295118681e4123a274cdef Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期一, 29 五月 2023 10:26:23 +0800 Subject: [PATCH] !9 代码生成,数据名称从后台加载 Merge pull request !9 from WangBQ/ts --- src/views/tool/gen/index.vue | 39 +++++++++++++++++++++++---------------- 1 files changed, 23 insertions(+), 16 deletions(-) diff --git a/src/views/tool/gen/index.vue b/src/views/tool/gen/index.vue index f78bb0d..5775e6a 100644 --- a/src/views/tool/gen/index.vue +++ b/src/views/tool/gen/index.vue @@ -4,7 +4,10 @@ <div class="search" v-show="showSearch"> <el-form :model="queryParams" ref="queryFormRef" :inline="true" label-width="68px"> <el-form-item label="鏁版嵁婧�" prop="dataName"> - <el-input v-model="queryParams.dataName" placeholder="璇疯緭鍏ユ暟鎹簮鍚嶇О" clearable style="width: 200px" @keyup.enter="handleQuery" /> + <el-select v-model="queryParams.dataName" filterable clearable placeholder="璇烽�夋嫨/杈撳叆鏁版嵁婧愬悕绉�" style="width: 200px"> + <el-option key="" label="鍏ㄩ儴" value="" /> + <el-option v-for="item in dataNameList" :key="item" :label="item" :value="item"> </el-option> + </el-select> </el-form-item> <el-form-item label="琛ㄥ悕绉�" prop="tableName"> <el-input v-model="queryParams.tableName" placeholder="璇疯緭鍏ヨ〃鍚嶇О" clearable style="width: 200px" @keyup.enter="handleQuery" /> @@ -58,6 +61,7 @@ <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span> </template> </el-table-column> + <el-table-column label="鏁版嵁婧�" align="center" prop="dataName" :show-overflow-tooltip="true" /> <el-table-column label="琛ㄥ悕绉�" align="center" prop="tableName" :show-overflow-tooltip="true" /> <el-table-column label="琛ㄦ弿杩�" align="center" prop="tableComment" :show-overflow-tooltip="true" /> <el-table-column label="瀹炰綋" align="center" prop="className" :show-overflow-tooltip="true" /> @@ -107,7 +111,7 @@ </template> <script setup name="Gen" lang="ts"> -import { listTable, previewTable, delTable, genCode, synchDb } from '@/api/tool/gen'; +import { listTable, previewTable, delTable, genCode, synchDb, getDataNames } from '@/api/tool/gen'; import { TableQuery, TableVO } from '@/api/tool/gen/types'; import router from '@/router'; import importTable from './importTable.vue'; @@ -124,9 +128,9 @@ const single = ref(true); const multiple = ref(true); const total = ref(0); -const tableNames = ref<Array<string>>([]); const dateRange = ref<[DateModelType, DateModelType]>(['', '']); const uniqueId = ref(""); +const dataNameList = ref<Array<string>>([]); const queryFormRef = ref(ElForm); const importRef = ref(importTable); @@ -136,7 +140,7 @@ pageSize: 10, tableName: '', tableComment: '', - dataName: "master" + dataName: "" }) const preview = ref <any>({ @@ -147,8 +151,6 @@ visible: false, title: '浠g爜棰勮' }); - -localStorage.setItem('dataName', queryParams.value.dataName); onActivated(() => { const time = route.query.t; @@ -161,6 +163,12 @@ } }) +/** 鏌ヨ澶氭暟鎹簮鍚嶇О */ +const getDataNameList = async () => { + const res = await getDataNames() + dataNameList.value = res.data; +} + /** 鏌ヨ琛ㄩ泦鍚� */ const getList = async () => { loading.value = true; @@ -171,34 +179,33 @@ } /** 鎼滅储鎸夐挳鎿嶄綔 */ const handleQuery = () => { - localStorage.setItem('dataName', queryParams.value.dataName); queryParams.value.pageNum = 1; getList(); } /** 鐢熸垚浠g爜鎿嶄綔 */ const handleGenTable = async (row?: TableVO) => { - const tbNames = row?.tableName || tableNames.value; - if (tbNames == "") { + const tbIds = row?.tableId || ids.value; + if (tbIds == "") { proxy?.$modal.msgError('璇烽�夋嫨瑕佺敓鎴愮殑鏁版嵁'); return; } if (row?.genType === "1") { - await genCode(row.tableName); + await genCode(row.tableId); proxy?.$modal.msgSuccess('鎴愬姛鐢熸垚鍒拌嚜瀹氫箟璺緞锛�' + row.genPath); } else { - proxy?.$download.zip('/tool/gen/batchGenCode?tables=' + tbNames, 'ruoyi.zip'); + proxy?.$download.zip('/tool/gen/batchGenCode?tableIdStr=' + tbIds, 'ruoyi.zip'); } } /** 鍚屾鏁版嵁搴撴搷浣� */ const handleSynchDb = async (row: TableVO) => { - const tableName = row.tableName; - await proxy?.$modal.confirm('纭瑕佸己鍒跺悓姝�"' + tableName + '"琛ㄧ粨鏋勫悧锛�'); - await synchDb(tableName); + const tableId = row.tableId; + await proxy?.$modal.confirm('纭瑕佸己鍒跺悓姝�"' + row.tableName + '"琛ㄧ粨鏋勫悧锛�'); + await synchDb(tableId); proxy?.$modal.msgSuccess('鍚屾鎴愬姛'); } /** 鎵撳紑瀵煎叆琛ㄥ脊绐� */ const openImportTable = () => { - importRef.value.show(); + importRef.value.show(queryParams.value.dataName); } /** 閲嶇疆鎸夐挳鎿嶄綔 */ const resetQuery = () => { @@ -220,7 +227,6 @@ // 澶氶�夋閫変腑鏁版嵁 const handleSelectionChange = (selection: TableVO[]) => { ids.value = selection.map(item => item.tableId); - tableNames.value = selection.map(item => item.tableName); single.value = selection.length != 1; multiple.value = !selection.length; } @@ -240,5 +246,6 @@ onMounted(() => { getList(); + getDataNameList(); }) </script> -- Gitblit v1.9.3