From 06bc04c04c120b2e89a661c36b6316b99c1ad6ea Mon Sep 17 00:00:00 2001 From: LiuHao <liuhaoai545@gmail.com> Date: 星期二, 06 六月 2023 16:27:48 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- src/views/tool/gen/index.vue | 93 ++++++++++++++++++++++++---------------------- 1 files changed, 49 insertions(+), 44 deletions(-) diff --git a/src/views/tool/gen/index.vue b/src/views/tool/gen/index.vue index eb12c3e..5775e6a 100644 --- a/src/views/tool/gen/index.vue +++ b/src/views/tool/gen/index.vue @@ -1,38 +1,39 @@ <template> <div class="p-2"> <transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave"> - <div class="mb-[10px]" v-show="showSearch"> - <el-card shadow="hover"> - <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-form-item> - <el-form-item label="琛ㄥ悕绉�" prop="tableName"> - <el-input v-model="queryParams.tableName" placeholder="璇疯緭鍏ヨ〃鍚嶇О" clearable style="width: 200px" @keyup.enter="handleQuery" /> - </el-form-item> - <el-form-item label="琛ㄦ弿杩�" prop="tableComment"> - <el-input v-model="queryParams.tableComment" placeholder="璇疯緭鍏ヨ〃鎻忚堪" clearable style="width: 200px" @keyup.enter="handleQuery" /> - </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿" style="width: 308px"> - <el-date-picker - v-model="dateRange" - value-format="YYYY-MM-DD" - type="daterange" - range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - ></el-date-picker> - </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-card> + <div class="search" v-show="showSearch"> + <el-form :model="queryParams" ref="queryFormRef" :inline="true" label-width="68px"> + <el-form-item label="鏁版嵁婧�" prop="dataName"> + <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" /> + </el-form-item> + <el-form-item label="琛ㄦ弿杩�" prop="tableComment"> + <el-input v-model="queryParams.tableComment" placeholder="璇疯緭鍏ヨ〃鎻忚堪" clearable style="width: 200px" @keyup.enter="handleQuery" /> + </el-form-item> + <el-form-item label="鍒涘缓鏃堕棿" style="width: 308px"> + <el-date-picker + v-model="dateRange" + value-format="YYYY-MM-DD" + type="daterange" + range-separator="-" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + ></el-date-picker> + </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> </div> </transition> - <el-card shadow="hover"> + <el-card shadow="never"> <template #header> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> @@ -60,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" /> @@ -109,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'; @@ -126,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); @@ -138,7 +140,7 @@ pageSize: 10, tableName: '', tableComment: '', - dataName: "master" + dataName: "" }) const preview = ref <any>({ @@ -149,8 +151,6 @@ visible: false, title: '浠g爜棰勮' }); - -localStorage.setItem('dataName', queryParams.value.dataName); onActivated(() => { const time = route.query.t; @@ -163,6 +163,12 @@ } }) +/** 鏌ヨ澶氭暟鎹簮鍚嶇О */ +const getDataNameList = async () => { + const res = await getDataNames() + dataNameList.value = res.data; +} + /** 鏌ヨ琛ㄩ泦鍚� */ const getList = async () => { loading.value = true; @@ -173,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 = () => { @@ -222,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; } @@ -242,5 +246,6 @@ onMounted(() => { getList(); + getDataNameList(); }) </script> -- Gitblit v1.9.3