From 790736c98d8a7d6d1194d1e642946bc8219edcfb Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Sun, 12 Apr 2026 10:40:37 +0800
Subject: [PATCH] 新增代码生成详情页功能
---
ruoyi-ui/src/views/tool/gen/genInfoForm.vue | 95 +++++++++++++++++++++++++++++++++--------------
1 files changed, 66 insertions(+), 29 deletions(-)
diff --git a/ruoyi-ui/src/views/tool/gen/genInfoForm.vue b/ruoyi-ui/src/views/tool/gen/genInfoForm.vue
index bf6382d..3c3015f 100644
--- a/ruoyi-ui/src/views/tool/gen/genInfoForm.vue
+++ b/ruoyi-ui/src/views/tool/gen/genInfoForm.vue
@@ -12,6 +12,16 @@
</el-form-item>
</el-col>
<el-col :span="12">
+ <el-form-item prop="tplWebType">
+ <span slot="label">前端类型</span>
+ <el-select v-model="info.tplWebType">
+ <el-option label="Vue2 Element UI 模版" value="element-ui" />
+ <el-option label="Vue3 Element Plus 模版" value="element-plus" />
+ <el-option label="Vue3 Element Plus TypeScript 模版" value="element-plus-typescript" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
<el-form-item prop="packageName">
<span slot="label">
生成包路径
@@ -60,6 +70,42 @@
</el-col>
<el-col :span="12">
+ <el-form-item prop="formColNum">
+ <span slot="label">
+ 表单布局
+ <el-tooltip content="选择表单的栅格布局方式" placement="top">
+ <i class="el-icon-question"></i>
+ </el-tooltip>
+ </span>
+ <el-select v-model="info.formColNum">
+ <el-option label="单列" :value="1" />
+ <el-option label="双列" :value="2" />
+ <el-option label="三列" :value="3" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+
+ <el-col :span="12">
+ <el-form-item prop="genView">
+ <span slot="label">扩展功能</span>
+ <el-checkbox v-model="info.view">生成详情页</el-checkbox>
+ </el-form-item>
+ </el-col>
+
+ <el-col :span="12">
+ <el-form-item prop="genType">
+ <span slot="label">
+ 生成代码方式
+ <el-tooltip content="默认为zip压缩包下载,也可以自定义生成路径" placement="top">
+ <i class="el-icon-question"></i>
+ </el-tooltip>
+ </span>
+ <el-radio v-model="info.genType" label="0">zip压缩包</el-radio>
+ <el-radio v-model="info.genType" label="1">自定义路径</el-radio>
+ </el-form-item>
+ </el-col>
+
+ <el-col :span="12">
<el-form-item>
<span slot="label">
上级菜单
@@ -75,19 +121,6 @@
:show-count="true"
placeholder="请选择系统菜单"
/>
- </el-form-item>
- </el-col>
-
- <el-col :span="12">
- <el-form-item prop="genType">
- <span slot="label">
- 生成代码方式
- <el-tooltip content="默认为zip压缩包下载,也可以自定义生成路径" placement="top">
- <i class="el-icon-question"></i>
- </el-tooltip>
- </span>
- <el-radio v-model="info.genType" label="0">zip压缩包</el-radio>
- <el-radio v-model="info.genType" label="1">自定义路径</el-radio>
</el-form-item>
</el-col>
@@ -214,8 +247,8 @@
</template>
<script>
-import Treeselect from "@riophae/vue-treeselect";
-import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import Treeselect from "@riophae/vue-treeselect"
+import "@riophae/vue-treeselect/dist/vue-treeselect.css"
export default {
components: { Treeselect },
@@ -231,7 +264,7 @@
menus: {
type: Array,
default: []
- },
+ }
},
data() {
return {
@@ -251,49 +284,53 @@
],
functionName: [
{ required: true, message: "请输入生成功能名", trigger: "blur" }
- ],
+ ]
}
- };
+ }
},
- created() {},
watch: {
'info.subTableName': function(val) {
- this.setSubTableColumns(val);
+ this.setSubTableColumns(val)
+ },
+ 'info.tplWebType': function(val) {
+ if (val === '') {
+ this.info.tplWebType = "element-ui"
+ }
}
},
methods: {
/** 转换菜单数据结构 */
normalizer(node) {
if (node.children && !node.children.length) {
- delete node.children;
+ delete node.children
}
return {
id: node.menuId,
label: node.menuName,
children: node.children
- };
+ }
},
/** 选择子表名触发 */
subSelectChange(value) {
- this.info.subTableFkName = '';
+ this.info.subTableFkName = ''
},
/** 选择生成模板触发 */
tplSelectChange(value) {
if(value !== 'sub') {
- this.info.subTableName = '';
- this.info.subTableFkName = '';
+ this.info.subTableName = ''
+ this.info.subTableFkName = ''
}
},
/** 设置关联外键 */
setSubTableColumns(value) {
for (var item in this.tables) {
- const name = this.tables[item].tableName;
+ const name = this.tables[item].tableName
if (value === name) {
- this.subColumns = this.tables[item].columns;
- break;
+ this.subColumns = this.tables[item].columns
+ break
}
}
}
}
-};
+}
</script>
--
Gitblit v1.9.3