|
@@ -0,0 +1,395 @@
|
|
|
+<template>
|
|
|
+ <div class="cjfx_jstj">
|
|
|
+ <NavHeader />
|
|
|
+ <bread-crumb />
|
|
|
+
|
|
|
+ <div class="w-1200px m-auto flex flex-row justify-between">
|
|
|
+ <div class="w-188px">
|
|
|
+ <leftSider />
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="w-1012px p-4 blueBg">
|
|
|
+
|
|
|
+ <div class="w-full py-8 marstReview">
|
|
|
+ <div class="normalTit">
|
|
|
+ <span>整体成绩分析</span>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-table :data="tableDataZtcjfx" style="width: 100%">
|
|
|
+ <el-table-column prop="mx" label="满分" show-overflow-tooltip />
|
|
|
+ <el-table-column prop="pjf" label="平均分" width="120" />
|
|
|
+ <el-table-column prop="ykrs" label="应考人数" />
|
|
|
+ <el-table-column prop="skrs" label="实考人数" />
|
|
|
+ <el-table-column prop="nd" label="难度" />
|
|
|
+ <el-table-column prop="qfd" label="区分度"/>
|
|
|
+ <el-table-column prop="bzc" label="标准差" />
|
|
|
+ <el-table-column prop="qkrs" label="缺考人数" />
|
|
|
+ <el-table-column prop="zgf" label="最高分" />
|
|
|
+ <el-table-column prop="zdf" label="最低分" />
|
|
|
+ <el-table-column prop="gfzjf" label="高分组均分" width="100" />
|
|
|
+ <el-table-column prop="zfzjf" label="中分组均分" width="100" />
|
|
|
+ <el-table-column prop="dfzjf" label="低分组均分" width="100" />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="flex mt-20px items-center">
|
|
|
+ <el-select class="mr-10px" v-model="normal_school" placeholder="请选择学校" size="large">
|
|
|
+ <el-option label="全部" value="0" />
|
|
|
+ <el-option v-for="item in school_list" :key="item.value" :label="item.label" :value="item.value" />
|
|
|
+ </el-select>
|
|
|
+
|
|
|
+ <el-select class="mr-10px" v-model="normal_subject" placeholder="请选择学科" size="large">
|
|
|
+ <el-option label="全部" value="0" />
|
|
|
+ <el-option v-for="item in subject_list" :key="item.value" :label="item.label" :value="item.value" />
|
|
|
+ </el-select>
|
|
|
+
|
|
|
+ <el-select class="mr-10px" v-model="normal_classroom" placeholder="请选择班级" size="large">
|
|
|
+ <el-option label="全部" value="0" />
|
|
|
+ <el-option v-for="item in classroom_list" :key="item.value" :label="item.label" :value="item.value" />
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div class="flex justify-between mt-4 exportBtn">
|
|
|
+ <div>
|
|
|
+ <el-button color="#003eee" type="primary" size="large">导出</el-button>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="h-auto mt-20px">
|
|
|
+ <div class="normalTit">
|
|
|
+ <span>题目分析</span>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-table :data="tableDataTmfx" style="width: 100%">
|
|
|
+ <el-table-column prop="tm" label="题目" />
|
|
|
+ <el-table-column prop="tmlx" label="题目类型" />
|
|
|
+ <el-table-column prop="mf" label="满分" />
|
|
|
+ <el-table-column prop="pjf" label="平均分" />
|
|
|
+ <el-table-column prop="nd" label="难度" />
|
|
|
+ <el-table-column prop="qfd" label="区分度" />
|
|
|
+ <el-table-column prop="bzc" label="标准差" />
|
|
|
+ <el-table-column prop="gfzjf" label="高分组均分" />
|
|
|
+ <el-table-column prop="zdzjf" label="中等组均分" />
|
|
|
+ <el-table-column prop="dfzjf" label="低分组均分" />
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="h-auto mt-20px ">
|
|
|
+ <div class="normalTit">
|
|
|
+ <span>整体成绩分析</span>
|
|
|
+ </div>
|
|
|
+ <el-table :data="tableData" style="width: 100%">
|
|
|
+ <el-table-column prop="xm" label="姓名" show-overflow-tooltip width="100" />
|
|
|
+ <el-table-column prop="xh" label="学号" show-overflow-tooltip width="100" />
|
|
|
+ <el-table-column prop="bj" label="班级" show-overflow-tooltip width="100" />
|
|
|
+ <el-table-column prop="zf" label="总分" />
|
|
|
+ <el-table-column prop="fir_0" label="1" />
|
|
|
+ <el-table-column prop="fir_1" label="2" />
|
|
|
+ <el-table-column prop="fir_2" label="17-19" />
|
|
|
+ <el-table-column prop="sec_0" label="1" />
|
|
|
+ <el-table-column prop="sec_1" label="2" />
|
|
|
+ <el-table-column prop="sec_2" label="17-19" />
|
|
|
+ <el-table-column prop="thr_0" label="1" />
|
|
|
+ <el-table-column prop="thr_1" label="2" />
|
|
|
+ <el-table-column prop="thr_2" label="17-19" />
|
|
|
+
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <commonFooter />
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<route lang="json">
|
|
|
+{
|
|
|
+ "meta": {
|
|
|
+ "title": "考试分析",
|
|
|
+ "breadcrumb": true
|
|
|
+ }
|
|
|
+}
|
|
|
+</route>
|
|
|
+<script lang="ts" setup>
|
|
|
+import * as echarts from 'echarts';
|
|
|
+import { Calendar, Search } from '@element-plus/icons-vue';
|
|
|
+
|
|
|
+import { useRouter } from "vue-router";
|
|
|
+import { skeletonProps } from 'element-plus';
|
|
|
+const router = useRouter();
|
|
|
+
|
|
|
+
|
|
|
+let normal_subject = $ref("");
|
|
|
+let normal_school = $ref("");
|
|
|
+let normal_teacher = $ref("");
|
|
|
+let normal_classroom = $ref("");
|
|
|
+
|
|
|
+let subject_list = [{
|
|
|
+ value: '1',
|
|
|
+ label: '语文'
|
|
|
+}, {
|
|
|
+ value: '2',
|
|
|
+ label: '数学'
|
|
|
+}]
|
|
|
+
|
|
|
+
|
|
|
+let school_list = [{
|
|
|
+ value: '1',
|
|
|
+ label: '学校1'
|
|
|
+}, {
|
|
|
+ value: '2',
|
|
|
+ label: '学校2'
|
|
|
+}]
|
|
|
+
|
|
|
+let classroom_list = [{
|
|
|
+ value: '1',
|
|
|
+ label: '英语'
|
|
|
+}, {
|
|
|
+ value: '2',
|
|
|
+ label: '体育'
|
|
|
+}, {
|
|
|
+ value: '3',
|
|
|
+ label: '音乐'
|
|
|
+}
|
|
|
+];
|
|
|
+
|
|
|
+
|
|
|
+onMounted(() => {
|
|
|
+
|
|
|
+})
|
|
|
+
|
|
|
+const tableDataZtcjfx = [{
|
|
|
+ mx:122,
|
|
|
+ pjf:87.45,
|
|
|
+ ykrs:123,
|
|
|
+ skrs:123,
|
|
|
+ nd:0.54,
|
|
|
+ qfd:0.54,
|
|
|
+ bzc:0.54,
|
|
|
+ qkrs:32,
|
|
|
+ zgf:125,
|
|
|
+ zdf:123,
|
|
|
+ gfzjf:125,
|
|
|
+ zfzjf:136,
|
|
|
+ dfzjf:87.45
|
|
|
+
|
|
|
+}]
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+let classArr = [
|
|
|
+ "学校",
|
|
|
+ "平均分",
|
|
|
+ "总均分",
|
|
|
+ "均分差离",
|
|
|
+];
|
|
|
+
|
|
|
+let classBaseInfoArr = [
|
|
|
+ {
|
|
|
+ xx: "临沂市蒙阴县乡镇小学",
|
|
|
+ pjf: 12,
|
|
|
+ zjf: 12,
|
|
|
+ jflc: 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ xx: "临沂市蒙阴县乡镇小学",
|
|
|
+ pjf: 12,
|
|
|
+ zjf: 12,
|
|
|
+ jflc: 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ xx: "临沂市蒙阴县乡镇小学",
|
|
|
+ pjf: 12,
|
|
|
+ zjf: 12,
|
|
|
+ jflc: 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ xx: "临沂市蒙阴县乡镇小学",
|
|
|
+ pjf: 12,
|
|
|
+ zjf: 12,
|
|
|
+ jflc: 1,
|
|
|
+ },
|
|
|
+];
|
|
|
+
|
|
|
+const tableDataTmfx = [
|
|
|
+ {
|
|
|
+ tm:1,
|
|
|
+ tmlx:"单选",
|
|
|
+ mf:23,
|
|
|
+ pjf:12,
|
|
|
+ nd:0.54,
|
|
|
+ qfd:0.54,
|
|
|
+ bzc:0.54,
|
|
|
+ gfzjf:0.13,
|
|
|
+ zdzjf:0.13,
|
|
|
+ dfzjf:0.13,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tm:1,
|
|
|
+ tmlx:"多选",
|
|
|
+ mf:23,
|
|
|
+ pjf:12,
|
|
|
+ nd:0.54,
|
|
|
+ qfd:0.54,
|
|
|
+ bzc:0.54,
|
|
|
+ gfzjf:0.13,
|
|
|
+ zdzjf:0.13,
|
|
|
+ dfzjf:0.13,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tm:1,
|
|
|
+ tmlx:"主观题",
|
|
|
+ mf:23,
|
|
|
+ pjf:12,
|
|
|
+ nd:0.54,
|
|
|
+ qfd:0.54,
|
|
|
+ bzc:0.54,
|
|
|
+ gfzjf:0.13,
|
|
|
+ zdzjf:0.13,
|
|
|
+ dfzjf:0.13,
|
|
|
+ },
|
|
|
+
|
|
|
+];
|
|
|
+
|
|
|
+
|
|
|
+const tableData = [
|
|
|
+ {
|
|
|
+ xm: "迪丽热巴",
|
|
|
+ xh: "123456789",
|
|
|
+ bj: "初一(2)班",
|
|
|
+ zf: "123",
|
|
|
+ fir_0: "2.5",
|
|
|
+ fir_1: "2.5",
|
|
|
+ fir_2: "2.5",
|
|
|
+ sec_0: "2.5",
|
|
|
+ sec_1: "2.5",
|
|
|
+ sec_2: "2.5",
|
|
|
+ thr_0: "2.5",
|
|
|
+ thr_1: "2.5",
|
|
|
+ thr_2: "2.5",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ xm: "迪丽热巴",
|
|
|
+ xh: "123456789",
|
|
|
+ bj: "初一(2)班",
|
|
|
+ zf: "123",
|
|
|
+ fir_0: "2.5",
|
|
|
+ fir_1: "2.5",
|
|
|
+ fir_2: "2.5",
|
|
|
+ sec_0: "2.5",
|
|
|
+ sec_1: "2.5",
|
|
|
+ sec_2: "2.5",
|
|
|
+ thr_0: "2.5",
|
|
|
+ thr_1: "2.5",
|
|
|
+ thr_2: "2.5",
|
|
|
+ },
|
|
|
+]
|
|
|
+
|
|
|
+</script>
|
|
|
+
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+::v-deep .el-sub-menu__title {
|
|
|
+ background: #003eee;
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
+
|
|
|
+::v-deep .el-table__header thead tr th {
|
|
|
+ background: #003eee !important;
|
|
|
+ color: #fff;
|
|
|
+ height: 50px;
|
|
|
+ line-height: 50px;
|
|
|
+ font-weight: normal;
|
|
|
+}
|
|
|
+
|
|
|
+::v-deep .el-table__header thead tr th:first-child {
|
|
|
+ border-top-left-radius: 9px;
|
|
|
+}
|
|
|
+
|
|
|
+::v-deep .el-table__body tbody .el-table__row td {
|
|
|
+ background-color: transparent;
|
|
|
+}
|
|
|
+
|
|
|
+::v-deep .el-dialog__footer {
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+.normalTit{
|
|
|
+ width: 158px;
|
|
|
+ height: 42px;
|
|
|
+ margin: 0 auto 10px auto;
|
|
|
+ background: #ffffff;
|
|
|
+ border: 1px solid #dbe7ec;
|
|
|
+ border-radius: 6px;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding:9px 6px;
|
|
|
+ text-align: center;
|
|
|
+ span{
|
|
|
+ font-size: 16px;
|
|
|
+ font-family: PingFang SC, PingFang SC-Medium;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #000000;
|
|
|
+ background: #e2eaf9;
|
|
|
+ border-radius: 4px;
|
|
|
+ padding: 5px 15px;
|
|
|
+ }
|
|
|
+}
|
|
|
+.marstReview{
|
|
|
+ border-bottom: 1px solid #dee8ff;
|
|
|
+}
|
|
|
+.blueBg {
|
|
|
+ background: #F1F7FF;
|
|
|
+}
|
|
|
+
|
|
|
+.whiteBG {
|
|
|
+ background: #fff;
|
|
|
+}
|
|
|
+
|
|
|
+.singlepart {
|
|
|
+ background-color: rgba($color: #ffffff, $alpha: 0.2);
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
+
|
|
|
+.tableList {
|
|
|
+ overflow-x: scroll;
|
|
|
+}
|
|
|
+
|
|
|
+.tableList_title {
|
|
|
+ font-size: 14px;
|
|
|
+ color: #fff;
|
|
|
+}
|
|
|
+
|
|
|
+.singleT {
|
|
|
+ flex: 1;
|
|
|
+ font-size: 14px;
|
|
|
+ line-height: 50px;
|
|
|
+ width: fit-content;
|
|
|
+ text-align: center;
|
|
|
+ background: #003eee;
|
|
|
+}
|
|
|
+
|
|
|
+.singleT:first-child {
|
|
|
+ border-top-left-radius: 5px;
|
|
|
+}
|
|
|
+
|
|
|
+.singleT:last-child {
|
|
|
+ border-top-right-radius: 5px;
|
|
|
+}
|
|
|
+
|
|
|
+.singleD {
|
|
|
+ flex: 1;
|
|
|
+}
|
|
|
+
|
|
|
+.singleTSec {
|
|
|
+ width: fit-content;
|
|
|
+ flex: 1;
|
|
|
+ line-height: 60px;
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+
|
|
|
+.singleTSecDif {
|
|
|
+ background-color: #fff;
|
|
|
+}
|
|
|
+</style>
|