|
@@ -156,7 +156,7 @@
|
|
|
align="center"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.totalEnTonnage"></el-input>
|
|
|
+ <el-input type="number" v-model="scope.row.totalEnTonnage"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -169,16 +169,23 @@
|
|
|
<el-table-column
|
|
|
prop="inspectionFees"
|
|
|
label="水分检测费"
|
|
|
- width="100px"
|
|
|
+ width="120px"
|
|
|
align="center"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.inspectionFees"></el-input>
|
|
|
+ <el-input type="number" v-model="scope.row.inspectionFees"></el-input>
|
|
|
</template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="statementTotalAmount"
|
|
|
+ label="总计开票金额"
|
|
|
+ width="100px"
|
|
|
+ align="center"
|
|
|
+ >
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
prop="fee"
|
|
|
- label="金额(元)"
|
|
|
+ label="水运费"
|
|
|
width="100px"
|
|
|
align="center"
|
|
|
>
|
|
@@ -186,11 +193,11 @@
|
|
|
<el-table-column
|
|
|
prop="previewTonnage"
|
|
|
label="已预开票吨位"
|
|
|
- width="100px"
|
|
|
+ width="120px"
|
|
|
align="center"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.previewTonnage"></el-input>
|
|
|
+ <el-input type="number" v-model="scope.row.previewTonnage"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -397,6 +404,7 @@
|
|
|
<script>
|
|
|
import { getCookie } from "@/utils/util.js";
|
|
|
import { sjTime } from "@/utils/sharedJsFile";
|
|
|
+import BigNumber, {bigNumber} from "bignumber.js"
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
@@ -419,7 +427,9 @@ export default {
|
|
|
"totalEnTonnage",
|
|
|
"operate",
|
|
|
"statementTotalAmount",
|
|
|
- "makeTonnageTotal"
|
|
|
+ "makeTonnageTotal",
|
|
|
+ "previewTonnage",
|
|
|
+ "previewFee"
|
|
|
],
|
|
|
activeName: "first",
|
|
|
tableTitle: "结算账单报表",
|
|
@@ -438,8 +448,8 @@ export default {
|
|
|
},
|
|
|
tableData1: {
|
|
|
handler(newVal) {
|
|
|
- console.log("执行一次汇总函数");
|
|
|
- this.computedTableData1(newVal);
|
|
|
+ //console.log("执行一次汇总函数");
|
|
|
+ //this.computedTableData1(newVal);
|
|
|
},
|
|
|
deep: true,
|
|
|
immediate: false
|
|
@@ -453,14 +463,11 @@ export default {
|
|
|
let arr = this.tableData.filter(e => {
|
|
|
return e.batchId == row.batchId && e.noticeTime==row.noticeTime;
|
|
|
});
|
|
|
- let statementTotalAmount = this.tableData.reduce((pre, item) => {
|
|
|
- return pre + parseFloat(item.actuallyMoney);
|
|
|
- }, 0);
|
|
|
let map = {
|
|
|
list: arr,
|
|
|
statementType: 3,
|
|
|
totalEnTonnage: row.totalEnTonnage,
|
|
|
- statementTotalAmount: statementTotalAmount.toFixed(2),
|
|
|
+ statementTotalAmount: row.statementTotalAmount,
|
|
|
userID: getCookie("userId"),
|
|
|
statementStatus:1
|
|
|
};
|
|
@@ -484,14 +491,11 @@ export default {
|
|
|
let arr = this.tableData.filter(e => {
|
|
|
return e.batchId == row.batchId && e.noticeTime==row.noticeTime;
|
|
|
});
|
|
|
- let statementTotalAmount = this.tableData.reduce((pre, item) => {
|
|
|
- return pre + parseFloat(item.actuallyMoney);
|
|
|
- }, 0);
|
|
|
let map = {
|
|
|
list: arr,
|
|
|
statementType: 3,
|
|
|
totalEnTonnage: row.totalEnTonnage,
|
|
|
- statementTotalAmount: statementTotalAmount.toFixed(2),
|
|
|
+ statementTotalAmount: row.statementTotalAmount,
|
|
|
userID: getCookie("userId")
|
|
|
};
|
|
|
console.log("map:",map);
|
|
@@ -511,7 +515,7 @@ export default {
|
|
|
computedTableData(data) {
|
|
|
data.forEach((item, index) => {
|
|
|
if (index == 0) {
|
|
|
- } else if (item.batchId == data[index - 1].batchId) {
|
|
|
+ } else if (item.batchId == data[index - 1].batchId && item.noticeTime == data[index - 1].noticeTime) {
|
|
|
item.totalEnTonnage = data[index - 1].totalEnTonnage;
|
|
|
}
|
|
|
//预开金额
|
|
@@ -527,8 +531,26 @@ export default {
|
|
|
//实际开票金额
|
|
|
item.actuallyMoney = (item.makeTonnage * item.unitPrice-item.inspectionFees).toFixed(2);
|
|
|
});
|
|
|
+ this.computedTotal(data);
|
|
|
this.getSpanArr(this.tableData);
|
|
|
},
|
|
|
+ //遍历,汇总
|
|
|
+ computedTotal(data){
|
|
|
+ data.forEach((item, index) => {
|
|
|
+ let arr = data.filter(e => {
|
|
|
+ return e.batchId == item.batchId && e.noticeTime==item.noticeTime;
|
|
|
+ });
|
|
|
+ let inspectionFees=arr.reduce((pre, item1) => {
|
|
|
+ console.log("parseFloat(item1.inspectionFees).toFixed(2)",parseFloat(item1.inspectionFees).toFixed(2));
|
|
|
+ if(item1.inspectionFees)
|
|
|
+ return pre.plus(new BigNumber(item1.inspectionFees));
|
|
|
+ else
|
|
|
+ return pre.plus(0.0);
|
|
|
+ }, new BigNumber(0.0));
|
|
|
+ console.log("inspectionFees:",inspectionFees.toNumber());
|
|
|
+ item.statementTotalAmount=((item.totalEnTonnage-item.previewTonnage)*item.unitPrice-inspectionFees.toNumber()).toFixed(2);
|
|
|
+ });
|
|
|
+ },
|
|
|
//根据表格据汇总顶部展示
|
|
|
getTotalArr(data) {
|
|
|
this.totalWillTonageedValue = data.reduce((pre, item) => {
|