<template>
|
<div class="print-list">
|
<div v-for="(item, i) in orderList" :key="i" class="break-page">
|
<div ref="orderTable" class="print-item">
|
<el-row :gutter="10" class="mb-15">
|
<el-col :span="24">
|
<div class="area-text">
|
{{ item.warehouseName || '' }}/{{
|
item.warehouseLocationCode || ''
|
}}
|
</div>
|
</el-col>
|
<el-col :span="8">
|
<div class="desc-info">
|
<div>姓名:</div>
|
<div class="desc-info__value">{{ item.customer }}</div>
|
</div>
|
</el-col>
|
<el-col :span="8">
|
<div class="desc-info">
|
<div>电话:</div>
|
<div class="desc-info__value">{{ item.customerTel }}</div>
|
</div>
|
</el-col>
|
<el-col :span="24">
|
<div class="desc-info">
|
<div>收货地址:</div>
|
<div class="desc-info__value">
|
{{ item.customerProvince }}{{ item.customerCity
|
}}{{ item.customerRegion }}{{ item.customerAddress }}
|
</div>
|
</div>
|
</el-col>
|
</el-row>
|
<el-table-print
|
:data="item.items"
|
:summary-method="getSummaries.bind(this, item.totalAmount)"
|
show-summary
|
border
|
style="width: 100%"
|
>
|
<el-table-column label="序号" type="index"></el-table-column>
|
<el-table-column
|
prop="orderNo"
|
label="订单号"
|
align="center"
|
></el-table-column>
|
<el-table-column
|
label="下单品种"
|
:formatter="
|
(row) => `${row.flowerName || ''} · ${row.flowerColor || ''}`
|
"
|
align="center"
|
>
|
</el-table-column>
|
<el-table-column prop="flowerLevelStr" label="等级" align="center">
|
</el-table-column>
|
<el-table-column prop="num" label="数量" align="center">
|
</el-table-column>
|
<el-table-column prop="flowerUnit" label="规格" align="center">
|
</el-table-column>
|
<el-table-column
|
prop="supplierName"
|
label="供应商名称"
|
align="center"
|
>
|
</el-table-column>
|
<el-table-column prop="stationName" label="所属集货站" align="center">
|
</el-table-column>
|
</el-table-print>
|
</div>
|
</div>
|
</div>
|
</template>
|
|
<script>
|
// import groupBy from 'lodash.groupby'
|
export default {
|
props: {
|
orderList: {
|
type: Array,
|
default: () => [],
|
},
|
},
|
computed: {
|
// groupList() {
|
// const sanhuList = this.orderList.filter((i) => !i.partnerId)
|
// const partnerList = this.orderList.filter((i) => !!i.partnerId)
|
// const sList = groupBy(sanhuList, (i) => i.createBy)
|
// const pList = groupBy(partnerList, (i) => i.partnerId)
|
// return [...Object.values(pList), ...Object.values(sList)]
|
// },
|
},
|
methods: {
|
objectSpanMethod(len, { rowIndex, columnIndex }) {
|
if (columnIndex === 0) {
|
if (rowIndex === 0) {
|
return {
|
rowspan: len,
|
colspan: 1,
|
}
|
} else {
|
return {
|
rowspan: 0,
|
colspan: 0,
|
}
|
}
|
}
|
},
|
getSummaries(totalAmount, param) {
|
const { columns, data } = param
|
const sums = []
|
columns.forEach((column, index) => {
|
if (index === 0) {
|
sums[index] = `总扎数合计:${data.reduce((total, current) => {
|
total += current.num
|
return total
|
}, 0)} 总金额:¥${totalAmount}`
|
} else {
|
sums[index] = ''
|
}
|
// if (index === 1) {
|
// sums[index] = '总扎数合计'
|
// } else if (index === 2) {
|
// sums[index] = data.reduce((total, current) => {
|
// total += current.num
|
// return total
|
// }, 0)
|
// } else {
|
// sums[index] = ''
|
// }
|
})
|
return sums
|
},
|
},
|
}
|
</script>
|