From ce1f77d4a12083a6f94324d764b46e085e90d36e Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 13 五月 2024 12:02:12 +0800
Subject: [PATCH] 视频分类初始话

---
 src/views/onlineStudy/video/type.vue |  130 +++++++++++++++++++++++++++++++++++++++++++
 src/api/video-type.js                |    8 ++
 src/router.js                        |   19 ++++++
 3 files changed, 157 insertions(+), 0 deletions(-)

diff --git a/src/api/video-type.js b/src/api/video-type.js
new file mode 100644
index 0000000..c3cab01
--- /dev/null
+++ b/src/api/video-type.js
@@ -0,0 +1,8 @@
+import { post, get } from '@/utils/request'
+
+export default {
+  page: query => get('/api/admin/study/type/page', query),
+  add: data => post('/api/admin/study/type', data),
+  update: data => post('/api/admin/study/type/edit', data),
+  list: () => post('/api/admin/study/type/list')
+}
diff --git a/src/router.js b/src/router.js
index c2ee1eb..3648bfa 100644
--- a/src/router.js
+++ b/src/router.js
@@ -87,6 +87,25 @@
     ]
   },
   {
+    path: '/online/study',
+    component: Layout,
+    name: 'OnLineStudy',
+    meta: {
+      title: '鍦ㄧ嚎瀛︿範',
+      icon: 'exam'
+    },
+    children: [
+      {
+        path: 'video/type',
+        component: () => import('@/views/onlineStudy/video/type'),
+        name: 'VideoType',
+        meta: {
+          title: '瑙嗛鍒嗙被'
+        }
+      }
+    ]
+  },
+  {
     path: '/exam',
     component: Layout,
     name: 'ExamPage',
diff --git a/src/views/onlineStudy/video/type.vue b/src/views/onlineStudy/video/type.vue
new file mode 100644
index 0000000..d58c777
--- /dev/null
+++ b/src/views/onlineStudy/video/type.vue
@@ -0,0 +1,130 @@
+<template>
+  <div class="warp">
+    <div class="search">
+      <el-form :inline="true" :model="searchForm" class="demo-form-inline">
+        <el-form-item label="鍒嗙被鍚嶇О">
+          <el-input v-model="searchForm.typeName" size="small" placeholder="鍒嗙被鍚嶇О"></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button type="primary" @click="page" size="small">鏌ヨ</el-button>
+        </el-form-item>
+      </el-form>
+      <div>
+        <el-button type="primary" @click="handlerAdd" size="small">娣诲姞</el-button>
+      </div>
+    </div>
+    <el-table
+      :data="tableData"
+      border
+      style="width: 100%">
+      <el-table-column
+        fixed
+        prop="typeName"
+        label="鍒嗙被鍚嶇О">
+      </el-table-column>
+      <el-table-column
+        prop="orderNum"
+        label="鎺掑簭鍊�">
+      </el-table-column>
+      <el-table-column
+        prop="createTime"
+        label="鍒涘缓鏃堕棿">
+      </el-table-column>
+      <el-table-column
+        fixed="right"
+        label="鎿嶄綔"
+        width="140">
+        <template slot-scope="scope">
+          <el-button @click="handleUpdate(scope.row)" type="text" size="small">淇敼</el-button>
+          <el-button type="text" size="small">鍒犻櫎</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <el-dialog
+      title="鎻愮ず"
+      :visible.sync="open"
+      width="300"
+      :before-close="handleClose">
+      <el-form label-position="top" label-width="80px" :rules="rules" :model="form">
+        <el-form-item label="鍒嗙被鍚嶇О" prop="typeName">
+          <el-input v-model="form.typeName"></el-input>
+        </el-form-item>
+        <el-form-item label="鎺掑簭鍊�" prop="orderNum">
+          <el-input v-model="form.orderNum" type="number" placeholder=""鎺掑簭鍊�></el-input>
+        </el-form-item>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="open = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="handlerSubmit">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import VideoTypeAPI from '@/api/video-type'
+export default {
+  name: 'type',
+  data () {
+    return {
+      searchForm: {
+        pageNum: 1,
+        pageSize: 10,
+        typeName: ''
+      },
+      tableData: [],
+      form: {
+        typeName: '',
+        orderNum: null,
+        open: false
+      },
+      rules: {
+        typeName: [
+          { required: true, message: '璇疯緭鍏ュ垎绫诲悕绉�', trigger: 'blur' },
+          { min: 0, max: 40, message: '闀垮害鍦� 0 鍒� 40 涓瓧绗�', trigger: 'blur' }
+        ],
+        orderNum: [
+          { required: true, message: '璇疯緭鍏ュ垎绫绘帓搴忓��', trigger: 'blur' }
+        ]
+      }
+    }
+  },
+  methods: {
+    handlerSubmit () {
+
+    },
+    handleClose () {
+      this.open = false
+    },
+    handlerAdd () {
+      this.form = {}
+      this.open = true
+    },
+    page () {
+      VideoTypeAPI.page(this.searchForm).then(res => {
+        if (res.code === 1) {
+          this.tableData = res.response
+        }
+      })
+    },
+    handleUpdate (row) {
+      this.form.typeName = row.typeName
+      this.form.orderNum = row.orderNum
+      this.open = true
+    }
+  },
+  mounted () {
+    this.page()
+  }
+}
+</script>
+
+<style scoped>
+.warp {
+  margin: 40px 10px;
+}
+.search {
+  margin-top: 10px;
+}
+</style>

--
Gitblit v1.8.0