guhongwei 4 jaren geleden
bovenliggende
commit
0b57bfca70
2 gewijzigde bestanden met toevoegingen van 143 en 0 verwijderingen
  1. 7 0
      src/router/index.js
  2. 136 0
      src/views/centerTeaching/index.vue

+ 7 - 0
src/router/index.js

@@ -473,6 +473,13 @@ const routes = [
         meta: { title: '通知查看' },
         meta: { title: '通知查看' },
         component: () => import('@/views/receive/index.vue'),
         component: () => import('@/views/receive/index.vue'),
       },
       },
+      // 新增在线课堂
+      {
+        path: '/centerTeaching/index',
+        name: 'centerTeaching_index',
+        meta: { title: '在线课堂' },
+        component: () => import('@/views/centerTeaching/index.vue'),
+      },
     ],
     ],
   },
   },
   {
   {

+ 136 - 0
src/views/centerTeaching/index.vue

@@ -0,0 +1,136 @@
+<template>
+  <div id="index">
+    <list-frame :title="mainTitle" @query="search" :total="total" :needFilter="false" :needAdd="false">
+      <data-table :fields="fields" :data="list" :opera="opera" @check="toCheck" @delete="toDelete"></data-table>
+    </list-frame>
+    <el-dialog :visible.sync="dialog" title="审核授课信息" @close="toClose" width="30%">
+      <data-form :data="form" :fields="formFields" :rules="{}" @save="turnSave">
+        <template #options="{item}">
+          <template v-if="item.model === 'subid'">
+            <el-option v-for="(i, index) in subjectList" :key="index" :label="i.name" :value="i._id"></el-option>
+          </template>
+        </template>
+        <template #radios="{item}">
+          <template v-if="item.model === 'status'">
+            <el-radio label="待审核" value="0"></el-radio>
+            <el-radio label="审核通过" value="1"></el-radio>
+            <el-radio label="审核拒绝" value="2"></el-radio>
+          </template>
+        </template>
+      </data-form>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import listFrame from '@frame/layout/admin/list-frame';
+import dataTable from '@frame/components/data-table';
+import dataForm from '@frame/components/form';
+import { mapState, createNamespacedHelpers } from 'vuex';
+const { mapActions: subject } = createNamespacedHelpers('subject');
+export default {
+  metaInfo: { title: '在线课堂' },
+  name: 'index',
+  props: {},
+  components: {
+    listFrame,
+    dataTable,
+    dataForm,
+  },
+  data: function() {
+    return {
+      opera: [
+        {
+          label: '确定',
+          icon: 'el-icon-check',
+          method: 'check',
+          display: item => {
+            return item.status === '0' ? true : false;
+          },
+        },
+        {
+          label: '删除',
+          icon: 'el-icon-delete',
+          method: 'delete',
+        },
+      ],
+      fields: [
+        { label: '房间号', prop: 'roomid' },
+        { label: '科目名称', prop: 'name' },
+        { label: '状态', prop: 'status', format: i => (i === '0' ? '待审核' : i === '1' ? '审核通过' : '审核拒绝') },
+      ],
+      list: [
+        {
+          roomid: '房间号',
+          name: '科目',
+          status: '0',
+        },
+      ],
+      total: 0,
+      // 审核
+      dialog: false,
+      form: {
+        subid: '0',
+        explain: '说明',
+        status: '0',
+      },
+      formFields: [
+        { label: '科目', required: true, model: 'subid', type: 'select' },
+        { label: '说明', required: true, model: 'explain', type: 'textarea' },
+        { label: '状态', required: true, model: 'status', type: 'radio' },
+      ],
+      // 科目
+      subjectList: [],
+    };
+  },
+  created() {
+    this.getOtherList();
+    this.search();
+  },
+  methods: {
+    ...subject({ getSubjectList: 'query' }),
+    // 查询科目
+    async getOtherList() {
+      let res;
+      res = await this.getSubjectList();
+      if (this.$checkRes(res)) this.$set(this, `subjectList`, res.data);
+    },
+    search() {
+      console.log('查询');
+    },
+    // 确定
+    toCheck({ data }) {
+      console.log(data);
+      this.dialog = true;
+    },
+    // 提交
+    turnSave({ data }) {
+      console.log(data);
+    },
+    // 删除
+    toDelete({ data }) {
+      console.log(data);
+    },
+    // 关闭
+    toClose() {
+      this.form = {};
+      this.dialog = false;
+    },
+  },
+  computed: {
+    mainTitle() {
+      let meta = this.$route.meta;
+      let main = meta.title || '';
+      let sub = meta.sub || '';
+      return `${main}${sub}`;
+    },
+    keyWord() {
+      let meta = this.$route.meta;
+      let main = meta.title || '';
+      return main;
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>