[作业批改] - 逐题分析显示优化

This commit is contained in:
“zouyf” 2024-10-10 15:28:46 +08:00
parent 1a20fcc835
commit 93abc4905c
3 changed files with 28 additions and 26 deletions

View File

@ -33,13 +33,13 @@
v-if="classWorkAnalysis.row.worktype == '习题训练'" v-if="classWorkAnalysis.row.worktype == '习题训练'"
:type="classWorkAnalysis.view == 'quizStats' ? 'success' : ''" :type="classWorkAnalysis.view == 'quizStats' ? 'success' : ''"
@click="workHandle('quizStats')" @click="workHandle('quizStats')"
>作业概况</el-button >逐题分析</el-button
> >
<el-button <el-button
v-if="classWorkAnalysis.row.worktype == '习题训练'" v-if="classWorkAnalysis.row.worktype == '习题训练'"
:type="classWorkAnalysis.view == 'report' ? 'success' : ''" :type="classWorkAnalysis.view == 'report' ? 'success' : ''"
@click="handleClassOverviewOpen('report')" @click="handleClassOverviewOpen('report')"
>作业报告</el-button >整体分析</el-button
> >
</el-button-group> </el-button-group>
</el-row> </el-row>
@ -136,12 +136,12 @@
</div> </div>
</div> </div>
<!-- 作业概况 --> <!-- 逐题分析 -->
<div v-else-if="classWorkAnalysis.view == 'quizStats'"> <div v-else-if="classWorkAnalysis.view == 'quizStats'">
<quiz-stats :active-data="classWorkActiveData" /> <quiz-stats :active-data="classWorkActiveData" />
</div> </div>
<!-- 作业报告--> <!-- 整体分析-->
<div v-else-if="classWorkAnalysis.view == 'report'" style="overflow-y: scroll"> <div v-else-if="classWorkAnalysis.view == 'report'" style="overflow-y: scroll">
<!-- <ClassOverview :table-list="overviewData" :eval-id="courseObj.evalid"></ClassOverview> --> <!-- <ClassOverview :table-list="overviewData" :eval-id="courseObj.evalid"></ClassOverview> -->
<ClassOverview :table-list="overviewData"></ClassOverview> <ClassOverview :table-list="overviewData"></ClassOverview>
@ -188,7 +188,7 @@ const tableRadio = reactive({
const loading_dt_table = ref(false) const loading_dt_table = ref(false)
const isopen_dtwk_table = ref(false) const isopen_dtwk_table = ref(false)
// zdg: // zdg:
const classWorkActiveData = reactive({ const classWorkActiveData = reactive({
quizlist: [], // quizlist: [], //
studentList: [], // - studentList: [], // -
@ -531,7 +531,7 @@ const escapeHtmlQuotes = (str) => {
return result; return result;
} }
//#region //#region
// - // -
const workHandle = (type) => { const workHandle = (type) => {
// ui // ui
@ -566,11 +566,11 @@ const getWorkFeedList = async() =>{
//#endregion //#endregion
//#regin //#regin
/* /*
author: yangws author: yangws
time: 2024-8-06 16:35:33 time: 2024-8-06 16:35:33
function:作业报告的处理 function: 整体分析的处理
*/ */
const handleClassOverviewOpen = (type) =>{ const handleClassOverviewOpen = (type) =>{
// ui // ui
@ -638,12 +638,12 @@ const closeDialog = () => {
watch(classWorkAnalysis, (newVal, oldVal) => { watch(classWorkAnalysis, (newVal, oldVal) => {
if(newVal.view != 'quizStats'){ if(newVal.view != 'quizStats'){
console.log('关闭zdg: 定时执行') console.log('关闭zdg: 定时执行')
clearInterval(classWorkActiveData.timerId) // clearInterval(classWorkActiveData.timerId) //
} }
}) })
onUnmounted(() => { onUnmounted(() => {
clearInterval(classWorkActiveData.timerId) // clearInterval(classWorkActiveData.timerId) //
}) })
defineExpose({ defineExpose({

View File

@ -1,6 +1,6 @@
<template> <template>
<el-row class="c-warp" :gutter="10"> <el-row class="c-warp" :gutter="10">
<el-col class="left" :span="12"> <el-col class="left" :span="14">
<el-collapse class="c-item" v-model="activeTopic" accordion> <el-collapse class="c-item" v-model="activeTopic" accordion>
<template v-for="(item, index) in dataList"> <template v-for="(item, index) in dataList">
<el-collapse-item class="collapse-item" :name="index+1" :id="'collapse-'+(index+1)"> <el-collapse-item class="collapse-item" :name="index+1" :id="'collapse-'+(index+1)">
@ -54,9 +54,9 @@
</template> </template>
</el-collapse> </el-collapse>
</el-col> </el-col>
<el-col class="right" :span="12"> <el-col class="right" :span="10">
<div class="c-item"> <div class="c-item">
<div class="title">答题情况</div> <div class="title">提交情况</div>
<div class="respond"> <div class="respond">
<el-space wrap> <el-space wrap>
<!-- <template v-for="it in 11"> --> <!-- <template v-for="it in 11"> -->
@ -114,7 +114,9 @@ colorArr = [
] ]
// === === // === ===
onMounted(() => {}) onMounted(() => {
activeTopic.value = dataList.value.map((_, index) => index + 1);
})
// === (methods) === // === (methods) ===
@ -311,7 +313,7 @@ watchEffect(() => { initData() })
background: #F2F3F5; background: #F2F3F5;
height: 100%; height: 100%;
margin: 0 !important; margin: 0 !important;
.left{padding-left: 0 !important;} .left{padding-left: 0 !important; height: 100%;}
.right{padding-right: 0 !important;} .right{padding-right: 0 !important;}
.c-item{ .c-item{
padding: 10px; padding: 10px;
@ -360,7 +362,7 @@ watchEffect(() => { initData() })
margin-bottom: 10px; margin-bottom: 10px;
} }
.respond{ .respond{
height: calc(70vh - 65px); height: calc(100% - 65px);
overflow: auto; overflow: auto;
.el-space{padding: 5px;} .el-space{padding: 5px;}
.card-warp{ .card-warp{

View File

@ -23,13 +23,13 @@
v-if="classWorkAnalysis.row.worktype == '习题训练'" v-if="classWorkAnalysis.row.worktype == '习题训练'"
:type="classWorkAnalysis.view == 'quizStats' ? 'success' : ''" :type="classWorkAnalysis.view == 'quizStats' ? 'success' : ''"
@click="workHandle('quizStats')" @click="workHandle('quizStats')"
>作业概况</el-button >逐题分析</el-button
> >
<el-button <el-button
v-if="classWorkAnalysis.row.worktype == '习题训练'" v-if="classWorkAnalysis.row.worktype == '习题训练'"
:type="classWorkAnalysis.view == 'report' ? 'success' : ''" :type="classWorkAnalysis.view == 'report' ? 'success' : ''"
@click="handleClassOverviewOpen('report')" @click="handleClassOverviewOpen('report')"
>作业报告</el-button >整体分析</el-button
> >
</el-button-group> </el-button-group>
</div> </div>
@ -126,12 +126,12 @@
</div> </div>
</div> </div>
<!-- 作业概况 --> <!-- 逐题分析 -->
<div v-else-if="classWorkAnalysis.view == 'quizStats'" style="width: 100%;"> <div v-else-if="classWorkAnalysis.view == 'quizStats'" style="width: 100%;">
<quiz-stats :active-data="classWorkActiveData" style="width: 100%;height: 100%;"/> <quiz-stats :active-data="classWorkActiveData" style="width: 100%;height: 100%;"/>
</div> </div>
<!-- 作业报告--> <!-- 整体分析-->
<div v-else-if="classWorkAnalysis.view == 'report'" style="width: 100%;overflow-y: scroll"> <div v-else-if="classWorkAnalysis.view == 'report'" style="width: 100%;overflow-y: scroll">
<!-- <ClassOverview :table-list="overviewData" :eval-id="courseObj.evalid"></ClassOverview> --> <!-- <ClassOverview :table-list="overviewData" :eval-id="courseObj.evalid"></ClassOverview> -->
<ClassOverview :table-list="overviewData" style="width: 100%;"></ClassOverview> <ClassOverview :table-list="overviewData" style="width: 100%;"></ClassOverview>
@ -175,7 +175,7 @@ const tableRadio = reactive({
const loading_dt_table = ref(false) const loading_dt_table = ref(false)
const isopen_dtwk_table = ref(false) const isopen_dtwk_table = ref(false)
// zdg: // zdg:
const classWorkActiveData = reactive({ const classWorkActiveData = reactive({
quizlist: [], // quizlist: [], //
studentList: [], // - studentList: [], // -
@ -523,7 +523,7 @@ const escapeHtmlQuotes = (str) => {
return result; return result;
} }
//#region //#region
// - // -
const workHandle = (type) => { const workHandle = (type) => {
// ui // ui
@ -558,11 +558,11 @@ const getWorkFeedList = async() =>{
//#endregion //#endregion
//#regin //#regin
/* /*
author: yangws author: yangws
time: 2024-8-06 16:35:33 time: 2024-8-06 16:35:33
function:作业报告的处理 function: 整体分析的处理
*/ */
const handleClassOverviewOpen = (type) =>{ const handleClassOverviewOpen = (type) =>{
// ui // ui
@ -640,12 +640,12 @@ onMounted(() => {
watch(classWorkAnalysis, (newVal, oldVal) => { watch(classWorkAnalysis, (newVal, oldVal) => {
if(newVal.view != 'quizStats'){ if(newVal.view != 'quizStats'){
console.log('关闭zdg: 定时执行') console.log('关闭zdg: 定时执行')
clearInterval(classWorkActiveData.timerId) // clearInterval(classWorkActiveData.timerId) //
} }
}) })
onUnmounted(() => { onUnmounted(() => {
clearInterval(classWorkActiveData.timerId) // clearInterval(classWorkActiveData.timerId) //
}) })
// defineExpose({ // defineExpose({