EthnaYeh преди 7 години
родител
ревизия
74b825d80e
променени са 2 файла, в които са добавени 28 реда и са изтрити 9 реда
  1. 2 3
      src/api/gambleGameBucket.js
  2. 26 6
      src/views/gambleGameBucket/detail/index.vue

+ 2 - 3
src/api/gambleGameBucket.js

14
   })
14
   })
15
 }
15
 }
16
 
16
 
17
-export function fetchMemberRecords(data) {
18
-  const round = 1
17
+export function fetchMemberRecords(data, query = { round: 1 }) {
19
   return request({
18
   return request({
20
-    url: `/gambleGameBuckets/${data.id}/round/${round}/memberRecords`,
19
+    url: `/gambleGameBuckets/${data.id}/round/${query.round}/memberRecords`,
21
     method: 'get'
20
     method: 'get'
22
   })
21
   })
23
 }
22
 }

+ 26 - 6
src/views/gambleGameBucket/detail/index.vue

6
         </el-option>
6
         </el-option>
7
       </el-select>
7
       </el-select>
8
   </div>
8
   </div>
9
-    <el-table :data="dealing" v-loading.body="listLoading" element-loading-text="Loading" border fit highlight-current-row
9
+    <el-table :data="dealing" v-loading.body="listLoading" :summary-method="getSummaries" show-summary  element-loading-text="Loading" border fit highlight-current-row
10
       style="width: 100%">
10
       style="width: 100%">
11
       <el-table-column label="本期開獎" align="center">      
11
       <el-table-column label="本期開獎" align="center">      
12
         <el-table-column label="第一門">
12
         <el-table-column label="第一門">
111
 <script>
111
 <script>
112
 
112
 
113
 import { mapGetters, mapActions } from 'vuex'
113
 import { mapGetters, mapActions } from 'vuex'
114
-import { fetchDetails, fetchRoundCount, fetchDealingRecords } from '@/api/gambleGameBucket'
114
+import { fetchDetails, fetchRoundCount, fetchDealingRecords, fetchMemberRecords } from '@/api/gambleGameBucket'
115
 import { fetchList } from '@/api/gambleMember'
115
 import { fetchList } from '@/api/gambleMember'
116
 import _ from 'lodash'
116
 import _ from 'lodash'
117
 
117
 
134
       roundOptions: [],
134
       roundOptions: [],
135
       members: [],
135
       members: [],
136
       dealing: [],
136
       dealing: [],
137
-      bookie: []
137
+      bookie: [],
138
+      memberRecord: []
138
     }
139
     }
139
   },
140
   },
140
   props: ['bucket'],
141
   props: ['bucket'],
182
     ]),
183
     ]),
183
     getList() {
184
     getList() {
184
       this.listLoading = true
185
       this.listLoading = true
185
-      let detailTemp, dealingTemp
186
+      let detailTemp, dealingTemp, memberRecordTemp
186
       this.detail = []
187
       this.detail = []
187
       fetchDealingRecords(this.bucket, this.listQuery).then(response => {
188
       fetchDealingRecords(this.bucket, this.listQuery).then(response => {
188
         dealingTemp = response.data.rows.filter(record => {
189
         dealingTemp = response.data.rows.filter(record => {
190
         })
191
         })
191
         // TODO refactor
192
         // TODO refactor
192
         let deal = {}
193
         let deal = {}
193
-
194
         dealingTemp.map((record, index) => {
194
         dealingTemp.map((record, index) => {
195
           if (index % 6 === 0) {
195
           if (index % 6 === 0) {
196
             deal.door_0 = record.door
196
             deal.door_0 = record.door
227
           }
227
           }
228
         })
228
         })
229
       })
229
       })
230
+      fetchMemberRecords(this.bucket, this.listQuery).then(response => {
231
+        memberRecordTemp = _.groupBy(response.data.rows, record => {
232
+          return record.door
233
+        })
234
+        this.memberRecord = Object.values(memberRecordTemp)
235
+        // console.log(this.memberRecord,'dsddss')
236
+
237
+      })
230
       fetchDetails(this.bucket, this.listQuery).then(response => {
238
       fetchDetails(this.bucket, this.listQuery).then(response => {
231
         detailTemp = response.data.rows.filter(record => {
239
         detailTemp = response.data.rows.filter(record => {
232
           return record.DealingRecord.door !== -1 &&
240
           return record.DealingRecord.door !== -1 &&
300
         }
308
         }
301
       }
309
       }
302
     },
310
     },
311
+    getSummaries(param) {
312
+      const { columns, data } = param
313
+      const sums = []
314
+      this.memberRecord.map((group,index) => {
315
+          let doorTotal = 0
316
+          group.map((door) => {
317
+            doorTotal += door.wager
318
+          })
319
+          sums[index] = doorTotal
320
+      })
321
+      return sums
322
+    },
303
     handleFilter() {
323
     handleFilter() {
304
       this.dealing = []
324
       this.dealing = []
305
       this.getList()
325
       this.getList()
307
     _sum(i) {
327
     _sum(i) {
308
       let count = 0
328
       let count = 0
309
       for (let j = 0; j < i; j++) {
329
       for (let j = 0; j < i; j++) {
310
-          count += this.group[j].length
330
+        count += this.group[j].length
311
       }
331
       }
312
       return count
332
       return count
313
     }
333
     }