Просмотр исходного кода

用户管理增加绑定企微

duanshenglang 5 дней назад
Родитель
Сommit
2bd665990d
1 измененных файлов с 46 добавлено и 7 удалено
  1. 46 7
      src/pages/platform/view/user/index.vue

+ 46 - 7
src/pages/platform/view/user/index.vue

@@ -17,7 +17,8 @@
                 <div class="filter_item">
                     <label>经销商:</label>
                     <Select v-model="storeId" clearable @on-change="handleSearch">
-                        <Option v-for="item in storeList" :key="item.id" :value="item.id" :label="item.name">{{item.name}}</Option>
+                        <Option v-for="item in storeList" :key="item.id" :value="item.id" :label="item.name">
+                            {{ item.name }}</Option>
                     </Select>
                 </div>
             </div>
@@ -44,13 +45,21 @@
                     <Input v-model="formValidate.phone" :maxlength="11" placeholder="请输入"></Input>
                 </FormItem>
                 <FormItem label="经销商:" prop="storeId">
-                    <Select v-model="formValidate.storeId" transfer>
-                        <Option v-for="item in storeList" :key="item.id" :value="item.id" :label="item.name">{{item.name}}</Option>
+                    <Select v-model="formValidate.storeId" transfer @on-change="getWxcpMemberList">
+                        <Option v-for="item in storeList" :key="item.id" :value="item.id" :label="item.name">
+                            {{ item.name }}</Option>
                     </Select>
                 </FormItem>
                 <FormItem :label="`短信模板ID:`">
                     <Input v-model="formValidate.smsAfterCallParam" placeholder="请输入" />
                 </FormItem>
+                <FormItem label="绑定企微:" v-if="formValidate.storeId">
+                    <Select v-model="formValidate.wxcpMemberId" transfer>
+                        <Option v-for="item in wxcpMemberList" :key="item.memberId" :value="item.memberId"
+                            :label="item.name">
+                            {{ item.name }}</Option>
+                    </Select>
+                </FormItem>
             </Form>
             <template slot="footer">
                 <Button class="cancel-btn" @click="showDialog = false">取消</Button>
@@ -81,6 +90,7 @@ export default {
                 phone: undefined,
                 smsAfterCallParam: undefined,
                 storeId: undefined,
+                wxcpMemberId: undefined,
             },
             ruleValidate: {
                 phone: [
@@ -96,7 +106,8 @@ export default {
             phone: null,
             tableHeight: 0,
             storeList: [],
-            storeId: null
+            storeId: null,
+            wxcpMemberList: [],
         }
     },
     computed: {
@@ -129,6 +140,12 @@ export default {
                     align: 'center'
                 },
                 {
+                    title: '绑定企微',
+                    minWidth: 140,
+                    key: 'wxcpMemberName',
+                    align: 'center'
+                },
+                {
                     title: '状态',
                     minWidth: 140,
                     key: 'status',
@@ -208,7 +225,7 @@ export default {
             return columns
         }
     },
-    created () {
+    created() {
         this.handleCalcTableHeight()
         const resize = debounce(() => {
             this.handleCalcTableHeight()
@@ -231,7 +248,7 @@ export default {
                 callback()
             }
         },
-        handleCalcTableHeight () {
+        handleCalcTableHeight() {
             this.$nextTick().then(() => {
                 const tableContent = this.$refs['tableContent']
                 let tableContentHeight = 0
@@ -269,6 +286,10 @@ export default {
                 phone: undefined,
                 smsAfterCallParam: undefined,
                 storeId: undefined,
+                wxcpMemberId: undefined,
+            }
+            if (this.formValidate.storeId) {
+                this.getWxcpMemberList()
             }
         },
         handleEdit(row) {
@@ -278,9 +299,13 @@ export default {
                 phone: row.phone,
                 smsAfterCallParam: row.smsAfterCallParam || undefined,
                 storeId: (row.store && row.store.id) || undefined,
+                wxcpMemberId: row.wxcpMemberId || undefined,
+            }
+            if (this.formValidate.storeId) {
+                this.getWxcpMemberList()
             }
         },
-        getStoreList () {
+        getStoreList() {
             this.$http.post(`/call/api/call-store/findListByPage?page=1&pageCount=1000`, {}).then((response) => {
                 const { code, data, msg } = response
                 if (code === 1) {
@@ -288,6 +313,20 @@ export default {
                 }
             })
         },
+        getWxcpMemberList() {
+            this.$http.get(`/call/api/user/m/member-options`, {
+                params: {
+                    tenancyId: this.storeList.find(item => item.id === this.formValidate.storeId).tenancyId,
+                    page: 1,
+                    pageCount: 1000
+                }
+            }).then((response) => {
+                const { code, data, msg } = response
+                if (code === 1) {
+                    this.wxcpMemberList = data.records || []
+                }
+            })
+        },
         handleOk(name) {
             this.$refs[name].validate((valid) => {
                 if (valid) {