zouyf_dev #403

Merged
zouyf merged 4 commits from zouyf_dev into main 2024-11-12 15:45:33 +08:00
1 changed files with 62 additions and 57 deletions

View File

@ -90,7 +90,11 @@
</el-row>
<!-- 习题表格 -->
<div class="infinite-list-wrapper" >
<!-- <el-table :data="workResource.entpCourseWorkList" style="width: 100%; height: 100%;">
<el-table
:data="workResource.entpCourseWorkList"
style="width: 100%; height: 100%;"
v-loading="pageParams.loading"
>
<el-table-column type="index" width="60" />
<el-table-column align="left" >
<template #header>
@ -114,22 +118,18 @@
<el-button type="primary" @click="handleClassWorkQuizAdd('entpcourseworklist', scope.row.id)">添加</el-button>
</template>
</el-table-column>
</el-table> -->
<ul
</el-table>
<!-- <ul
v-infinite-scroll="pageLoad"
class="infinite-list"
infinite-scroll-immediate="false"
infinite-scroll-distance='1'
infinite-scroll-distance='100'
infinite-scroll-delay="1000"
:infinite-scroll-disabled="pageDisabled"
>
<li v-for="(item,index) in workResource.entpCourseWorkList" :key="item" class="infinite-list-item">
<div align="left" style="width: 100%;" >
<!-- <template #header>
<div style="display: flex">
<div style="align-items: center;">题目内容</div>
</div>
</template> -->
<div @click="showExamAnalyseDrawer(item)">
<div>
<span style="width: 20px;">{{ index +1 }}. </span>
@ -155,18 +155,18 @@
description="未找到相关试题"
style="width: 100%; height: 200px; margin-top: 20px;"
></el-empty>
</div>
</div> -->
</div>
<!-- 分页 这里不用-->
<!-- <div style="height: 55px;">
<pagination
v-show="entpCourseWorkTotal > 0"
<div style="height: 55px;">
<el-pagination
v-show="pageParams.total > 0"
v-model:page="paginationParams.pageNum"
v-model:limit="paginationParams.pageSize"
:total="entpCourseWorkTotal"
:total="pageParams.total"
:style="{ position: 'relative', 'margin-top': '5px' }"
@pagination="getPaginationList" />
</div> -->
@change="getPaginationList" />
</div>
</div>
<!-- 非习题训练常规作业 -->
<div v-if="classWorkForm.worktype!='习题训练'">
@ -276,6 +276,7 @@ import { onMounted, ref, nextTick, watch, reactive, getCurrentInstance, computed
import { ElMessage } from 'element-plus'
import { cloneDeep } from 'lodash'
import { useRouter } from 'vue-router'
import { Search } from '@element-plus/icons-vue'
import {listEntpcoursework, listEntpcourseworkNew, getEntpcoursework} from '@/api/education/entpCourseWork'
import { addClassworkReturnId } from '@/api/teaching/classwork'
@ -284,6 +285,7 @@ import { listEvaluation } from '@/api/subject'
import { listEntpcoursefile } from '@/api/education/entpcoursefile'
import { listKnowledgePoint } from "@/api/knowledge/knowledgePoint";
import { useGetHomework } from '@/hooks/useGetHomework'
import { processList } from '@/hooks/useProcessList'
import { getCurrentTime } from '@/utils/date'
@ -409,15 +411,15 @@ const fileLoading = ref(false); // 常规作业loading
//
const BASE_LIMIT_COUT = 50; //
const pageNoMore = computed( () => {
if (pageParams.value.total < 1) {
return false;
}
let count = BASE_LIMIT_COUT >= pageParams.value.total ? pageParams.value.total : pageParams.value.originCount+BASE_LIMIT_COUT;
return workResource.entpCourseWorkList.length >= count;
});
const pageDisabled = computed(() => pageParams.value.loading || pageNoMore.value);
// const BASE_LIMIT_COUT = 50; //
// const pageNoMore = computed( () => {
// if (pageParams.value.total < 1) {
// return false;
// }
// let count = BASE_LIMIT_COUT >= pageParams.value.total ? pageParams.value.total : pageParams.value.originCount+BASE_LIMIT_COUT;
// return workResource.entpCourseWorkList.length >= count;
// });
// const pageDisabled = computed(() => pageParams.value.loading || pageNoMore.value);
const pageParams = ref({
loading: false, //
originCount: 0, //
@ -497,7 +499,7 @@ function Apis(key) {
//
yearStr: entpCourseWorkQueryParams.yearStr !== '-1' ? entpCourseWorkQueryParams.yearStr:'',
//
thirdId: entpCourseWorkQueryParams.point.length > 0 ? entpCourseWorkQueryParams.point[0]:'',
thirdId: entpCourseWorkQueryParams.point && entpCourseWorkQueryParams.point.length > 0 ? entpCourseWorkQueryParams.point[0]:'',
//
keyword: entpCourseWorkQueryParams.keyWord && entpCourseWorkQueryParams.keyWord !== '' ? entpCourseWorkQueryParams.keyWord:'',
@ -508,10 +510,8 @@ function Apis(key) {
})
}
const handleQueryFromEntpCourseWork= async (queryType) => {
pageParams.value.loading = true;
// ( warn: )
// if (this.courseObj.edusubject=='' && this.courseObj.edustage=='') {
// // [+][+]
@ -519,45 +519,44 @@ const handleQueryFromEntpCourseWork= async (queryType) => {
// }
client(t('任务1', 1500)).then(res => {
console.log("请求返回",res);
if(paginationParams.pageNum == 1){
workResource.entpCourseWorkList = [];
workResource.entpCourseWorkTotal = 0;
//console.log("",res);
// if(paginationParams.pageNum == 1){
// workResource.entpCourseWorkList = [];
// workResource.entpCourseWorkTotal = 0;
//
// pageParams.value.loading = false;
// pageParams.value.isFirst = true;
// pageParams.value.originCount = 0;
}
// //
// // pageParams.value.loading = false;
// // pageParams.value.isFirst = true;
// // pageParams.value.originCount = 0;
// }
const data = res.data || [];
if(data && data.length>0){
// workResource.entpCourseWorkList = entpcourseworkres.data;
// workResource.entpCourseWorkTotal = entpcourseworkres.data.length;
data.forEach(item=> {
if (item.worktype == '选择题') {
item.worktype = '单选题'
data.forEach(item=> {
if (item.worktype == '选择题') {
item.worktype = '单选题'
}
})
//
processList(data);
//workResource.entpCourseWorkList.push(...data);
workResource.entpCourseWorkList = data;
//
if (pageParams.value.isFirst) {
pageParams.value.isFirst = false;
pageParams.value.originCount = workResource.entpCourseWorkList.length;
pageParams.value.total = parseInt(res.msg);
paginationParams.pageNum = Math.ceil(parseInt(res.msg)/paginationParams.pageSize);
//console.log('first->', pageParams.value, paginationParams);
}
})
//
processList(data);
workResource.entpCourseWorkList.push(...data);
//
if (pageParams.value.isFirst) {
pageParams.value.isFirst = false;
pageParams.value.originCount = workResource.entpCourseWorkList.length;
pageParams.value.total = parseInt(res.msg);
}
}
pageParams.value.loading = false;
pageParams.value.loading = false;
});
//const entpcourseworkres = await listEntpcourseworkNew(queryForm);
// const data = entpcourseworkres.data;
}
//
@ -977,6 +976,12 @@ const showExamAnalyseDrawer = (row) => {
})
}
const getPaginationList = ( page, limit ) => {
paginationParams.pageNum = page;
paginationParams.pageSize = limit;
console.log(page, limit)
handleQueryFromEntpCourseWork(0);
}
const pageLoad = async() => {
console.log("加载中...")