wuhongyu 4 년 전
부모
커밋
c5da9ee968
4개의 변경된 파일39개의 추가작업 그리고 7개의 파일을 삭제
  1. 1 0
      src/views/anchor/detail.vue
  2. 1 0
      src/views/role/index.vue
  3. 1 1
      src/views/room/detail.vue
  4. 36 6
      src/views/room/index.vue

+ 1 - 0
src/views/anchor/detail.vue

@@ -71,6 +71,7 @@ export default {
       console.log(res.data);
       this.$set(this, `form`, res.data);
     },
+
     // 创建&修改
     async drawerSave({ data, isNew }) {
       let res;

+ 1 - 0
src/views/role/index.vue

@@ -60,6 +60,7 @@ export default {
       let res = await this.query();
       console.log(res.data);
       this.$set(this, `list`, res.data);
+        this.$set(this, `total`, res.total);
     },
     toEdit({ data }) {
       console.log('1');

+ 1 - 1
src/views/room/detail.vue

@@ -45,7 +45,7 @@ export default {
       if (this.id) {
       } else {
         console.log(data);
-        let res = this.create(data);
+        let res = this.roomcreate(data);
         this.$checkRes(res, '创建房间成功', '创建房间失败');
       }
     },

+ 36 - 6
src/views/room/index.vue

@@ -10,7 +10,13 @@
         </el-col>
       </el-col>
       <el-col :span="24" class="info">
-        <data-table :fields="fields" @delete="toDelete" :data="list" :opera="opera" @edit="toEdit" :total="total" @query="search"></data-table>
+        <data-table :fields="fields" @delete="toDelete" :data="list" :opera="opera" @edit="toEdit" :total="total" @query="search" :toFormat="toFormat">
+          <template #options="{item}">
+            <template v-if="item.prop === 'anchorid'">
+              <el-option v-for="(i, index) in clientList" :key="index" :label="i.name" :value="i.id"></el-option>
+            </template>
+          </template>
+        </data-table>
       </el-col>
     </el-row>
   </div>
@@ -19,8 +25,9 @@
 import topInfo from '@/layout/public/top.vue';
 import dataTable from '@/components/data-table.vue';
 import { mapActions, mapState, createNamespacedHelpers } from 'vuex';
+const { mapActions: room } = createNamespacedHelpers('room');
+const { mapActions: roomuser } = createNamespacedHelpers('roomuser');
 
-const { mapActions: role } = createNamespacedHelpers('role');
 export default {
   name: 'index',
   props: {},
@@ -29,6 +36,7 @@ export default {
     dataTable,
   },
   data: () => ({
+    clientList: [],
     opera: [
       {
         label: '编辑',
@@ -45,25 +53,47 @@ export default {
     fields: [
       { label: '房间名称', prop: 'name' },
       { label: '房间类型', prop: 'type', format: i => (i == '0' ? '直播' : i == '1' ? '会议' : '临时用户') },
-      { label: '房间地址', prop: 'url' },
+      {
+        label: '主播',
+        prop: 'anchorid',
+        filter: 'select',
+        format: true,
+      },
     ],
     list: [],
     total: 0,
   }),
   created() {
     this.search();
+    this.searchinfo();
   },
   methods: {
-    ...role(['query', 'delete', 'update', 'fetch']),
-
+    ...room(['query', 'delete', 'update', 'fetch']),
+    ...roomuser({ roomuserquery: 'query' }),
     async search({ skip = 0, limit = 10, ...info } = {}) {
       let res = await this.query();
       console.log(res.data);
       this.$set(this, `list`, res.data);
+      this.$set(this, `total`, res.total);
+    },
+
+    async searchinfo() {
+      let res = await this.roomuserquery();
+      console.log(res.data);
+      this.$set(this, `clientList`, res.data);
+    },
+
+    toFormat(data) {
+      let { model, value } = data;
+      let res = '';
+      if (model === 'anchorid') {
+        let findRes = this.clientList.find(f => f.id === value);
+        if (findRes) res = findRes.name;
+      }
+      return res;
     },
     toEdit({ data }) {
       console.log('1');
-
       this.$router.push({ path: './detail', query: { id: data.id } });
     },