|
|
@@ -1,68 +1,75 @@
|
|
|
<template>
|
|
|
- <a-card>
|
|
|
- <a-row :gutter="[16, 16]">
|
|
|
- <a-col :span="8" v-for="(item, index) in listData" :key="index">
|
|
|
- <a-card hoverable :bordered="false" class="boxShadow cardBox" @click="jump(item)">
|
|
|
- <div style="display: flex; position: relative">
|
|
|
- <div
|
|
|
- class="resource"
|
|
|
- :style="{
|
|
|
- backgroundSize: 'cover',
|
|
|
- backgroundPosition: 'center',
|
|
|
- backgroundImage:
|
|
|
- 'url(' +
|
|
|
- (item.coverImagePath != '' && sysConfig.FILE_URL + item.coverImagePath
|
|
|
- ? sysConfig.FILE_URL + item.coverImagePath
|
|
|
- : '') +
|
|
|
- ')'
|
|
|
- }"
|
|
|
- >
|
|
|
- <PlayCircleOutlined
|
|
|
- :style="{ fontSize: '40px', color: 'white' }"
|
|
|
- style="position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%)"
|
|
|
- />
|
|
|
- <div
|
|
|
- style="
|
|
|
- position: absolute;
|
|
|
- bottom: 0;
|
|
|
- right: 0;
|
|
|
- background-color: #40a0ff;
|
|
|
- color: white;
|
|
|
- padding: 5px 20px;
|
|
|
- border-radius: 4px;
|
|
|
- "
|
|
|
- >
|
|
|
- 共{{ item.hourCount }}节课
|
|
|
+ <div>
|
|
|
+ <a-card style="width: 100%" class="titleCard">
|
|
|
+ <div style="font-size: 18px">
|
|
|
+ <div>我的课程收藏</div>
|
|
|
+ </div>
|
|
|
+ </a-card>
|
|
|
+ <a-card class="mt-3">
|
|
|
+ <a-spin :spinning="spinning">
|
|
|
+ <a-row :gutter="[16, 16]">
|
|
|
+ <a-col :span="8" v-for="(item, index) in listData" :key="index">
|
|
|
+ <a-card hoverable :bordered="false" class="boxShadow cardBox" @click="jump(item)">
|
|
|
+ <div style="display: flex; position: relative">
|
|
|
+ <div
|
|
|
+ class="resource"
|
|
|
+ :style="{
|
|
|
+ backgroundSize: 'cover',
|
|
|
+ backgroundPosition: 'center',
|
|
|
+ backgroundImage:
|
|
|
+ 'url(' +
|
|
|
+ (item.coverImagePath != '' && sysConfig.FILE_URL + item.coverImagePath
|
|
|
+ ? sysConfig.FILE_URL + item.coverImagePath
|
|
|
+ : '') +
|
|
|
+ ')'
|
|
|
+ }"
|
|
|
+ >
|
|
|
+ <PlayCircleOutlined
|
|
|
+ :style="{ fontSize: '40px', color: 'white' }"
|
|
|
+ style="position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%)"
|
|
|
+ />
|
|
|
+ <div
|
|
|
+ style="
|
|
|
+ position: absolute;
|
|
|
+ bottom: 0;
|
|
|
+ right: 0;
|
|
|
+ background-color: #40a0ff;
|
|
|
+ color: white;
|
|
|
+ padding: 5px 20px;
|
|
|
+ border-radius: 4px;
|
|
|
+ "
|
|
|
+ >
|
|
|
+ 共{{ item.hourCount }}节课
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div style="display: flex; flex-direction: column; padding: 5px 10px">
|
|
|
- <span style="font-size: 16px; font-weight: bold">{{ item.courseName || '-' }}</span>
|
|
|
- <div>
|
|
|
- <div>学习进度</div>
|
|
|
- <a-progress :percent="item.progressVal" />
|
|
|
- </div>
|
|
|
- <span style="font-size: 12px">{{ item.teacherIdName || '-' }}</span>
|
|
|
- </div>
|
|
|
- </a-card>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-spin :spinning="spinning">
|
|
|
- <a-empty v-if="listData.length <= 0" />
|
|
|
- </a-spin>
|
|
|
- <div
|
|
|
- style="display: flex; width: 100%; align-items: center; justify-content: center"
|
|
|
- class="mt-4"
|
|
|
- v-if="listData.length > 0"
|
|
|
- >
|
|
|
- <a-pagination
|
|
|
- v-model:current="pagination.current"
|
|
|
- v-model:pageSize="pagination.size"
|
|
|
- :total="pagination.total"
|
|
|
- @change="onChange"
|
|
|
- />
|
|
|
- </div>
|
|
|
- </a-card>
|
|
|
+ <div style="display: flex; flex-direction: column; padding: 5px 10px">
|
|
|
+ <span style="font-size: 16px; font-weight: bold">{{ item.courseName || '-' }}</span>
|
|
|
+ <div>
|
|
|
+ <div>学习进度</div>
|
|
|
+ <a-progress :percent="item.progressVal" />
|
|
|
+ </div>
|
|
|
+ <span style="font-size: 12px">{{ item.teacherIdName || '-' }}</span>
|
|
|
+ </div>
|
|
|
+ </a-card>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <a-empty v-if="listData.length <= 0" />
|
|
|
+ </a-spin>
|
|
|
+ <div
|
|
|
+ style="display: flex; width: 100%; align-items: center; justify-content: center"
|
|
|
+ class="mt-4"
|
|
|
+ v-if="listData.length > 0"
|
|
|
+ >
|
|
|
+ <a-pagination
|
|
|
+ v-model:current="pagination.current"
|
|
|
+ v-model:pageSize="pagination.size"
|
|
|
+ :total="pagination.total"
|
|
|
+ @change="onChange"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </a-card>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<script setup name="classCollect">
|
|
|
import classCentre from '@/api/student/classCentre'
|
|
|
@@ -167,4 +174,7 @@
|
|
|
:deep(.cardBox .ant-card-body) {
|
|
|
padding: 0;
|
|
|
}
|
|
|
+ :deep(.titleCard .ant-card-body) {
|
|
|
+ padding: 16px 24px;
|
|
|
+ }
|
|
|
</style>
|