<el-table :data="tableData" :span-method="objectSpanMethod" show-summary :summary-method="getSummaries" border style="width: 100%; margin-top: 10px">
<el-table-column prop="systemOname" label="一级指标" align="center"></el-table-column>
<el-table-column prop="systemTname" label="二级指标" align="center"></el-table-column>
<el-table-column prop="systemName" label="三级指标" width="180" align="center"></el-table-column>
<el-table-column prop="selfAss" label="自评得分" align="center"></el-table-column>
<el-table-column prop='expertCode' label="专家评估" align="center">
<template slot-scope="scope">
<span>
<el-input v-model="scope.row.expertCode" size="mini" placeholder="请输入" />
</span>
</template>
</el-table-column>
<el-table-column prop="exOpinion" label="专家意见" width="150" align="center">
<template slot-scope="scope">
<span>
<el-input v-model="scope.row.exOpinion" size="mini" placeholder="请输入" />
</span>
</template>
</el-table-column>
</el-table>
mergeCol(id, rowIndex) {
var idName = this.tableData[rowIndex][id]
if (rowIndex > 0) {
if (this.tableData[rowIndex][id] != this.tableData[rowIndex - 1][id]) {
var i = rowIndex; var num = 0
while (i < this.tableData.length) {
if (this.tableData[i][id] === idName) {
i++
num++
} else {
i = this.tableData.length
}
}
return {
rowspan: num,
colspan: 1
}
} else {
return {
rowspan: 0,
colspan: 1
}
}
} else {
let i = rowIndex; let num = 0
while (i < this.tableData.length) {
if (this.tableData[i][id] === idName) {
i++
num++
} else {
i = this.tableData.length
}
}
return {
rowspan: num,
colspan: 1
}
}
},
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
switch (columnIndex) {
case 0:
return this.mergeCol('pname', rowIndex)
case 1:
return this.mergeCol('pname', rowIndex)
case 2:
return this.mergeCol('pname', rowIndex)
}
},