소스 검색

Finish Hotfix-81

chen 3 년 전
부모
커밋
986af9f263
2개의 변경된 파일72개의 추가작업 그리고 8개의 파일을 삭제
  1. 38 6
      src/views/finance/account_list.vue
  2. 34 2
      src/views/finance/components/account_list-detail.vue

+ 38 - 6
src/views/finance/account_list.vue

@@ -60,7 +60,7 @@
       <!-- 列表 -->
       <div class="mymain-container">
         <div class="table">
-          <el-table v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit highlight-current-row stripe show-summary :summary-method="$getSummaries">
+          <el-table v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit highlight-current-row stripe show-summary :summary-method="getSummaries">
             <el-table-column align="left" label="序号" type="index" width="80" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="月份" prop="month" min-width="100" show-overflow-tooltip></el-table-column>
             <el-table-column align="left" label="对账状态" prop="isReconciliation" min-width="100" show-overflow-tooltip>
@@ -99,7 +99,7 @@
             <el-table-column align="left" label="备注" prop="remark" min-width="160" show-overflow-tooltip></el-table-column>
             <el-table-column align="right" label="收付款金额" prop="amount" min-width="130" show-overflow-tooltip>
               <template slot-scope="scope">
-                {{ scope.row.amount | numToFixed }}
+                {{(scope.row.amountType == 'OUT'?  -scope.row.amount:scope.row.amount) | numToFixed }}
               </template>
             </el-table-column>
             <!-- <el-table-column
@@ -131,6 +131,7 @@ import {
   getWalletCustomerList,
 } from "@/api/finance/account_list";
 import AccountListDetail from "./components/account_list-detail";
+import { numToFixed } from "@/filters";
 export default {
   components: {
     AccountListDetail,
@@ -176,6 +177,37 @@ export default {
     });
   },
   methods: {
+    //合计
+    getSummaries(param) {
+      const { columns, data } = param;
+      const sums = [];
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = "合计";
+        }
+        if (index === 10) {
+          let arr = [];
+          data.forEach((v) => {
+            if (v.amountType == "OUT") {
+              arr.push(-v.amount);
+            } else {
+              arr.push(v.amount);
+            }
+          });
+
+          let a = arr.reduce((prev, curr) => {
+            const value = Number(curr);
+            if (!isNaN(value)) {
+              return prev + curr;
+            } else {
+              return prev;
+            }
+          }, 0);
+          sums[index] = numToFixed(a);
+        }
+      });
+      return sums;
+    },
     //清空
     clearFn() {
       this.$refs.searchForm.resetFields();
@@ -226,10 +258,10 @@ export default {
     //获取列表
     async getDataList(data) {
       let res = await getFinanceStandingBookList(data);
-      res.data.records.forEach((item) => {
-        item.sums1 = [];
-        item.sums2 = ["amount"];
-      });
+      // res.data.records.forEach((item) => {
+      //   item.sums1 = [];
+      //   item.sums2 = ["amount"];
+      // });
       this.dataList = res.data.records;
       this.listTotal = res.data.total;
     },

+ 34 - 2
src/views/finance/components/account_list-detail.vue

@@ -59,7 +59,7 @@
     <!-- 列表 -->
     <div class="mymain-container">
       <div class="table">
-        <el-table v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit highlight-current-row stripe show-summary :summary-method="$getSummaries">
+        <el-table v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit highlight-current-row stripe show-summary :summary-method="getSummaries">
           <el-table-column align="left" label="序号" type="index" width="80" show-overflow-tooltip></el-table-column>
           <el-table-column align="left" label="月份" prop="month" min-width="100" show-overflow-tooltip></el-table-column>
           <el-table-column align="left" label="对账状态" prop="isReconciliation" min-width="100" show-overflow-tooltip>
@@ -98,7 +98,7 @@
           <el-table-column align="left" label="备注" prop="remark" min-width="160" show-overflow-tooltip></el-table-column>
           <el-table-column align="right" label="收付款金额" prop="amount" min-width="130" show-overflow-tooltip>
             <template slot-scope="scope">
-              {{ scope.row.amount | numToFixed }}
+              {{(scope.row.amountType == 'OUT'?  -scope.row.amount:scope.row.amount) | numToFixed }}
             </template>
           </el-table-column>
           <!-- <el-table-column
@@ -125,6 +125,7 @@ import {
   getCustomerList,
   getWalletCustomerList,
 } from "@/api/finance/account_list";
+import { numToFixed } from "@/filters";
 export default {
   data() {
     return {
@@ -156,6 +157,37 @@ export default {
     });
   },
   methods: {
+    //合计
+    getSummaries(param) {
+      const { columns, data } = param;
+      const sums = [];
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = "合计";
+        }
+        if (index === 10) {
+          let arr = [];
+          data.forEach((v) => {
+            if (v.amountType == "OUT") {
+              arr.push(-v.amount);
+            } else {
+              arr.push(v.amount);
+            }
+          });
+
+          let a = arr.reduce((prev, curr) => {
+            const value = Number(curr);
+            if (!isNaN(value)) {
+              return prev + curr;
+            } else {
+              return prev;
+            }
+          }, 0);
+          sums[index] = numToFixed(a);
+        }
+      });
+      return sums;
+    },
     //清空
     clearFn() {
       this.$refs.searchForm.resetFields();