<template> <ant-modal modalWidth="${modalWidth}" modalHeight="${modalHeight}" :visible="open" :modal-title="formTitle" :adjust-size="true" @cancel="cancel" > #if(${colSpans} == '1') #set($colSpanRoot = 24) #elseif(${colSpans} == '2') #set($colSpanRoot = 12) #elseif(${colSpans} == '3') #set($colSpanRoot = 8) #elseif(${colSpans} == '4') #set($colSpanRoot = 6) #else #set($colSpanRoot = 12) #end <a-form-model ref="form" :model="form" :rules="rules" slot="content" layout="vertical"> <a-row :gutter="32"> <a-col :lg="${colSpanRoot}" :md="${colSpanRoot}" :sm="24"> <a-form-model-item label="上级节点" prop="parentId"> <a-tree-select v-model="form.parentId" style="width: 100%" :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }" :tree-data="${businessName}Options" placeholder="请选择" :replaceFields="{ children: 'children', title: '${treeName}', key: 'id', value: 'id' }" tree-default-expand-all > </a-tree-select> </a-form-model-item> </a-col> </a-row> <a-row :gutter="32"> #foreach($column in $editColumns) #set( $listSize = $!{editColumns.size()}) #set( $next = $!velocityCount - 2 ) #set($dictType=$column.dictType) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($parentheseIndex=$column.columnComment.indexOf("(")) #if($parentheseIndex != -1) #set($comment=$column.columnComment.substring(0, $parentheseIndex)) #else #set($comment=$column.columnComment) #end ##这里根据不同新行概念而定,如果需要选择新行后独占一行则开启注释部分 ###if($column.isNewRow == '1' && $velocityCount !=1 && ($next>=0 && $editColumns.get($next).isNewRow != '1')) ## </a-row> ## <a-row :gutter="32"> ###end #if(${colSpans} == '1') #set($colSpan = $column.colSpan * 24) #elseif(${colSpans} == '2') #set($colSpan = $column.colSpan * 12) #elseif(${colSpans} == '3') #set($colSpan = $column.colSpan * 8) #elseif(${colSpans} == '4') #set($colSpan = $column.colSpan * 6) #else #set($colSpan = $column.colSpan * 12) #end #if($column.htmlType == "input") <a-col :span="${colSpan}"> <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-input v-model="form.${column.javaField}" placeholder="请输入${comment}"/> </a-form-model-item> </a-col> #elseif($column.htmlType == "textarea") <a-col :span="${colSpan}"> <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-textarea v-model="form.${column.javaField}" placeholder="请输入${comment}" :rows="4"/> </a-form-model-item> </a-col> #elseif(($column.htmlType == "number")) <a-col :span="${colSpan}"> <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-input-number v-model="form.${column.javaField}" :min="0" style="width: 100%"/> </a-form-model-item> </a-col> #elseif(($column.htmlType == "datetime")) <a-col :span="${colSpan}"> <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-date-picker v-model="form.${column.javaField}" valueFormat="YYYY-MM-DD" :show-today="true" placeholder="选择日期" style="width: 100%" /> </a-form-model-item> </a-col> #elseif(($column.htmlType == "time")) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-date-picker v-model="form.${column.javaField}" valueFormat="YYYY-MM-DD" :show-today="true" placeholder="选择日期" style="width: 100%" /> </a-form-model-item> </a-col> #elseif(($column.htmlType == "select") && "" != $dictType) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-select placeholder="请选择${comment}" v-model="form.${column.javaField}" :getPopupContainer=" triggerNode => { return triggerNode.parentNode || document.body } " style="width: 100%" allow-clear> <a-select-option v-for="(d, index) in ${column.javaField}Options" :key="index" :value="d.dictValue">{{ d.dictLabel }}</a-select-option> </a-select> </a-form-model-item> </a-col> #elseif(($column.htmlType == "selectMultiple") && "" != $dictType) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-select placeholder="请选择${comment}" v-model="form.${column.javaField}" :getPopupContainer=" triggerNode => { return triggerNode.parentNode || document.body } " style="width: 100%" mode="multiple" allow-clear> <a-select-option v-for="(dict, index) in ${column.javaField}Options" :key="index" :value="dict.dictValue">{{ dict.dictLabel }}</a-select-option> </a-select> </a-form-model-item> </a-col> #elseif(($column.htmlType == "radioButton") && "" != $dictType) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-radio-group v-model="form.${column.javaField}" button-style="solid"> <a-radio-button v-for="(dict, index) in ${column.javaField}Options" :key="index" :value="dict.dictValue" > {{ dict.dictLabel }} </a-radio-button> </a-radio-group> </a-form-model-item> </a-col> #elseif(($column.htmlType == "radio") && "" != $dictType) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-radio-group v-model="form.${column.javaField}"> <a-radio v-for="(dict, index) in ${column.javaField}Options" :key="index" :value="dict.dictValue" > {{ dict.dictLabel }} </a-radio> </a-radio-group> </a-form-model-item> </a-col> #elseif(($column.htmlType == "checkbox") && "" != $dictType) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <a-checkbox-group v-model="form.${column.javaField}" button-style="solid"> <a-checkbox v-for="(dict, index) in ${column.javaField}Options" :key="index" :value="dict.dictValue" > {{ dict.dictLabel }} </a-checkbox > </a-checkbox-group> </a-form-model-item> </a-col> #elseif(($column.htmlType == "user")) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <select-user v-model="form.${column.javaField}" select-model="single" /> </a-form-model-item> </a-col> #elseif(($column.htmlType == "dept")) <a-col :span="${colSpan}" > <a-form-model-item label="${comment}" prop="${column.javaField}"> <select-dept v-model="form.${column.javaField}" select-model="single" select-scope="all" /> </a-form-model-item> </a-col> #end #if($column.isNewRow == '1' && $listSize != $!velocityCount) </a-row> <a-row :gutter="32"> #end #end #if($hasAttach) <a-col :lg="24" :md="24" :sm="24"> <a-form-model-item label="附件"> <sys-upload key="1" element-id="1" form-type="add" :drag-uploader="true" :multiple="true" :file-size-limit="40" :ref="attachmentRefName" :allow-encry="false" :allow-same-name="false" :allow-preview="true" :allow-download="true" :allow-delete="true" :chunk-enabled="true" :colspan="2" :form-id="formId" :file-num-limit="10" table-name="${tableName}" @afterUpload="uploadCompleteFile" /> </a-form-model-item> </a-col> #end </a-row> </a-form-model> <template slot="footer"> <a-button :disabled="disabled" @click="cancel"> 取消 </a-button> <a-button type="primary" :disabled="disabled" @click="submitForm(true)"> 保存 </a-button> #if($hasSaveAndAddOption) <a-button type="primary" :disabled="disabled" @click="submitForm(false)"> 保存并继续添加 </a-button> #end </template> </ant-modal> </template> <script> import ${BusinessName}AddForm from './${BusinessName}Form' export default { ...${BusinessName}AddForm } </script>