From 769c555e33ec9977ad5235a650637d0ce9bea01d Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期二, 18 八月 2020 18:18:10 +0800 Subject: [PATCH] 代码生成添加select必填选项 --- src/main/resources/vm/vue/index.vue.vm | 60 ++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 46 insertions(+), 14 deletions(-) diff --git a/src/main/resources/vm/vue/index.vue.vm b/src/main/resources/vm/vue/index.vue.vm index 0b64a0c..b5e45f5 100644 --- a/src/main/resources/vm/vue/index.vue.vm +++ b/src/main/resources/vm/vue/index.vue.vm @@ -1,6 +1,6 @@ <template> <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px"> + <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> #foreach($column in $columns) #if($column.query) #set($dictType=$column.dictType) @@ -51,7 +51,7 @@ #end #end <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> + <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> </el-form-item> </el-form> @@ -95,6 +95,7 @@ v-hasPermi="['${moduleName}:${businessName}:export']" >瀵煎嚭</el-button> </el-col> + <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> </el-row> <el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange"> @@ -168,7 +169,7 @@ <el-input v-model="form.${field}" placeholder="璇疯緭鍏�${comment}" /> </el-form-item> #elseif($column.htmlType == "select" && "" != $dictType) - <el-form-item label="${comment}"> + <el-form-item label="${comment}" prop="${field}"> <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> <el-option v-for="dict in ${field}Options" @@ -180,10 +181,27 @@ </el-select> </el-form-item> #elseif($column.htmlType == "select" && $dictType) - <el-form-item label="${comment}"> + <el-form-item label="${comment}" prop="${field}"> <el-select v-model="form.${field}" placeholder="璇烽�夋嫨${comment}"> <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> </el-select> + </el-form-item> +#elseif($column.htmlType == "checkbox" && "" != $dictType) + <el-form-item label="${comment}"> + <el-checkbox-group v-model="form.${field}"> + <el-checkbox + v-for="dict in ${field}Options" + :key="dict.dictValue" + :label="dict.dictValue"> + {{dict.dictLabel}} + </el-checkbox> + </el-checkbox-group> + </el-form-item> +#elseif($column.htmlType == "checkbox" && $dictType) + <el-form-item label="${comment}"> + <el-checkbox-group v-model="form.${field}"> + <el-checkbox>璇烽�夋嫨瀛楀吀鐢熸垚</el-checkbox> + </el-checkbox-group> </el-form-item> #elseif($column.htmlType == "radio" && "" != $dictType) <el-form-item label="${comment}"> @@ -243,6 +261,8 @@ single: true, // 闈炲涓鐢� multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, // 鎬绘潯鏁� total: 0, // ${functionName}琛ㄦ牸鏁版嵁 @@ -269,7 +289,7 @@ pageSize: 10, #foreach ($column in $columns) #if($column.query) - $column.javaField: undefined#if($velocityCount != $columns.size()),#end + $column.javaField: null#if($velocityCount != $columns.size()),#end #end #end @@ -286,9 +306,8 @@ #else #set($comment=$column.columnComment) #end -#set($comment=$column.columnComment) $column.javaField: [ - { required: true, message: "$comment涓嶈兘涓虹┖", trigger: "blur" } + { required: true, message: "$comment涓嶈兘涓虹┖", trigger: #if($column.htmlType == "select")"change"#else"blur"#end } ]#if($velocityCount != $columns.size()),#end #end @@ -326,7 +345,7 @@ #end // $comment瀛楀吀缈昏瘧 ${column.javaField}Format(row, column) { - return this.selectDictLabel(this.${column.javaField}Options, row.${column.javaField}); + return this.selectDictLabel#if($column.htmlType == "checkbox")s#end(this.${column.javaField}Options, row.${column.javaField}); }, #end #end @@ -340,10 +359,13 @@ this.form = { #foreach ($column in $columns) #if($column.htmlType == "radio") - $column.javaField: "0"#if($velocityCount != $columns.size()),#end + $column.javaField: #if($column.javaType == "Integer" || $column.javaType == "Long")0#else"0"#end#if($velocityCount != $columns.size()),#end + +#elseif($column.htmlType == "checkbox") + $column.javaField: []#if($velocityCount != $columns.size()),#end #else - $column.javaField: undefined#if($velocityCount != $columns.size()),#end + $column.javaField: null#if($velocityCount != $columns.size()),#end #end #end @@ -363,7 +385,7 @@ // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(selection) { this.ids = selection.map(item => item.${pkColumn.javaField}) - this.single = selection.length!=1 + this.single = selection.length!==1 this.multiple = !selection.length }, /** 鏂板鎸夐挳鎿嶄綔 */ @@ -378,15 +400,25 @@ const ${pkColumn.javaField} = row.${pkColumn.javaField} || this.ids get${BusinessName}(${pkColumn.javaField}).then(response => { this.form = response.data; +#foreach ($column in $columns) +#if($column.htmlType == "checkbox") + this.form.$column.javaField = this.form.${column.javaField}.split(","); +#end +#end this.open = true; this.title = "淇敼${functionName}"; }); }, /** 鎻愪氦鎸夐挳 */ - submitForm: function() { + submitForm() { this.#[[$]]#refs["form"].validate(valid => { if (valid) { - if (this.form.${pkColumn.javaField} != undefined) { +#foreach ($column in $columns) +#if($column.htmlType == "checkbox") + this.form.$column.javaField = this.form.${column.javaField}.join(","); +#end +#end + if (this.form.${pkColumn.javaField} != null) { update${BusinessName}(this.form).then(response => { if (response.code === 200) { this.msgSuccess("淇敼鎴愬姛"); @@ -435,4 +467,4 @@ } } }; -</script> \ No newline at end of file +</script> -- Gitblit v1.9.3