|
@@ -4,37 +4,85 @@
|
|
<template slot="normal">
|
|
<template slot="normal">
|
|
<div class="cloudSearch-item">
|
|
<div class="cloudSearch-item">
|
|
<div class="form-label">学校:</div>
|
|
<div class="form-label">学校:</div>
|
|
- <el-select v-model="listQuery.sid" filterable placeholder="请选择学校" @change="Schange($event, 'search')">
|
|
|
|
- <el-option v-for="item in metaData['schools']" :key="item.value" :label="item.name" :value="item.id">
|
|
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="listQuery.sid"
|
|
|
|
+ filterable
|
|
|
|
+ placeholder="请选择学校"
|
|
|
|
+ @change="Schange($event, 'search')"
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in metaData['schools']"
|
|
|
|
+ :key="item.value"
|
|
|
|
+ :label="item.name"
|
|
|
|
+ :value="item.id"
|
|
|
|
+ >
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</div>
|
|
</div>
|
|
- <div class="cloudSearch-item">
|
|
|
|
- <div class="form-label">年级:</div>
|
|
|
|
- <el-select v-model="listQuery.gid" filterable placeholder="请选择年级前先选学校" @change="Gchange($event, 'search')" :disabled="!listQuery.sid">
|
|
|
|
- <el-option v-for="item in metaData['grades']" :key="item.value" :label="item.name" :value="item.id">
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </div>
|
|
|
|
- <div class="cloudSearch-item">
|
|
|
|
- <div class="form-label">班级:</div>
|
|
|
|
- <el-select v-model="listQuery.cid" filterable placeholder="请选择班级前先选年级" :disabled="!listQuery.gid">
|
|
|
|
- <el-option v-for="item in metaData['classes']" :key="item.value" :label="item.name" :value="item.id">
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </div>
|
|
|
|
- <div class="cloudSearch-item">
|
|
|
|
- <div class="form-label" style="width:90px">学生/学号:</div>
|
|
|
|
- <el-input v-model="listQuery.op_content" placeholder="请输入学生/学号" size="small"></el-input>
|
|
|
|
- </div>
|
|
|
|
</template>
|
|
</template>
|
|
</cloudSearch>
|
|
</cloudSearch>
|
|
- <cloudTable :table="dataTable" @refresh-table="getList" @handle="handle" @handleSelectionChange="selRow">
|
|
|
|
- <!-- <template slot="tableBtn">
|
|
|
|
- <el-button size="small" @click="batchDel()">批量删除</el-button>
|
|
|
|
- <el-button class="add" size="small" @click="add('add')">新增班级</el-button>
|
|
|
|
- </template> -->
|
|
|
|
- </cloudTable>
|
|
|
|
|
|
+ <div class="quesList">
|
|
|
|
+ <div class="infinite-list-wrapper" style="overflow: auto">
|
|
|
|
+ <ul
|
|
|
|
+ class="list"
|
|
|
|
+ v-infinite-scroll="load"
|
|
|
|
+ infinite-scroll-disabled="disabled"
|
|
|
|
+ >
|
|
|
|
+ <li v-for="(item, index) in resList" class="list-item" :key="index">
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="18">
|
|
|
|
+ <div class="tm" v-exchangeHtml:foo="item.stem"></div>
|
|
|
|
+ <!-- <div class="tm">{{ item.stem }}</div> -->
|
|
|
|
+ <div class="da">
|
|
|
|
+ <!-- <span>A.xxxxxxxxxxxxxxxxxx</span>
|
|
|
|
+ <span>B.xxxxxxxxxxxxxxxxxx</span>
|
|
|
|
+ <span>C.xxxxxxxxxxxxxxxxxx</span>
|
|
|
|
+ <span>D.xxxxxxxxxxxxxxxxxx</span> -->
|
|
|
|
+ </div>
|
|
|
|
+ <div class="ly">
|
|
|
|
+ <span style="color: #999999">{{ item.task_name }}</span>
|
|
|
|
+ <span style="color: #999999">答案:{{ item.answer }}</span>
|
|
|
|
+ <span
|
|
|
|
+ style="color: #52c4ff; cursor: pointer"
|
|
|
|
+ @click="analysis(index)"
|
|
|
|
+ >答案解析</span
|
|
|
|
+ >
|
|
|
|
+ </div>
|
|
|
|
+ <div class="tj">
|
|
|
|
+ <span style="color: #fa0a2f"
|
|
|
|
+ >错题率:{{ item.error_ratio }}</span
|
|
|
|
+ >
|
|
|
|
+ <span
|
|
|
|
+ ><span style="margin-right: 20px"
|
|
|
|
+ >总人数:{{ item.student_count }}</span
|
|
|
|
+ >
|
|
|
|
+ 错误/正确人数:{{ item.error_count }}/{{
|
|
|
|
+ item.right_count
|
|
|
|
+ }}</span
|
|
|
|
+ >
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="6">
|
|
|
|
+ <bar1
|
|
|
|
+ :id="`bar${index + 1}`"
|
|
|
|
+ :data="item.barOption"
|
|
|
|
+ style="width: 100%; height: 100%"
|
|
|
|
+ ></bar1>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <cloudDialog :ref="'dialog' + index" :config="dialogConfig">
|
|
|
|
+ <div style="margin-bottom: 30px">
|
|
|
|
+ <span v-exchangeHtml:foo="item.analysis"></span>
|
|
|
|
+ </div>
|
|
|
|
+ </cloudDialog>
|
|
|
|
+ </li>
|
|
|
|
+ </ul>
|
|
|
|
+ <p v-if="loading">加载中...</p>
|
|
|
|
+ <p style="text-align: center" v-if="noMore">
|
|
|
|
+ {{ resList.length > 0 ? "没有更多了" : "暂无数据" }}
|
|
|
|
+ </p>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
@@ -45,11 +93,12 @@ import { DictsApi } from "@/api/dict";
|
|
import store from "@/store";
|
|
import store from "@/store";
|
|
|
|
|
|
export default {
|
|
export default {
|
|
- name: "menu6-2",
|
|
|
|
|
|
+ name: "stu-detail2",
|
|
metaDataType: ["schools", "grades"],
|
|
metaDataType: ["schools", "grades"],
|
|
computed: {},
|
|
computed: {},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
|
|
+ curTaskId: null,
|
|
ctime: "",
|
|
ctime: "",
|
|
listQuery: {
|
|
listQuery: {
|
|
// op_user_realname: "",
|
|
// op_user_realname: "",
|
|
@@ -143,7 +192,8 @@ export default {
|
|
};
|
|
};
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
- // this.getList();
|
|
|
|
|
|
+ this.curTaskId = +this.$route.query.id;
|
|
|
|
+ this.getList();
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
ctime: function (val) {
|
|
ctime: function (val) {
|
|
@@ -156,11 +206,15 @@ export default {
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
getList() {
|
|
getList() {
|
|
- WrongApi.getListS(
|
|
|
|
- Object.assign(this.listQuery, {
|
|
|
|
- page: this.dataTable.paginationOpt.pageIndex,
|
|
|
|
- size: this.dataTable.paginationOpt.pageRows,
|
|
|
|
- })
|
|
|
|
|
|
+ WrongApi.getListSD2(
|
|
|
|
+ Object.assign(
|
|
|
|
+ { sprid: this.curTaskId },
|
|
|
|
+ {
|
|
|
|
+ page: this.dataTable.paginationOpt.pageIndex,
|
|
|
|
+ size: this.dataTable.paginationOpt.pageRows,
|
|
|
|
+ ...this.listQuery,
|
|
|
|
+ }
|
|
|
|
+ )
|
|
).then((res) => {
|
|
).then((res) => {
|
|
this.dataTable.data = res.data;
|
|
this.dataTable.data = res.data;
|
|
this.dataTable.paginationOpt.total = res.total;
|
|
this.dataTable.paginationOpt.total = res.total;
|