wucl 2 سال پیش
والد
کامیت
fb68c7633b

+ 4 - 0
src/components/BaseTable/parentTable.vue

@@ -5,6 +5,8 @@
     size="medium"
     :data="data"
     :isBoard="isBoard"
+    :show-summary="showSummary"
+    :summary-method="summaryMethod"
     fit
     highlight-current-row
     :header-row-style="{ color: '#333333' }"
@@ -48,6 +50,8 @@
       default: false,
       type: Boolean,
       },
+      showSummary:false,
+      summaryMethod:null,
     },
     computed: {
       maxHeight() {

+ 51 - 5
src/views/brokerage/deduction.vue

@@ -3,7 +3,7 @@
     <div class="title-container">
       <breadcrumb id="breadcrumb-container" class="breadcrumb-container"/>
     </div>
-    <y-page-list-layout :page-list="pageData" :page-para="listQuery" :get-page-list="getList" >
+    <y-page-list-layout :page-list="pageData.records" :page-para="listQuery" :get-page-list="getList">
       <template slot="left">
         <el-input
           v-model="listQuery.userName"
@@ -13,7 +13,7 @@
         >
         </el-input>
         <el-select
-          v-model="listQuery.brokerageRule"
+          v-model="listQuery.cate"
           placeholder="结算类型"
           clearable
           filterable
@@ -46,15 +46,16 @@
         slot="table"
         style="width: 100%;"
         :showSummary="true"
+        :summary-method="getSummaries"
       >
         <el-table-column label="人员名称" align="center">
           <template slot-scope="{row}">
             <span>{{ row.userName }}</span>
           </template>
         </el-table-column>
-        <el-table-column sortable label="结算总金额(元)" align="center">
+        <el-table-column label="结算总金额(元)" align="center">
           <template slot-scope="{row}">
-            <span>{{ row.brokerageAmount}}</span>
+            <p v-html="getAmount(row)"></p>
           </template>
         </el-table-column>
         <el-table-column label="结算类型" align="center">
@@ -80,7 +81,7 @@
   import YPageListLayout from '@/components/YPageListLayout'
   import Breadcrumb from '@/components/Breadcrumb'
   export default {
-    name: 'ViewsBrokerageSequence',
+    name: 'ViewsBrokerageDeduction',
     components: {
       Breadcrumb,
       YPageListLayout,
@@ -115,6 +116,43 @@
       this.getList()
     },
     methods: {
+      getAmount(row){
+        const amount = row.brokerageAmount;
+        if (row.brokerageAmount<0){
+          return '<span style="color: red">'+amount+'</span>'
+        }else{
+          return '<span style="color: green">'+amount+'</span>'
+        }
+      },
+      getSummaries(){
+        const param = this.pageData;
+        const sums = [];
+        param.forEach((column, index) => {
+          if (index === 0) {
+            sums[index] = '合计';
+            return;
+          }
+          if (index === 1){
+            const values = param.map(item => Number(item.brokerageAmount));
+            if (!values.every(value => isNaN(value))) {
+              sums[index] = values.reduce((prev, curr) => {
+                const value = Number(curr);
+                if (!isNaN(value)) {
+                  return prev + curr;
+                } else {
+                  return prev;
+                }
+              }, 0);
+              sums[index] += '';
+            } else {
+              sums[index] = 'N/A';
+            }
+          }else {
+            sums[index] = '-';
+          }
+        });
+        return sums;
+      },
       brokerageRule(val){
         if (val === 'LAND_OTHER_RULE'){
           return '参与人员规则';
@@ -209,4 +247,12 @@
       }
     }
   }
+  /deep/ .el-table{
+    display: flex;
+    flex-direction: column;
+  }
+  /deep/ .el-table__body-wrapper{
+    order: 1;
+  }
+
 </style>

+ 1 - 1
src/views/brokerage/sequence.vue

@@ -13,7 +13,7 @@
         >
         </el-input>
         <el-select
-          v-model="listQuery.brokerageRule"
+          v-model="listQuery.cate"
           placeholder="结算类型"
           clearable
           filterable

+ 2 - 2
src/views/market/visit/detail.vue

@@ -197,7 +197,7 @@
         activeName: 'first',
         vLoading: false,
         listQuery:{},
-        customers:[]
+        customers:[],
       }
     },
     created() {
@@ -248,7 +248,7 @@
                   });
                   const back = this.$route.query.back;
                   if (back) {
-                    this.$router.push(back)
+                    this.$router.push(back);
                   }
                   this.initData();
                   this.vLoading = false

+ 3 - 4
src/views/market/visit/list.vue

@@ -161,6 +161,7 @@
           page: 1,
           size: 10,
           descs: 'id',
+          current:null
         },
         listQueryKey: 'keyword',
       }
@@ -186,10 +187,8 @@
       },
       getList() {
         const that = this
-        this.listLoading = true
-        // console.log(that.listQuery)
-        const key = {}
-        key[this.listQueryKey] = this.listQuery.description
+        this.listLoading = true;
+        const key = {};
         this.$api.visit
           .list(Object.assign({}, that.listQuery, key))
           .then((res) => {