| | |
| | | align="center" |
| | | > |
| | | <template slot-scope="{ row }"> |
| | | <el-input v-if="editingRow === row && editShow== item.prop && item.edit == 'text'" v-model="row[item.prop]" |
| | | <el-input |
| | | v-if="editingRow === row && editShow== item.prop && item.edit == 'input'" v-model="row[item.prop]" |
| | | @blur="editingRows=null"></el-input> |
| | | <el-input-number size="small" controls-position="right" v-if="editingRow === row && editShow== item.prop && item.edit == 'number'" v-model="row[item.prop]" |
| | | <el-input-number size="small" controls-position="right" |
| | | v-if="editingRow === row && editShow== item.prop && item.edit == 'number'" v-model="row[item.prop]" |
| | | @blur="editingRows=null" :style="{width:(item.width-10)+'px'}"></el-input-number> |
| | | <el-select v-model="row[item.prop]" filterable allow-create default-first-option slot="prepend" v-if="editingRow === row && editShow== item.prop && item.edit == 'select' " @blur="editingRows=null"> |
| | | <el-select filterable default-first-option slot="prepend" @change="changeSelect" |
| | | v-if="editingRow === row && editShow== item.prop && item.edit == 'select' " v-model="row[item.prop]" @blur="editingRows=null"> |
| | | <el-option |
| | | v-for="optionItem in item.dicData" |
| | | :key="optionItem.dictValue" |
| | | :label="optionItem.dictValue" |
| | | :value="optionItem.dictValue"> |
| | | :key="optionItem.key" |
| | | :label="optionItem.value" |
| | | :value="optionItem.key"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-switch |
| | | v-if="item.edit === 'switch' || item.edit === 'truefalse'" v-model="row[item.prop]" active-value="true" |
| | | v-if="editingRow === row && editShow== item.prop && (item.edit === 'switch' || item.edit === 'truefalse')" v-model="row[item.prop]" active-value="true" |
| | | inactive-value="false"> |
| | | </el-switch> |
| | | <el-date-picker |
| | | v-if="editingRow === row && editShow== item.prop && (item.edit == 'date' || item.edit == 'datetime') " v-model="row[item.prop]" @blur="editingRows=null" |
| | | :type="item.edit" :format="item.dateFormate" :value-format="item.dateFormate" |
| | | placeholder="选择日期"> |
| | | </el-date-picker> |
| | | <vciWebRefer v-if="editingRow === row && editShow== item.prop && item.edit == 'refer'" |
| | | :referConfig="item.referConfig || {}" |
| | | :value="row[item.referConfig.field] || row[item.prop]" |
| | | :text="row[item.referConfig.showField]" |
| | | :text="row[item.referConfig.showField]" :disabled="item.disabled" :display="item.display" |
| | | @setReferValue="setReferValue" |
| | | ></vciWebRefer> |
| | | <span v-else v-html="formatter(row,item)"></span> |
| | |
| | | this.List = res.data.tableDefineVO.cols[0]; |
| | | this.tableHeadData=[]; |
| | | this.List.forEach((item) => { |
| | | let editAttr=this.stageAttrs.filter(stageitem => stageitem.attrId == item.field); |
| | | let editAttr=this.stageAttrs.filter(stageitem => stageitem.attrId == item.field || (item.fieldType=='combox' && stageitem.attrId+'Text' == item.field)|| (item.fieldType=='refer' && stageitem.attrId+'name' == item.field)); |
| | | let columnItem = { |
| | | label: item.title, |
| | | prop: item.field, |
| | |
| | | |
| | | } |
| | | if(editAttr.length>0) { |
| | | editAttr=editAttr[0] |
| | | columnItem.edit= 'text';//this.columnType[editAttr.edit] |
| | | if (typeof editAttr.editConfig == "string") { |
| | | columnItem.editConfig = eval("(" + item.editConfig + ")"); |
| | | } else { |
| | | columnItem.editConfig = item.editConfig |
| | | } |
| | | if (item.edit == 'select') { |
| | | columnItem.edit= this.columnType[item.fieldType] |
| | | if (columnItem.edit == 'select') { |
| | | //需要获取下拉框数据 |
| | | columnItem.dicData = columnItem.editConfig.comboxConfig.data || this.geDictData(columnItem.editConfig.comboxConfig.comboxKey) |
| | | columnItem.dicData = item.data || this.geDictData(item.comboxKey) |
| | | columnItem.formatter = function (row, column) { |
| | | let d=column.dicData.find((value, keys, arr) => { |
| | | return value.key == row[column.prop.replace('Text','')]; |
| | | }) |
| | | return row[column.prop] =(d && d.value) || row[column.prop] |
| | | } |
| | | } |
| | | if (item.edit == 'refer') { |
| | | if (columnItem.edit == 'refer') { |
| | | columnItem.referConfig = { |
| | | title: item.title, |
| | | showField: item.showField || item.field, |
| | | field: item.field, |
| | | options: columnItem.editConfig.referConfig |
| | | field: item.sortField || item.field, |
| | | options: item.referConfig |
| | | } |
| | | columnItem.display=!item.hidden; |
| | | columnItem.disabled=item.readOnly |
| | | } |
| | | } |
| | | |
| | |
| | | this.editingRow[data.field] = data.value || ""; |
| | | this.editingRow[data.showField] = data.text || ""; |
| | | } |
| | | }, |
| | | changeSelect(data){ |
| | | this.editingRow[this.editShow.replace('Text','')] = data; |
| | | } |
| | | } |
| | | } |