Browse Source

wechat member

Unknown 7 years ago
parent
commit
4f12452049

+ 19 - 3
src/api/gambleMember.js

1
 import request from '@/utils/request'
1
 import request from '@/utils/request'
2
 
2
 
3
-export function fetchList(query) {
3
+export function fetchGambleMemberList(query) {
4
   return request({
4
   return request({
5
     url: '/gambleMembers',
5
     url: '/gambleMembers',
6
     method: 'get',
6
     method: 'get',
14
   })
14
   })
15
 }
15
 }
16
 
16
 
17
+export function fetchWeChatMemberList(data, query) {
18
+  // TODO check data 帶什麼
19
+  console.log('data', data)
20
+  return request({
21
+    url: `/weChatRooms/${data.room}/weChatUsers`,
22
+    method: 'get',
23
+    params: {
24
+      limit: query.limit,
25
+      offset: (query.page - 1) * query.limit,
26
+      name: query.name
27
+      // chipsSort: query.chipsSort,
28
+      // updatedSort: query.updatedSort
29
+    }
30
+  })
31
+}
32
+
17
 export function chipsDeposit(data) {
33
 export function chipsDeposit(data) {
18
   return request({
34
   return request({
19
-    url: `/gambleMembers/${data.id}/deposit`,
35
+    url: `/gambleMembers/${data.WeChatUser.GambleMember.id}/deposit`,
20
     method: 'put',
36
     method: 'put',
21
     data: {
37
     data: {
22
       chips: data.depositChips
38
       chips: data.depositChips
26
 
42
 
27
 export function chipsReward(data) {
43
 export function chipsReward(data) {
28
   return request({
44
   return request({
29
-    url: `/gambleMembers/${data.id}/reward`,
45
+    url: `/gambleMembers/${data.WeChatUser.GambleMember.id}/reward`,
30
     method: 'put',
46
     method: 'put',
31
     data: {
47
     data: {
32
       chips: data.rewardChips
48
       chips: data.rewardChips

+ 4 - 4
src/router/index.js

62
         },
62
         },
63
         children: [
63
         children: [
64
           {
64
           {
65
-            path: '/room/index/gambleMember/index',
66
-            name: 'GambleMember',
67
-            component: _import('room/gambleMember/index'),
65
+            path: '/room/index/wechatMember/index',
66
+            name: 'WeChatMember',
67
+            component: _import('room/wechatMember/index'),
68
             hidden: true,
68
             hidden: true,
69
             meta: {
69
             meta: {
70
-              title: '會員管理'
70
+              title: '微信會員'
71
               // role: ['dd']
71
               // role: ['dd']
72
             },
72
             },
73
             children: [
73
             children: [

+ 2 - 2
src/views/gambleGameBucket/detail/index.vue

139
 
139
 
140
 import { mapGetters, mapActions } from 'vuex'
140
 import { mapGetters, mapActions } from 'vuex'
141
 import { fetchDetails, fetchRoundCount, fetchDealingRecords, fetchMemberRecords } from '@/api/gambleGameBucket'
141
 import { fetchDetails, fetchRoundCount, fetchDealingRecords, fetchMemberRecords } from '@/api/gambleGameBucket'
142
-import { fetchList } from '@/api/gambleMember'
142
+import { fetchGambleMemberList } from '@/api/gambleMember'
143
 import _ from 'lodash'
143
 import _ from 'lodash'
144
 import moment from 'moment-timezone'
144
 import moment from 'moment-timezone'
145
 
145
 
175
     })
175
     })
176
     this.SetVisible(2)
176
     this.SetVisible(2)
177
     this.getList()
177
     this.getList()
178
-    fetchList({ page: 1, limit: 9999999999, chipsSort: 'DESC' }).then(response => {
178
+    fetchGambleMemberList({ page: 1, limit: 9999999999, chipsSort: 'DESC' }).then(response => {
179
       const { rows } = response.data
179
       const { rows } = response.data
180
       let members = {}
180
       let members = {}
181
       // TODO refactor
181
       // TODO refactor

+ 1 - 0
src/views/room/chipsHistory/index.vue

143
     ]),
143
     ]),
144
     getList() {
144
     getList() {
145
       this.listLoading = true
145
       this.listLoading = true
146
+      console.log('wwww',this.member)
146
       fetchChipsHistory(this.member, this.listQuery).then(response => {
147
       fetchChipsHistory(this.member, this.listQuery).then(response => {
147
         this.list = response.data
148
         this.list = response.data
148
         this.total = response.data.length
149
         this.total = response.data.length

+ 1 - 1
src/views/room/gambleMember/index.vue

127
 
127
 
128
 import { mapGetters, mapActions } from 'vuex'
128
 import { mapGetters, mapActions } from 'vuex'
129
 // TODO 需更改抓取此房間人員
129
 // TODO 需更改抓取此房間人員
130
-import { fetchList, chipsDeposit, chipsReward, createGambleMember, fetchAgentList, updateBelongAgent } from '@/api/gambleMember'
130
+import { fetchGambleMemberList, chipsDeposit, chipsReward, createGambleMember, fetchAgentList, updateBelongAgent } from '@/api/gambleMember'
131
 import waves from '@/directive/waves' // 水波纹指令
131
 import waves from '@/directive/waves' // 水波纹指令
132
 import Multiselect from 'vue-multiselect'// 使用的一个多选框组件,element-ui的select不能满足所有需求
132
 import Multiselect from 'vue-multiselect'// 使用的一个多选框组件,element-ui的select不能满足所有需求
133
 import 'vue-multiselect/dist/vue-multiselect.min.css'// 多选框组件css
133
 import 'vue-multiselect/dist/vue-multiselect.min.css'// 多选框组件css

+ 4 - 4
src/views/room/index.vue

27
       </el-table-column>
27
       </el-table-column>
28
       <el-table-column align="center" label="操作" width="350">
28
       <el-table-column align="center" label="操作" width="350">
29
         <template slot-scope="scope">
29
         <template slot-scope="scope">
30
-            <router-link to="/room/index/gambleMember/index">
30
+            <router-link to="/room/index/wechatMember/index">
31
               <el-button type="primary" size="mini" icon="el-icon-tickets" @click="handlePage(scope.row)">會員管理</el-button>
31
               <el-button type="primary" size="mini" icon="el-icon-tickets" @click="handlePage(scope.row)">會員管理</el-button>
32
             </router-link>       
32
             </router-link>       
33
         </template>
33
         </template>
41
     </div>
41
     </div>
42
 
42
 
43
   </div>
43
   </div>
44
-    <router-view :member="member"></router-view>
44
+    <router-view :room="room"></router-view>
45
   </div>
45
   </div>
46
 </template>
46
 </template>
47
 
47
 
71
         name: '',
71
         name: '',
72
         chips: '',
72
         chips: '',
73
       },
73
       },
74
-      member: {},
74
+      room: {},
75
     }
75
     }
76
   },
76
   },
77
   created() {
77
   created() {
98
     handlePage(row) {
98
     handlePage(row) {
99
       const temp = Object.assign({}, row) // copy obj
99
       const temp = Object.assign({}, row) // copy obj
100
       this.SetVisible(2)
100
       this.SetVisible(2)
101
-      this.member = temp
101
+      this.room = temp
102
     },
102
     },
103
     handleCreate() {
103
     handleCreate() {
104
       //TODO 了解wechat 的 room 關聯
104
       //TODO 了解wechat 的 room 關聯

+ 33 - 27
src/views/room/wechatMember/index.vue

16
       </div>
16
       </div>
17
       <el-table :data="list" v-loading.body="listLoading" element-loading-text="Loading" border fit highlight-current-row
17
       <el-table :data="list" v-loading.body="listLoading" element-loading-text="Loading" border fit highlight-current-row
18
         style="width: 100%">
18
         style="width: 100%">
19
-        <el-table-column align="center" label='ID' >
19
+        <!-- <el-table-column align="center" label='ID' >
20
           <template slot-scope="scope">
20
           <template slot-scope="scope">
21
             {{scope.row.id}}
21
             {{scope.row.id}}
22
           </template>
22
           </template>
23
-        </el-table-column>
23
+        </el-table-column> -->
24
         <el-table-column label="名稱" align="center">
24
         <el-table-column label="名稱" align="center">
25
           <template slot-scope="scope">
25
           <template slot-scope="scope">
26
-            {{scope.row.name}}
26
+            {{scope.row.WeChatUser.name}}
27
           </template>
27
           </template>
28
         </el-table-column>
28
         </el-table-column>
29
         <el-table-column label="點數" align="center">
29
         <el-table-column label="點數" align="center">
30
           <template slot-scope="scope">
30
           <template slot-scope="scope">
31
-            <span>{{scope.row.chips}}</span>
31
+            <span>{{scope.row.WeChatUser.GambleMember.chips}}</span>
32
           </template>
32
           </template>
33
         </el-table-column>
33
         </el-table-column>
34
         <el-table-column label="代理商" align="center">
34
         <el-table-column label="代理商" align="center">
35
           <template slot-scope="scope">
35
           <template slot-scope="scope">
36
-            {{!scope.row.GambleAgent ? 'N/A': scope.row.GambleAgent.name}}
36
+            {{!scope.row.WeChatUser.GambleMember.GambleAgent ? 'N/A': scope.row.WeChatUser.GambleMember.GambleAgent.name}}
37
           </template>
37
           </template>
38
         </el-table-column>
38
         </el-table-column>
39
         <el-table-column align="center" label="操作" width="450">
39
         <el-table-column align="center" label="操作" width="450">
60
         <el-tabs v-model="activeName" @tab-click="handleClick" type="card">
60
         <el-tabs v-model="activeName" @tab-click="handleClick" type="card">
61
           <el-tab-pane label="上下分" name="deposit">
61
           <el-tab-pane label="上下分" name="deposit">
62
             <el-form :rules="rules" ref="depositForm" :model="temp" label-position="left" label-width="100px" style='width: 400px; margin-left:50px;'>
62
             <el-form :rules="rules" ref="depositForm" :model="temp" label-position="left" label-width="100px" style='width: 400px; margin-left:50px;'>
63
-              <el-form-item label="ID" prop="id">
63
+              <!-- <el-form-item label="ID" prop="id">
64
                 <el-input v-model="temp.id" :disabled="true"></el-input>
64
                 <el-input v-model="temp.id" :disabled="true"></el-input>
65
-              </el-form-item>
65
+              </el-form-item> -->
66
               <el-form-item label="名稱" prop="name">
66
               <el-form-item label="名稱" prop="name">
67
-                <el-input v-if="dialogStatus=='deposit'" v-model="temp.name" :disabled="true"></el-input>
67
+                <el-input v-if="dialogStatus=='deposit'" v-model="temp.WeChatUser.name" :disabled="true"></el-input>
68
               </el-form-item>
68
               </el-form-item>
69
               <el-form-item label="點數" prop="chips">
69
               <el-form-item label="點數" prop="chips">
70
-                <el-input v-model="temp.chips" :disabled="true"></el-input>
70
+                <el-input v-model="temp.WeChatUser.GambleMember.chips" :disabled="true"></el-input>
71
               </el-form-item>
71
               </el-form-item>
72
               <el-form-item v-if="dialogStatus=='deposit'" label="上下分" prop="depositChips">
72
               <el-form-item v-if="dialogStatus=='deposit'" label="上下分" prop="depositChips">
73
                 <el-input placeholder="請輸入上下分" v-model="temp.depositChips"></el-input>
73
                 <el-input placeholder="請輸入上下分" v-model="temp.depositChips"></el-input>
76
           </el-tab-pane>
76
           </el-tab-pane>
77
           <el-tab-pane label="獎懲" name="reward">
77
           <el-tab-pane label="獎懲" name="reward">
78
             <el-form :rules="rules" ref="rewardForm" :model="temp" label-position="left" label-width="100px" style='width: 400px; margin-left:50px;'>
78
             <el-form :rules="rules" ref="rewardForm" :model="temp" label-position="left" label-width="100px" style='width: 400px; margin-left:50px;'>
79
-              <el-form-item label="ID" prop="id">
79
+              <!-- <el-form-item label="ID" prop="id">
80
                 <el-input v-model="temp.id" :disabled="true"></el-input>
80
                 <el-input v-model="temp.id" :disabled="true"></el-input>
81
-              </el-form-item>
81
+              </el-form-item> -->
82
               <el-form-item label="名稱" prop="name">
82
               <el-form-item label="名稱" prop="name">
83
-                <el-input v-model="temp.name" :disabled="true"></el-input>
83
+                <el-input v-model="temp.WeChatUser.name" :disabled="true"></el-input>
84
               </el-form-item>
84
               </el-form-item>
85
               <el-form-item label="點數" prop="chips">
85
               <el-form-item label="點數" prop="chips">
86
-                <el-input  v-model="temp.chips" :disabled="true"></el-input>
86
+                <el-input  v-model="temp.WeChatUser.GambleMember.chips" :disabled="true"></el-input>
87
               </el-form-item>
87
               </el-form-item>
88
               <el-form-item v-if="dialogStatus=='reward'" label="獎懲" prop="rewardChips">
88
               <el-form-item v-if="dialogStatus=='reward'" label="獎懲" prop="rewardChips">
89
                 <el-input placeholder="請輸入獎懲點數" v-model="temp.rewardChips"></el-input>
89
                 <el-input placeholder="請輸入獎懲點數" v-model="temp.rewardChips"></el-input>
103
       <el-dialog title="所屬代理商" :visible.sync="dialogUpdateFormVisible" :before-close="handleDialogClose" center>
103
       <el-dialog title="所屬代理商" :visible.sync="dialogUpdateFormVisible" :before-close="handleDialogClose" center>
104
         <el-form :rules="rules" :model="temp" ref="updateForm" label-position="left" label-width="100px" style='width: 400px; margin-left:50px;'>
104
         <el-form :rules="rules" :model="temp" ref="updateForm" label-position="left" label-width="100px" style='width: 400px; margin-left:50px;'>
105
             <el-form-item label="使用者" prop="id">
105
             <el-form-item label="使用者" prop="id">
106
-                <el-input v-model="temp.name" :disabled="true"></el-input>
106
+                <el-input v-model="temp.WeChatUser.GambleMember.name" :disabled="true"></el-input>
107
           </el-form-item>
107
           </el-form-item>
108
           <el-form-item label="代理商" prop="name">
108
           <el-form-item label="代理商" prop="name">
109
             <multiselect v-model="updateFormData" :options="agentLIstOptions" @search-change="getRemoteAgentList" placeholder="代理商搜尋" selectLabel="選擇"
109
             <multiselect v-model="updateFormData" :options="agentLIstOptions" @search-change="getRemoteAgentList" placeholder="代理商搜尋" selectLabel="選擇"
127
 
127
 
128
 import { mapGetters, mapActions } from 'vuex'
128
 import { mapGetters, mapActions } from 'vuex'
129
 // TODO 需更改抓取此房間人員
129
 // TODO 需更改抓取此房間人員
130
-import { fetchList, chipsDeposit, chipsReward, createGambleMember, fetchAgentList, updateBelongAgent } from '@/api/gambleMember'
130
+import { fetchWeChatMemberList, chipsDeposit, chipsReward, createGambleMember, fetchAgentList, updateBelongAgent } from '@/api/gambleMember'
131
 import waves from '@/directive/waves' // 水波纹指令
131
 import waves from '@/directive/waves' // 水波纹指令
132
 import Multiselect from 'vue-multiselect'// 使用的一个多选框组件,element-ui的select不能满足所有需求
132
 import Multiselect from 'vue-multiselect'// 使用的一个多选框组件,element-ui的select不能满足所有需求
133
 import 'vue-multiselect/dist/vue-multiselect.min.css'// 多选框组件css
133
 import 'vue-multiselect/dist/vue-multiselect.min.css'// 多选框组件css
151
       },
151
       },
152
       temp: {
152
       temp: {
153
         id: '',
153
         id: '',
154
-        name: '',
155
-        chips: '',
154
+        WeChatUser: {
155
+            GambleMember: {
156
+                GambleAgent: {},
157
+            },
158
+        },
156
         depositChips: '',
159
         depositChips: '',
157
         rewardChips: '',
160
         rewardChips: '',
158
       },
161
       },
177
       agentLIstOptions: [],
180
       agentLIstOptions: [],
178
     }
181
     }
179
   },
182
   },
183
+  props: ['room'],
180
   created() {
184
   created() {
181
     this.SetVisible(2)
185
     this.SetVisible(2)
182
     this.getList()
186
     this.getList()
195
     ]),
199
     ]),
196
     getList() {
200
     getList() {
197
       this.listLoading = true
201
       this.listLoading = true
198
-      fetchList(this.listQuery).then(response => {
199
-        console.log('list',response.data.rows)
202
+      fetchWeChatMemberList(this.room, this.listQuery).then(response => {
200
         this.list = response.data.rows
203
         this.list = response.data.rows
201
         this.total = response.data.count
204
         this.total = response.data.count
202
         this.listLoading = false
205
         this.listLoading = false
237
     },
240
     },
238
     resetTemp() {
241
     resetTemp() {
239
       this.temp = {
242
       this.temp = {
240
-        id: undefined,
241
-        name: '',
242
-        chips: '',
243
-        depositChips: ''
243
+        id: '',
244
+        WeChatUser: {
245
+            GambleMember: {
246
+                GambleAgent: {},
247
+                depositChips: '',
248
+                rewardChips: '',
249
+            },
250
+        }
244
       }
251
       }
245
     },
252
     },
246
     handlePage(row) {
253
     handlePage(row) {
247
       const temp = Object.assign({}, row) // copy obj
254
       const temp = Object.assign({}, row) // copy obj
248
       this.SetVisible(3)
255
       this.SetVisible(3)
249
-      this.member = temp
256
+      this.member = temp.WeChatUser.GambleMember
250
     },
257
     },
251
     handleLog(row) {
258
     handleLog(row) {
252
       const temp = Object.assign({}, row) // copy obj
259
       const temp = Object.assign({}, row) // copy obj
253
       this.SetVisible(3)
260
       this.SetVisible(3)
254
-      this.member = temp
261
+      this.member = temp.WeChatUser.GambleMember
255
     },
262
     },
256
     handleFilter() {
263
     handleFilter() {
257
       this.listQuery.page = 1
264
       this.listQuery.page = 1
307
     updateData() {
314
     updateData() {
308
       this.$refs['updateForm'].validate((valid) => {
315
       this.$refs['updateForm'].validate((valid) => {
309
         if (valid) {
316
         if (valid) {
310
-          const tempMember = Object.assign({}, this.temp)
317
+          const tempMember = Object.assign({}, this.temp.WeChatUser.GambleMember)
311
           const tempAgent = Object.assign({}, this.updateFormData.value)
318
           const tempAgent = Object.assign({}, this.updateFormData.value)
312
-          console.log('aaaaa',tempAgent)
313
           updateBelongAgent(tempMember, tempAgent).then(() => {
319
           updateBelongAgent(tempMember, tempAgent).then(() => {
314
             for (const v of this.list) {
320
             for (const v of this.list) {
315
               if (v.id === this.temp.id) {
321
               if (v.id === this.temp.id) {