components.d.ts | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/api/modules/meet.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/train/data-list/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/train/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
components.d.ts
@@ -19,6 +19,7 @@ ElDropdown: typeof import('element-plus/es')['ElDropdown'] ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem'] ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu'] ElEmpty: typeof import('element-plus/es')['ElEmpty'] ElForm: typeof import('element-plus/es')['ElForm'] ElFormItem: typeof import('element-plus/es')['ElFormItem'] ElIcon: typeof import('element-plus/es')['ElIcon'] src/api/modules/meet.js
@@ -1,10 +1,15 @@ import service from "@/api"; export const getMeetList = (getData = {meetName: '', status: ''}) => { return service.get('/api/student/meet/page', {params: getData}); export const getMeetList = (data) => { return service.post('/api/student/meet/page', data); }; export const classMeet = (id) => { return service.get('/api/student/meet/' + id); } } // 获取学生的班级 export const getStudentClasses = () => { return service.get('api/student/meet/classes'); } src/views/train/data-list/index.vue
@@ -15,9 +15,9 @@ </div> <div class="item-info p-3" style="position: relative"> <div class="info-title font-bold">{{ item.meetName }}</div> <div class="info-teacher flex text-sm text-gray-500"> <div class="info-teacher flex text-sm text-gray-500" style="margin-top: 5px"> <div class="info-label">主讲:</div> <div class="info-text">{{ item.teacherName }}</div> <div class="info-text">{{ item.teacherNamesStr }}</div> </div> <div class="info-time flex text-sm text-gray-500"> <div class="info-label">开始时间:</div> src/views/train/index.vue
@@ -19,14 +19,18 @@ </div> --> <div class="header-search flex items-center"> <el-input v-model="searchText" placeholder="请输入课程名称" :prefix-icon="Search" maxlength="20" @input="searchData" /> <el-input v-model="searchText" placeholder="课程名称" :prefix-icon="Search" maxlength="20" @input="searchData" /> <el-select v-model="classesIdList" placeholder="选择班级" multiple clearable @clear="searchData" style="width: 200px;margin-left: 10px" @change="searchData"> <el-option v-for="classes in classesList" :key="classes.id" :label="classes.className" :value="classes.id"/> </el-select> <el-button type="primary" class="ml-4" @click="searchData">搜索</el-button> </div> </div> <div class="card-main flex-1 my-5 relative"> <div class="main-content absolute top-0 bottom-0 left-0 right-0"> <DataList :dataList="dataList"></DataList> <DataList v-if="dataList && dataList.length > 0" :dataList="dataList"></DataList> <el-empty v-else description="暂无" /> </div> </div> @@ -55,9 +59,11 @@ import NormalHeader from '@/components/NormalHeader/index.vue'; import DataList from './data-list/index.vue'; import { Search } from '@element-plus/icons-vue'; import { getMeetList } from '@/api/modules/meet.js'; import { getMeetList, getStudentClasses } from '@/api/modules/meet.js'; const activeName = ref('1'); const searchText = ref(''); const classesIdList = ref([]); const classesList = ref([]); const dataList = ref([]); const loading = ref(false); @@ -68,7 +74,7 @@ const getData = () => { loading.value = true; getMeetList({meetName: searchText.value}).then(res => { getMeetList({meetName: searchText.value, classesIds: classesIdList.value}).then(res => { dataList.value = res.data; loading.value = false; total.value = res.total; @@ -77,8 +83,14 @@ }); }; getData(); const studentClasses = () => { getStudentClasses().then(res => { classesList.value = res.data }) } getData(); studentClasses(); const handleCurrentChange = (val) => { currentIndex.value = val; getData(); @@ -104,4 +116,4 @@ :deep(.el-tabs__nav-wrap:after) { display: none; } </style> </style>