From 99e66bf11c38ebe2f21f73b956918468eae4929c Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期日, 30 六月 2024 08:02:22 +0800 Subject: [PATCH] 若依 3.8.8 --- ruoyi-ui/src/views/tool/gen/index.vue | 65 +++++++++++++++++++------------- 1 files changed, 39 insertions(+), 26 deletions(-) diff --git a/ruoyi-ui/src/views/tool/gen/index.vue b/ruoyi-ui/src/views/tool/gen/index.vue index cfc4f37..9237c30 100644 --- a/ruoyi-ui/src/views/tool/gen/index.vue +++ b/ruoyi-ui/src/views/tool/gen/index.vue @@ -1,12 +1,11 @@ <template> <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form-item label="表名称" prop="tableName"> <el-input v-model="queryParams.tableName" placeholder="请输入表名称" clearable - size="small" @keyup.enter.native="handleQuery" /> </el-form-item> @@ -15,14 +14,12 @@ v-model="queryParams.tableComment" placeholder="请输入表描述" clearable - size="small" @keyup.enter.native="handleQuery" /> </el-form-item> <el-form-item label="创建时间"> <el-date-picker v-model="dateRange" - size="small" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" @@ -44,9 +41,20 @@ plain icon="el-icon-download" size="mini" + :disabled="multiple" @click="handleGenTable" v-hasPermi="['tool:gen:code']" >生成</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="primary" + plain + icon="el-icon-plus" + size="mini" + @click="openCreateTable" + v-hasRole="['admin']" + >创建</el-button> </el-col> <el-col :span="1.5"> <el-button @@ -169,18 +177,20 @@ :name="key.substring(key.lastIndexOf('/')+1,key.indexOf('.vm'))" :key="key" > - <pre><code class="hljs" v-html="highlightedCode(value, key)"></code></pre> + <el-link :underline="false" icon="el-icon-document-copy" v-clipboard:copy="value" v-clipboard:success="clipboardSuccess" style="float:right">复制</el-link> + <pre><code class="hljs" v-html="highlightedCode(value, key)"></code></pre> </el-tab-pane> </el-tabs> </el-dialog> <import-table ref="import" @ok="handleQuery" /> + <create-table ref="create" @ok="handleQuery" /> </div> </template> <script> import { listTable, previewTable, delTable, genCode, synchDb } from "@/api/tool/gen"; import importTable from "./importTable"; -import { downLoadZip } from "@/utils/zipdownload"; +import createTable from "./createTable"; import hljs from "highlight.js/lib/highlight"; import "highlight.js/styles/github-gist.css"; hljs.registerLanguage("java", require("highlight.js/lib/languages/java")); @@ -192,7 +202,7 @@ export default { name: "Gen", - components: { importTable }, + components: { importTable, createTable }, data() { return { // 遮罩层 @@ -262,33 +272,33 @@ handleGenTable(row) { const tableNames = row.tableName || this.tableNames; if (tableNames == "") { - this.msgError("请选择要生成的数据"); + this.$modal.msgError("请选择要生成的数据"); return; } if(row.genType === "1") { genCode(row.tableName).then(response => { - this.msgSuccess("成功生成到自定义路径:" + row.genPath); + this.$modal.msgSuccess("成功生成到自定义路径:" + row.genPath); }); } else { - downLoadZip("/tool/gen/batchGenCode?tables=" + tableNames, "ruoyi"); + this.$download.zip("/tool/gen/batchGenCode?tables=" + tableNames, "ruoyi.zip"); } }, /** 同步数据库操作 */ handleSynchDb(row) { const tableName = row.tableName; - this.$confirm('确认要强制同步"' + tableName + '"表结构吗?', "警告", { - confirmButtonText: "确定", - cancelButtonText: "取消", - type: "warning" - }).then(function() { - return synchDb(tableName); + this.$modal.confirm('确认要强制同步"' + tableName + '"表结构吗?').then(function() { + return synchDb(tableName); }).then(() => { - this.msgSuccess("同步成功"); + this.$modal.msgSuccess("同步成功"); }).catch(() => {}); }, /** 打开导入表弹窗 */ openImportTable() { this.$refs.import.show(); + }, + /** 打开创建表弹窗 */ + openCreateTable() { + this.$refs.create.show(); }, /** 重置按钮操作 */ resetQuery() { @@ -301,6 +311,7 @@ previewTable(row.tableId).then(response => { this.preview.data = response.data; this.preview.open = true; + this.preview.activeName = "domain.java"; }); }, /** 高亮显示 */ @@ -309,6 +320,10 @@ var language = vmName.substring(vmName.indexOf(".") + 1, vmName.length); const result = hljs.highlight(language, code || "", true); return result.value || ' '; + }, + /** 复制代码成功 */ + clipboardSuccess() { + this.$modal.msgSuccess("复制成功"); }, // 多选框选中数据 handleSelectionChange(selection) { @@ -320,20 +335,18 @@ /** 修改按钮操作 */ handleEditTable(row) { const tableId = row.tableId || this.ids[0]; - this.$router.push({ path: '/tool/gen-edit/index', query: { tableId: tableId, pageNum: this.queryParams.pageNum } }); + const tableName = row.tableName || this.tableNames[0]; + const params = { pageNum: this.queryParams.pageNum }; + this.$tab.openPage("修改[" + tableName + "]生成配置", '/tool/gen-edit/index/' + tableId, params); }, /** 删除按钮操作 */ handleDelete(row) { const tableIds = row.tableId || this.ids; - this.$confirm('是否确认删除表编号为"' + tableIds + '"的数据项?', "警告", { - confirmButtonText: "确定", - cancelButtonText: "取消", - type: "warning" - }).then(function() { - return delTable(tableIds); + this.$modal.confirm('是否确认删除表编号为"' + tableIds + '"的数据项?').then(function() { + return delTable(tableIds); }).then(() => { - this.getList(); - this.msgSuccess("删除成功"); + this.getList(); + this.$modal.msgSuccess("删除成功"); }).catch(() => {}); } } -- Gitblit v1.9.2