|
|
|
@ -100,11 +100,14 @@ |
|
|
|
</el-form> |
|
|
|
|
|
|
|
<el-table |
|
|
|
:key="dataList.length" |
|
|
|
:height="height" |
|
|
|
:data="dataList" |
|
|
|
border |
|
|
|
style="width: 100%;" |
|
|
|
class="custom-table" |
|
|
|
:summary-method="getSummaries" |
|
|
|
show-summary |
|
|
|
@selection-change="handleSelectionChange" |
|
|
|
> |
|
|
|
<el-table-column type="selection" width="55" fixed="left" align="center"></el-table-column> |
|
|
|
@ -1063,6 +1066,31 @@ export default { |
|
|
|
this.materialIssueDataList = [] |
|
|
|
}, |
|
|
|
|
|
|
|
// 合计逻辑 |
|
|
|
// 动态计算合计值 |
|
|
|
getSummaries({ columns, data }) { |
|
|
|
const sums = []; |
|
|
|
columns.forEach((column, index) => { |
|
|
|
if (index === 0) { |
|
|
|
// 第一列显示 "汇总" |
|
|
|
sums[index] = '汇总'; |
|
|
|
return; |
|
|
|
} |
|
|
|
const columnProp = column.property; // 对应 columnProp |
|
|
|
if (['notifyQty', 'pendingQty', 'actualOntimeDelQty', 'actualTotalDelQty'].includes(columnProp)) { |
|
|
|
// 合计指定列 |
|
|
|
const total = data.reduce((sum, row) => { |
|
|
|
const value = Number(row[columnProp]) || 0; |
|
|
|
return sum + value; |
|
|
|
}, 0); |
|
|
|
sums[index] = total; // 设置总计值 |
|
|
|
} else { |
|
|
|
sums[index] = ''; // 其他列空白 |
|
|
|
} |
|
|
|
}); |
|
|
|
return sums; |
|
|
|
}, |
|
|
|
|
|
|
|
// 每页数 |
|
|
|
sizeChangeHandle (val) { |
|
|
|
this.pageSize = val |
|
|
|
|