<template>
|
<div>
|
<el-button @click="HandlerRend" size="small" type="primary">保存</el-button>
|
<el-table
|
v-loading="isLoading"
|
:data="tableData"
|
max-height="700"
|
style=""
|
@cell-click="handleCellClick"
|
>
|
<el-table-column fixed type="selection" width="55"> </el-table-column>
|
<el-table-column fixed label="序号" type="index" width="55">
|
</el-table-column>
|
<el-table-column
|
v-for="item in this.tableHeadData"
|
:key="item.id"
|
:label="item.label"
|
:prop="item.prop"
|
:sortable="item.sortable"
|
:formatter="item.formatter"
|
:width="item.label.length >=4 ?'150':item.label.length==3 ?'120':'90'"
|
:show-overflow-tooltip="true"
|
align="center"
|
>
|
<!-- 编辑和展示逻辑 -->
|
<!-- <template slot-scope="{ row }">-->
|
<!-- <el-input v-if="editingRow === row && editShow== item.prop" v-model="row[item.prop]" @blur="saveRow"></el-input>-->
|
<!-- <span v-else>{{row[item.prop]}}</span>-->
|
<!-- <el-switch-->
|
<!-- v-if="editShow === 'true'"-->
|
<!-- v-model="row[item.prop]"-->
|
<!-- active-color="#13ce66"-->
|
<!-- inactive-color="#ff4949">-->
|
<!-- </el-switch>-->
|
<!-- </template>-->
|
</el-table-column>
|
</el-table>
|
</div>
|
</template>
|
|
<script>
|
import {businese} from '@/api/work/businese'
|
import {FlowTable} from "@/api/GetItem";
|
import {validatenull} from "@/util/validate";
|
export default {
|
name: "BusinessWork",
|
props:['ids','templateId',"taskId","modelKey","codeClassifyOid"],
|
data() {
|
return {
|
BuinessOids:[],
|
isLoading:false,
|
tableHeadData:[],
|
tableData:[],
|
editingRow: null,
|
editShow: "",
|
editAttr: ""
|
}
|
},
|
watch:{
|
ids:{
|
handler(newval,oldval){
|
this.BuinessOids=newval;
|
this.BuinseseRend()
|
console.log(newval)
|
console.log(this.BuinessOids)
|
},
|
deep:true
|
}
|
},
|
created() {
|
},
|
mounted() {
|
},
|
methods:{
|
HandlerRend(){
|
this.editingRow = null;
|
},
|
//表格头渲染
|
CrudHeaderRend() {
|
if (this.codeClassifyOid != "") {
|
FlowTable({
|
templateId: this.templateId,
|
taskId : this.taskId ,
|
modelKey: this.modelKey,
|
codeClassifyOid: this.codeClassifyOid
|
}).then((res) => {
|
this.options = res.data.tableDefineVO.seniorQueryColumns;
|
this.List = res.data.tableDefineVO.cols[0];
|
this.tableHeadData=[];
|
this.List.forEach((item) => {
|
let columnItem = {
|
label: item.title,
|
prop: item.field,
|
type: this.columnType[item.type],
|
sortable: item.sort,
|
width: item.minWidth
|
};
|
if(item.field == 'id' && validatenull(item.templet)){
|
//企业编码的默认添加超链接,暂未实现
|
columnItem.formatter = '';
|
}else {
|
if (item.templet && typeof (item.templet) == 'string' && !validatenull(item.templet) && item.templet.indexOf("function(row,column)") > -1) {
|
columnItem.formatter = eval("(" + item.templet + ")");
|
} else if (item.fieldType == "truefalse") {
|
columnItem.formatter = function (row, column) {
|
return row[column.property] == 'true' || row[column.property] == '1' ? '是' : '否'
|
}
|
}
|
}
|
this.tableHeadData.push(columnItem)
|
});
|
});
|
}
|
},
|
//表格数据
|
BuinseseRend(){
|
businese({
|
btmType:'wupin',
|
'conditionMap[oid]':this.BuinessOids.toString()
|
}).then(res=>{
|
this.tableData = res.data.data;
|
})
|
},
|
// 监听单元格点击事件并存储正在编辑的行
|
handleCellClick(row, column) {
|
this.editingRow = row;
|
this.editShow = column.property;
|
},
|
}
|
}
|
</script>
|
|
<style scoped>
|
|
</style>
|