按目的国家统计

This commit is contained in:
wuteng 2025-11-13 17:25:01 +08:00
parent 2529c15a3d
commit 3f2a740aba
3 changed files with 319 additions and 248 deletions

View File

@ -2,12 +2,12 @@
<div class="app-container"> <div class="app-container">
<div class="el-tabs-container"> <div class="el-tabs-container">
<el-tabs slot="pageTabs" v-model="activeTab" @tab-click="handleTabsClick"> <el-tabs slot="pageTabs" v-model="activeTab" @tab-click="handleTabsClick">
<el-tab-pane label="出货统计" name="shipment" > <el-tab-pane label="按运输方式统计" name="shipment" >
<MonthlyShipmentStatQuery @onSelect="onSelect"> </MonthlyShipmentStatQuery> <MonthlyShipmentStatQuery @onSelect="onSelect"> </MonthlyShipmentStatQuery>
</el-tab-pane> </el-tab-pane>
<!-- <el-tab-pane label="按目的国家统计" name="receiveCountry" > <el-tab-pane label="按目的国家统计" name="receiveCountry" >
<monthlyShipmentStatReceiveCountryQuery @onSelect="onSelect"> </monthlyShipmentStatReceiveCountryQuery> <monthlyShipmentStatReceiveCountryQuery @onSelect="onSelect"> </monthlyShipmentStatReceiveCountryQuery>
</el-tab-pane> --> </el-tab-pane>
<el-tab-pane label="明细列表" v-if="showDtlList" name="dtlList" > <el-tab-pane label="明细列表" v-if="showDtlList" name="dtlList" >
<!-- <PayBackRecordList :queryType="queryType" :queryInfo="queryInfo"></PayBackRecordList> --> <!-- <PayBackRecordList :queryType="queryType" :queryInfo="queryInfo"></PayBackRecordList> -->
</el-tab-pane> </el-tab-pane>

View File

@ -4,30 +4,30 @@
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;"> <el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
<!-- 查询条件:客户名称、寄件公司、销售联系人、回款联系人、运单号、账单号、账期月、收款时间、收款登记人、 --> <!-- 查询条件:客户名称、寄件公司、销售联系人、回款联系人、运单号、账单号、账期月、收款时间、收款登记人、 -->
<el-col :span="6"> <el-col :span="6">
<el-form-item label="寄件时间" prop="createTime" label-width="68px"> <el-form-item label="寄件时间" prop="createTime" label-width="68px">
<elDateAdvPicker v-model="dateTimeRange" style="z-index:9999;width:260px" ></elDateAdvPicker> <elDateAdvPicker v-model="dateTimeRange" style="z-index:9999;width:260px" ></elDateAdvPicker>
</el-form-item> </el-form-item>
<el-form-item label="客户名称" prop="custNo" label-width="68px">
<AllMonthpayAccountPicker v-model="queryParams.custNo" style="width:260px"></AllMonthpayAccountPicker>
</el-form-item>
</el-col> </el-col>
<el-col :span="18"> <el-col :span="18">
<el-form-item label="客户名称" prop="custNo"> <el-form-item label="寄件国家" prop="sendCountry">
<AllMonthpayAccountPicker v-model="queryParams.custNo" style="width:100%" ></AllMonthpayAccountPicker> <CountryPicker1 v-model="queryParams.sendCountry" :placeholder="$t('寄件国家')" ></CountryPicker1>
</el-form-item> </el-form-item>
<el-form-item label="寄件国家" prop="sendCountry"> <el-form-item label="目的国家" prop="receiveCountry">
<CountryPicker1 v-model="queryParams.sendCountry" :placeholder="$t('寄件国家')" ></CountryPicker1> <CountryPicker2 v-model="queryParams.receiveCountry" :placeholder="$t('目的国家')" ></CountryPicker2>
</el-form-item> </el-form-item>
<el-form-item label="目的国家" prop="receiveCountry">
<CountryPicker2 v-model="queryParams.receiveCountry" :placeholder="$t('目的国家')" ></CountryPicker2>
</el-form-item>
<el-form-item label="销售主管" prop="salesExecutive" > <el-form-item label="销售主管" prop="salesExecutive" >
<EmpNamePicker1 :placeholder="$t('销售主管')" v-model="queryParams.salesExecutive" ></EmpNamePicker1> <EmpNamePicker1 :placeholder="$t('销售主管')" v-model="queryParams.salesExecutive" ></EmpNamePicker1>
</el-form-item> </el-form-item>
<el-form-item label="销售联系人" prop="salesmen" > <el-form-item label="销售联系人" prop="salesmen" >
<EmpNamePicker2 :placeholder="$t('销售联系人')" v-model="queryParams.salesmen" ></EmpNamePicker2> <EmpNamePicker2 :placeholder="$t('销售联系人')" v-model="queryParams.salesmen" ></EmpNamePicker2>
</el-form-item> </el-form-item>
<el-form-item label="销售支持" prop="salesSupport" > <el-form-item label="销售支持" prop="salesSupport" >
<EmpNamePicker3 :placeholder="$t('销售支持')" v-model="queryParams.salesSupport" ></EmpNamePicker3> <EmpNamePicker3 :placeholder="$t('销售支持')" v-model="queryParams.salesSupport" ></EmpNamePicker3>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</SearchForm> </SearchForm>
@ -41,7 +41,7 @@
border border
size="mini" size="mini"
storageName="PayBackStatList_main_2505_05" storageName="MonthlyShipmentStatList_main_2511_13"
:data="emisStatList" :data="emisStatList"
:showSearch.sync="showSearch" :showSearch.sync="showSearch"
@ -205,7 +205,7 @@ export default {
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 20,
custNo: null, custNo: null,
sendCountry: null, sendCountry: null,
receiveCountry: null, receiveCountry: null,
@ -215,6 +215,7 @@ export default {
params: { params: {
beginSendDate: null, beginSendDate: null,
endSendDate: null, endSendDate: null,
statType:'1'
} }
}, },
// 表单参数 // 表单参数

View File

@ -7,11 +7,11 @@
<el-form-item label="寄件时间" prop="createTime" label-width="68px"> <el-form-item label="寄件时间" prop="createTime" label-width="68px">
<elDateAdvPicker v-model="dateTimeRange" style="z-index:9999;width:260px" ></elDateAdvPicker> <elDateAdvPicker v-model="dateTimeRange" style="z-index:9999;width:260px" ></elDateAdvPicker>
</el-form-item> </el-form-item>
<el-form-item label="客户名称" prop="custNo" label-width="68px">
<AllMonthpayAccountPicker v-model="queryParams.custNo" style="width:260px" ></AllMonthpayAccountPicker>
</el-form-item>
</el-col> </el-col>
<el-col :span="18"> <el-col :span="18">
<el-form-item label="客户名称" prop="custNo">
<AllMonthpayAccountPicker v-model="queryParams.custNo" style="width:100%" ></AllMonthpayAccountPicker>
</el-form-item>
<el-form-item label="寄件国家" prop="sendCountry"> <el-form-item label="寄件国家" prop="sendCountry">
<CountryPicker1 v-model="queryParams.sendCountry" :placeholder="$t('寄件国家')" ></CountryPicker1> <CountryPicker1 v-model="queryParams.sendCountry" :placeholder="$t('寄件国家')" ></CountryPicker1>
</el-form-item> </el-form-item>
@ -41,7 +41,7 @@
border border
size="mini" size="mini"
storageName="PayBackStatList_main_2505_05" storageName="MonthlyShipmentStatReceiveCountryList_main_2511_13"
:data="emisStatList" :data="emisStatList"
:showSearch.sync="showSearch" :showSearch.sync="showSearch"
@ -78,45 +78,61 @@
</el-table-column> </el-table-column>
<el-table-column :label="$t('总重量')" align="center" prop="totalWeight" min-width="100" /> <el-table-column :label="$t('总重量')" align="center" prop="totalWeight" min-width="100" />
<el-table-column :label="$t('销售联系人')" align="center" prop="salesmen" min-width="120" /> <el-table-column :label="$t('销售联系人')" align="center" prop="salesmen" min-width="120" />
<el-table-column :label="$t('越南')" align="center" prop="express" min-width="120" > <el-table-column :label="$t('中国')" align="center" prop="china" min-width="120" >
<el-table-column :label="$t('票数')" align="center" prop="expressTickets" min-width="120" > <el-table-column :label="$t('票数')" align="center" prop="chinaTickets" min-width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
<span @click="handleShowBillList(scope.row,1)">{{ scope.row.expressTickets }}</span> <span @click="handleShowBillList(scope.row,'0086')">{{ scope.row.chinaTickets }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="expressWeight" min-width="120" /> <el-table-column :label="$t('实际重量')" align="center" prop="chinaWeight" min-width="120" />
</el-table-column> </el-table-column>
<el-table-column :label="$t('空运')" align="center" prop="air" width="100" > <el-table-column :label="$t('越南')" align="center" prop="vietnam" min-width="120" >
<el-table-column :label="$t('票数')" align="center" prop="airTickets" min-width="120" > <el-table-column :label="$t('票数')" align="center" prop="vietnamTickets" min-width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
<span @click="handleShowBillList(scope.row,2)">{{ scope.row.airTickets }}</span> <span @click="handleShowBillList(scope.row,'0084')">{{ scope.row.vietnamTickets }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="airWeight" min-width="120" /> <el-table-column :label="$t('实际重量')" align="center" prop="vietnamWeight" min-width="120" />
</el-table-column> </el-table-column>
<el-table-column :label="$t('陆运')" align="center" prop="land" width="100" > <el-table-column :label="$t('柬埔寨')" align="center" prop="cambodia" width="100" >
<el-table-column :label="$t('票数')" align="center" prop="landTickets" min-width="120" > <el-table-column :label="$t('票数')" align="center" prop="cambodiaTickets" min-width="120" >
<template slot-scope="scope">
<span @click="handleShowBillList(scope.row,'0855')">{{ scope.row.cambodiaTickets }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="cambodiaWeight" min-width="120" />
</el-table-column>
<el-table-column :label="$t('缅甸票')" align="center" prop="myanmar" width="100" >
<el-table-column :label="$t('票数')" align="center" prop="myanmarTickets" min-width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
<span @click="handleShowBillList(scope.row,'3,5')">{{ scope.row.landTickets }}</span> <span @click="handleShowBillList(scope.row,'0095')">{{ scope.row.myanmarTickets }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="landWeight" min-width="120" /> <el-table-column :label="$t('实际重量')" align="center" prop="myanmarWeight" min-width="120" />
</el-table-column> </el-table-column>
<el-table-column :label="$t('进口')" align="center" prop="import" width="100" > <el-table-column :label="$t('孟加拉')" align="center" prop="bangladesh" width="100" >
<el-table-column :label="$t('票数')" align="center" prop="importTickets" min-width="120" > <el-table-column :label="$t('票数')" align="center" prop="bangladeshTickets" min-width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
<span @click="handleShowBillList(scope.row,'import')">{{ scope.row.importTickets }}</span> <span @click="handleShowBillList(scope.row,'0880')">{{ scope.row.bangladeshTickets }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="importWeight" min-width="120" /> <el-table-column :label="$t('实际重量')" align="center" prop="bangladeshWeight" min-width="120" />
</el-table-column> </el-table-column>
<el-table-column :label="$t('海运')" align="center" prop="sea" width="100" > <el-table-column :label="$t('老挝')" align="center" prop="lao" width="100" >
<el-table-column :label="$t('票数')" align="center" prop="seaTickets" min-width="120" > <el-table-column :label="$t('票数')" align="center" prop="laoTickets" min-width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
<span @click="handleShowBillList(scope.row,4)">{{ scope.row.seaTickets }}</span> <span @click="handleShowBillList(scope.row,'0856')">{{ scope.row.laoTickets }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="seaWeight" min-width="120" /> <el-table-column :label="$t('实际重量')" align="center" prop="laoWeight" min-width="120" />
</el-table-column>
<el-table-column :label="$t('泰国')" align="center" prop="thailand" width="100" >
<el-table-column :label="$t('票数')" align="center" prop="thailandTickets" min-width="120" >
<template slot-scope="scope">
<span @click="handleShowBillList(scope.row,'0066')">{{ scope.row.thailandTickets }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('实际重量')" align="center" prop="thailandWeight" min-width="120" />
</el-table-column> </el-table-column>
<el-table-column :label="$t('其他')" align="center" prop="other" width="100" > <el-table-column :label="$t('其他')" align="center" prop="other" width="100" >
<el-table-column :label="$t('票数')" align="center" prop="otherTickets" min-width="120" > <el-table-column :label="$t('票数')" align="center" prop="otherTickets" min-width="120" >
@ -205,7 +221,7 @@ export default {
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 20,
custNo: null, custNo: null,
sendCountry: null, sendCountry: null,
receiveCountry: null, receiveCountry: null,
@ -215,6 +231,7 @@ export default {
params: { params: {
beginSendDate: null, beginSendDate: null,
endSendDate: null, endSendDate: null,
statType:'2'
} }
}, },
// 表单参数 // 表单参数
@ -239,7 +256,7 @@ export default {
end = new Date(nextMonthFirstDay - oneDay) end = new Date(nextMonthFirstDay - oneDay)
end.setHours(23, 59, 59, 0) end.setHours(23, 59, 59, 0)
this.dateTimeRange = [timeFormat(start), timeFormat(end)] this.dateTimeRange = [timeFormat(start), timeFormat(end)]
// this.getList(); this.getList();
}, },
methods: { methods: {
initQueryParams(){ initQueryParams(){
@ -248,10 +265,10 @@ export default {
return thisQueryParams; return thisQueryParams;
}, },
handleShowBillList(row, transType) { handleShowBillList(row, receiveCountry) {
let params = { let params = {
...this.queryParams, ...this.queryParams,
transType: transType, receiveCountry: receiveCountry,
custNo: row.custNo, custNo: row.custNo,
}; };
console.log("====>params====>", params); console.log("====>params====>", params);
@ -330,208 +347,261 @@ export default {
}, },
//指定列求和 //指定列求和
getSummaries(param) { getSummaries(param) {
const { columns, data } = param; const { columns, data } = param;
const sums = []; const sums = [];
columns.forEach((column, index) => { columns.forEach((column, index) => {
if (index === 0) { if (index === 0) {
sums[index] = '合计'; sums[index] = '合计';
return; return;
} }
if ( if (
column.property === 'totalTickets' column.property === 'totalTickets'
) { ) {
const values = data.map(item => Number(item.totalTickets)); const values = data.map(item => Number(item.totalTickets));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(0); sums[index] = sums[index].toFixed(0);
} }
else if ( else if (
column.property === 'totalWeight' column.property === 'totalWeight'
) { ) {
const values = data.map(item => Number(item.totalWeight)); const values = data.map(item => Number(item.totalWeight));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(2); sums[index] = sums[index].toFixed(2);
} }
else if ( else if (
column.property === 'expressTickets' column.property === 'chinaTickets'
) { ) {
const values = data.map(item => Number(item.expressTickets)); const values = data.map(item => Number(item.chinaTickets));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(0); sums[index] = sums[index].toFixed(0);
} }
else if ( else if (
column.property === 'expressWeight' column.property === 'chinaWeight'
) { ) {
const values = data.map(item => Number(item.expressWeight)); const values = data.map(item => Number(item.chinaWeight));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(2); sums[index] = sums[index].toFixed(2);
} else if ( } else if (
column.property === 'airTickets' column.property === 'vietnamTickets'
){ ) {
const values = data.map(item => Number(item.airTickets)); const values = data.map(item => Number(item.vietnamTickets));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(0); sums[index] = sums[index].toFixed(0);
} else if( } else if (
column.property === 'airWeight' column.property === 'vietnamWeight'
){ ) {
const values = data.map(item => Number(item.airWeight)); const values = data.map(item => Number(item.vietnamWeight));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(2); sums[index] = sums[index].toFixed(2);
}else if( } else if (
column.property === 'landTickets' column.property === 'cambodiaTickets'
){ ) {
const values = data.map(item => Number(item.landTickets)); const values = data.map(item => Number(item.cambodiaTickets));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(0); sums[index] = sums[index].toFixed(0);
}else if( } else if (
column.property === 'landWeight' column.property === 'cambodiaWeight'
){ ) {
const values = data.map(item => Number(item.landWeight)); const values = data.map(item => Number(item.cambodiaWeight));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(2); sums[index] = sums[index].toFixed(2);
}else if( } else if (
column.property === 'importTickets' column.property === 'myanmarTickets'
){ ) {
const values = data.map(item => Number(item.importTickets)); const values = data.map(item => Number(item.myanmarTickets));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(0); sums[index] = sums[index].toFixed(0);
}else if( } else if (
column.property === 'importWeight' column.property === 'myanmarWeight'
){ ) {
const values = data.map(item => Number(item.importWeight)); const values = data.map(item => Number(item.myanmarWeight));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(2); sums[index] = sums[index].toFixed(2);
}else if( } else if (
column.property === 'seaTickets' column.property === 'bangladeshTickets'
){ ) {
const values = data.map(item => Number(item.seaTickets)); const values = data.map(item => Number(item.bangladeshTickets));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(0); sums[index] = sums[index].toFixed(0);
}else if( } else if (
column.property === 'seaWeight' column.property === 'bangladeshWeight'
){ ) {
const values = data.map(item => Number(item.seaWeight)); const values = data.map(item => Number(item.bangladeshWeight));
sums[index] = values.reduce((prev, curr) => { sums[index] = values.reduce((prev, curr) => {
const value = Number(curr); const value = Number(curr);
if (!isNaN(value)) { if (!isNaN(value)) {
return prev + curr; return prev + curr;
} else { } else {
return prev; return prev;
} }
}, 0); }, 0);
sums[index] = sums[index].toFixed(2); sums[index] = sums[index].toFixed(2);
}else if( }
column.property === 'otherTickets' else if (
){ column.property === 'otherTickets'
const values = data.map(item => Number(item.otherTickets)); ) {
sums[index] = values.reduce((prev, curr) => { const values = data.map(item => Number(item.otherTickets));
const value = Number(curr); sums[index] = values.reduce((prev, curr) => {
if (!isNaN(value)) { const value = Number(curr);
return prev + curr; if (!isNaN(value)) {
} else { return prev + curr;
return prev; } else {
} return prev;
}, 0); }
sums[index] = sums[index].toFixed(0); }, 0);
}else if( sums[index] = sums[index].toFixed(0);
column.property === 'otherWeight' } else if (
){ column.property === 'otherWeight'
const values = data.map(item => Number(item.otherWeight)); ) {
sums[index] = values.reduce((prev, curr) => { const values = data.map(item => Number(item.otherWeight));
const value = Number(curr); sums[index] = values.reduce((prev, curr) => {
if (!isNaN(value)) { const value = Number(curr);
return prev + curr; if (!isNaN(value)) {
} else { return prev + curr;
return prev; } else {
} return prev;
}, 0); }
sums[index] = sums[index].toFixed(2); }, 0);
} sums[index] = sums[index].toFixed(2);
}); } else if (
return sums column.property === 'laosTickets'
}, ) {
const values = data.map(item => Number(item.laosTickets));
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] = sums[index].toFixed(0);
} else if (
column.property === 'laosWeight'
) {
const values = data.map(item => Number(item.laosWeight));
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] = sums[index].toFixed(2);
} else if (
column.property === 'thailandTickets'
) {
const values = data.map(item => Number(item.thailandTickets));
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] = sums[index].toFixed(0);
} else if (
column.property === 'thailandWeight'
) {
const values = data.map(item => Number(item.thailandWeight));
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] = sums[index].toFixed(2);
}
});
return sums
},
handleExportDtl(){ handleExportDtl(){
}, },