|
@ -40,7 +40,7 @@ |
|
|
/> |
|
|
/> |
|
|
<el-table-column |
|
|
<el-table-column |
|
|
v-slot="{ row, $index }" |
|
|
v-slot="{ row, $index }" |
|
|
v-for="(headerItem,index) in tableFields" |
|
|
v-for="(headerItem) in tableFields" |
|
|
:key="headerItem" |
|
|
:key="headerItem" |
|
|
:fixed="headerItem.tableForm?.fixed" |
|
|
:fixed="headerItem.tableForm?.fixed" |
|
|
:label="headerItem.label" :prop="headerItem.field" |
|
|
:label="headerItem.label" :prop="headerItem.field" |
|
@ -55,10 +55,10 @@ |
|
|
:rules="tableFormRules" |
|
|
:rules="tableFormRules" |
|
|
:class="tableFormRules ? '' : 'noRulesForm'"> |
|
|
:class="tableFormRules ? '' : 'noRulesForm'"> |
|
|
<!-- 字符串输入框 --> |
|
|
<!-- 字符串输入框 --> |
|
|
<el-form-item |
|
|
<el-form-item |
|
|
v-if="!headerItem?.tableForm?.type || headerItem?.tableForm?.type == 'InputString'" |
|
|
v-if="!headerItem?.tableForm?.type || headerItem?.tableForm?.type == 'InputString'" |
|
|
:prop="headerItem.field" style="display: flex;align-items: center;"> |
|
|
:prop="headerItem.field" style="display: flex;align-items: center;"> |
|
|
<el-input |
|
|
<el-input :key="headerItem.field+$index" |
|
|
v-model="row[headerItem.field]" |
|
|
v-model="row[headerItem.field]" |
|
|
clearable |
|
|
clearable |
|
|
:type="headerItem?.tableForm?.inputType" |
|
|
:type="headerItem?.tableForm?.inputType" |
|
@ -67,7 +67,7 @@ |
|
|
style="flex:1" |
|
|
style="flex:1" |
|
|
@blur="inputStringBlur(headerItem.field, $event, row)" |
|
|
@blur="inputStringBlur(headerItem.field, $event, row)" |
|
|
/> |
|
|
/> |
|
|
<el-button v-if="headerItem?.tableForm?.isInpuFocusShow" @click="inpuFocus(headerItem,row,index)"><Icon icon="ep:search" size="14"/></el-button> |
|
|
<el-button :key="headerItem.field+$index+'button'" v-if="headerItem?.tableForm?.isInpuFocusShow" @click="inpuFocus(headerItem,row,index)"><Icon icon="ep:search" size="14"/></el-button> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item v-if="headerItem?.tableForm?.type == 'slot'"> |
|
|
<el-form-item v-if="headerItem?.tableForm?.type == 'slot'"> |
|
|
<slot :row="row"></slot> |
|
|
<slot :row="row"></slot> |
|
@ -92,6 +92,7 @@ |
|
|
:prop="headerItem.field"> |
|
|
:prop="headerItem.field"> |
|
|
<el-input-number |
|
|
<el-input-number |
|
|
style="width: 100%;" |
|
|
style="width: 100%;" |
|
|
|
|
|
:key="headerItem.field+$index" |
|
|
v-model="row[headerItem.field]" |
|
|
v-model="row[headerItem.field]" |
|
|
:max="headerItem?.tableForm?.max" |
|
|
:max="headerItem?.tableForm?.max" |
|
|
:min="headerItem?.tableForm?.min" |
|
|
:min="headerItem?.tableForm?.min" |
|
@ -104,7 +105,7 @@ |
|
|
<el-form-item |
|
|
<el-form-item |
|
|
v-if="headerItem?.tableForm?.type == 'Select'" |
|
|
v-if="headerItem?.tableForm?.type == 'Select'" |
|
|
:prop="headerItem.field"> |
|
|
:prop="headerItem.field"> |
|
|
<el-select |
|
|
<el-select :key="headerItem.field+$index" |
|
|
v-model="row[headerItem.field]" |
|
|
v-model="row[headerItem.field]" |
|
|
:clearable="headerItem?.tableForm.clearable || true" |
|
|
:clearable="headerItem?.tableForm.clearable || true" |
|
|
:multiple="headerItem?.tableForm.multiple" |
|
|
:multiple="headerItem?.tableForm.multiple" |
|
@ -175,7 +176,8 @@ |
|
|
<el-form-item |
|
|
<el-form-item |
|
|
v-if="headerItem?.tableForm?.type == 'FormDate'" |
|
|
v-if="headerItem?.tableForm?.type == 'FormDate'" |
|
|
:prop="headerItem.field"> |
|
|
:prop="headerItem.field"> |
|
|
<el-date-picker |
|
|
<el-date-picker |
|
|
|
|
|
:key="headerItem.field+$index" |
|
|
v-model="row[headerItem.field]" |
|
|
v-model="row[headerItem.field]" |
|
|
:clearable="true" |
|
|
:clearable="true" |
|
|
style="width: 100%" |
|
|
style="width: 100%" |
|
@ -190,6 +192,7 @@ |
|
|
v-if="headerItem?.tableForm?.type == 'FormDateTime'" |
|
|
v-if="headerItem?.tableForm?.type == 'FormDateTime'" |
|
|
:prop="headerItem.field"> |
|
|
:prop="headerItem.field"> |
|
|
<el-date-picker |
|
|
<el-date-picker |
|
|
|
|
|
:key="headerItem.field+$index" |
|
|
type="datetime" |
|
|
type="datetime" |
|
|
:clearable="true" |
|
|
:clearable="true" |
|
|
v-model="row[headerItem.field]" |
|
|
v-model="row[headerItem.field]" |
|
|