|
@@ -4,7 +4,7 @@
|
|
<el-form-item label="姓名">
|
|
<el-form-item label="姓名">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.name"
|
|
v-model.trim="searchModel.name"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -12,7 +12,7 @@
|
|
<el-form-item label="准考证号">
|
|
<el-form-item label="准考证号">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.examNumber"
|
|
v-model.trim="searchModel.examNumber"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -20,7 +20,7 @@
|
|
<el-form-item label="密号">
|
|
<el-form-item label="密号">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.secretNumber"
|
|
v-model.trim="searchModel.secretNumber"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -28,7 +28,7 @@
|
|
<el-form-item label="学号">
|
|
<el-form-item label="学号">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.studentCode"
|
|
v-model.trim="searchModel.studentCode"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -37,14 +37,8 @@
|
|
<select-subject v-model="searchModel.subjectCode"></select-subject>
|
|
<select-subject v-model="searchModel.subjectCode"></select-subject>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="层次">
|
|
<el-form-item label="层次">
|
|
- <el-select
|
|
|
|
- v-model="searchModel.subjectLevel"
|
|
|
|
- placeholder="不限"
|
|
|
|
- clearable
|
|
|
|
- style="width: 120px"
|
|
|
|
- >
|
|
|
|
- <el-option label="请选择" value="" />
|
|
|
|
- </el-select>
|
|
|
|
|
|
+ <select-option v-model="searchModel.subjectLevel" type="subjectLevel">
|
|
|
|
+ </select-option>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="专业类型">
|
|
<el-form-item label="专业类型">
|
|
<select-option
|
|
<select-option
|
|
@@ -96,7 +90,7 @@
|
|
<el-form-item label="签到表编号">
|
|
<el-form-item label="签到表编号">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.packageCode"
|
|
v-model.trim="searchModel.packageCode"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -104,7 +98,7 @@
|
|
<el-form-item label="批次编号">
|
|
<el-form-item label="批次编号">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.batchCode"
|
|
v-model.trim="searchModel.batchCode"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -124,7 +118,7 @@
|
|
<el-form-item label="任课老师">
|
|
<el-form-item label="任课老师">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.teacher"
|
|
v-model.trim="searchModel.teacher"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -132,7 +126,7 @@
|
|
<el-form-item label="考点">
|
|
<el-form-item label="考点">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.examSite"
|
|
v-model.trim="searchModel.examSite"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -140,7 +134,7 @@
|
|
<el-form-item label="考场">
|
|
<el-form-item label="考场">
|
|
<el-input
|
|
<el-input
|
|
v-model.trim="searchModel.examRoom"
|
|
v-model.trim="searchModel.examRoom"
|
|
- placeholder="请选择"
|
|
|
|
|
|
+ placeholder="请输入"
|
|
clearable
|
|
clearable
|
|
>
|
|
>
|
|
</el-input>
|
|
</el-input>
|
|
@@ -155,6 +149,7 @@
|
|
:controls="false"
|
|
:controls="false"
|
|
step-strictly
|
|
step-strictly
|
|
style="width: 100px"
|
|
style="width: 100px"
|
|
|
|
+ placeholder="请输入"
|
|
>
|
|
>
|
|
</el-input-number>
|
|
</el-input-number>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
@@ -196,19 +191,18 @@
|
|
stripe
|
|
stripe
|
|
@sort-change="handleSortChange"
|
|
@sort-change="handleSortChange"
|
|
>
|
|
>
|
|
- <el-table-column type="index" label="序号" width="60" />
|
|
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('examNumber')"
|
|
v-if="checkFieldVisible('examNumber')"
|
|
prop="examNumber"
|
|
prop="examNumber"
|
|
label="准考证号"
|
|
label="准考证号"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="120"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('secretNumber')"
|
|
v-if="checkFieldVisible('secretNumber')"
|
|
prop="secretNumber"
|
|
prop="secretNumber"
|
|
label="密号"
|
|
label="密号"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="120"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
@@ -222,130 +216,140 @@
|
|
v-if="checkFieldVisible('studentCode')"
|
|
v-if="checkFieldVisible('studentCode')"
|
|
prop="studentCode"
|
|
prop="studentCode"
|
|
label="学号"
|
|
label="学号"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="150"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('subjectText')"
|
|
v-if="checkFieldVisible('subjectText')"
|
|
prop="subjectText"
|
|
prop="subjectText"
|
|
label="科目"
|
|
label="科目"
|
|
- min-width="120"
|
|
|
|
|
|
+ min-width="240"
|
|
sortable
|
|
sortable
|
|
- />
|
|
|
|
|
|
+ >
|
|
|
|
+ <template #default="{ row }">
|
|
|
|
+ {{ row.subjectCode }}-{{ row.subjectName }}
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('paperType')"
|
|
v-if="checkFieldVisible('paperType')"
|
|
prop="paperType"
|
|
prop="paperType"
|
|
label="试卷类型"
|
|
label="试卷类型"
|
|
- width="100"
|
|
|
|
|
|
+ min-width="100"
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('subjectLevel')"
|
|
v-if="checkFieldVisible('subjectLevel')"
|
|
prop="subjectLevel"
|
|
prop="subjectLevel"
|
|
label="层次"
|
|
label="层次"
|
|
- width="80"
|
|
|
|
|
|
+ min-width="80"
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('subjectCategory')"
|
|
v-if="checkFieldVisible('subjectCategory')"
|
|
prop="subjectCategory"
|
|
prop="subjectCategory"
|
|
label="专业类型"
|
|
label="专业类型"
|
|
- width="100"
|
|
|
|
|
|
+ min-width="100"
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('scanStatus')"
|
|
v-if="checkFieldVisible('scanStatus')"
|
|
label="扫描识别"
|
|
label="扫描识别"
|
|
- width="100"
|
|
|
|
|
|
+ min-width="130"
|
|
>
|
|
>
|
|
<template #default="{ row }">
|
|
<template #default="{ row }">
|
|
<span v-if="!row.upload">未上传</span>
|
|
<span v-if="!row.upload">未上传</span>
|
|
- <template v-else>
|
|
|
|
|
|
+ <el-space v-else :size="8">
|
|
<!-- 上传 -->
|
|
<!-- 上传 -->
|
|
<span v-if="appStore.isMultiExam">已上传</span>
|
|
<span v-if="appStore.isMultiExam">已上传</span>
|
|
- <el-button v-else type="primary" link @click="onPreviewImg(row)"
|
|
|
|
|
|
+ <el-button
|
|
|
|
+ v-else
|
|
|
|
+ type="primary"
|
|
|
|
+ link
|
|
|
|
+ style="padding-left: 0"
|
|
|
|
+ @click="onPreviewImg(row)"
|
|
>已上传</el-button
|
|
>已上传</el-button
|
|
>
|
|
>
|
|
<!-- 缺考 -->
|
|
<!-- 缺考 -->
|
|
- <span class="ml-10">{{ row.absent ? '缺考' : '正常' }}</span>
|
|
|
|
- </template>
|
|
|
|
|
|
+ <span>{{ row.absent ? '缺考' : '正常' }}</span>
|
|
|
|
+ </el-space>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('paperCount')"
|
|
v-if="checkFieldVisible('paperCount')"
|
|
prop="sheetCount"
|
|
prop="sheetCount"
|
|
label="扫描张数"
|
|
label="扫描张数"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="110"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('breachText')"
|
|
v-if="checkFieldVisible('breachText')"
|
|
label="人工指定"
|
|
label="人工指定"
|
|
- width="100"
|
|
|
|
|
|
+ min-width="130"
|
|
>
|
|
>
|
|
<template #default="{ row }">
|
|
<template #default="{ row }">
|
|
- <!-- 违纪 -->
|
|
|
|
- <template v-if="row.breach">
|
|
|
|
- <el-button
|
|
|
|
- v-if="userStore.isSchoolAdmin"
|
|
|
|
- type="danger"
|
|
|
|
- link
|
|
|
|
- @click="onChangeBreach(row)"
|
|
|
|
- >违纪</el-button
|
|
|
|
- >
|
|
|
|
- <span v-else>违纪</span>
|
|
|
|
- </template>
|
|
|
|
- <span v-else>正常</span>
|
|
|
|
- <!-- 人工指定缺考 -->
|
|
|
|
- <span class="ml-10">{{
|
|
|
|
- row.manualAbsent ? '人工指定' : '正常'
|
|
|
|
- }}</span>
|
|
|
|
|
|
+ <el-space :size="8">
|
|
|
|
+ <!-- 违纪 -->
|
|
|
|
+ <template v-if="row.breach">
|
|
|
|
+ <el-button
|
|
|
|
+ v-if="userStore.isSchoolAdmin"
|
|
|
|
+ type="danger"
|
|
|
|
+ link
|
|
|
|
+ style="padding-left: 0"
|
|
|
|
+ @click="onChangeBreach(row)"
|
|
|
|
+ >违纪</el-button
|
|
|
|
+ >
|
|
|
|
+ <span v-else>违纪</span>
|
|
|
|
+ </template>
|
|
|
|
+ <span v-else>正常</span>
|
|
|
|
+ <!-- 人工指定缺考 -->
|
|
|
|
+ <span>{{ row.manualAbsent ? '人工指定' : '正常' }}</span>
|
|
|
|
+ </el-space>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('batchCode')"
|
|
v-if="checkFieldVisible('batchCode')"
|
|
prop="batchCode"
|
|
prop="batchCode"
|
|
label="批次编号"
|
|
label="批次编号"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="110"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('packageCode')"
|
|
v-if="checkFieldVisible('packageCode')"
|
|
prop="packageCode"
|
|
prop="packageCode"
|
|
label="签到表编号"
|
|
label="签到表编号"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="120"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('college')"
|
|
v-if="checkFieldVisible('college')"
|
|
prop="college"
|
|
prop="college"
|
|
label="学院"
|
|
label="学院"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="100"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('className')"
|
|
v-if="checkFieldVisible('className')"
|
|
prop="className"
|
|
prop="className"
|
|
label="班级"
|
|
label="班级"
|
|
- width="100"
|
|
|
|
|
|
+ min-width="100"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('teacher')"
|
|
v-if="checkFieldVisible('teacher')"
|
|
prop="teacher"
|
|
prop="teacher"
|
|
label="任课老师"
|
|
label="任课老师"
|
|
- width="120"
|
|
|
|
|
|
+ min-width="110"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('examSite')"
|
|
v-if="checkFieldVisible('examSite')"
|
|
prop="examSite"
|
|
prop="examSite"
|
|
label="考点"
|
|
label="考点"
|
|
- width="100"
|
|
|
|
|
|
+ min-width="100"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
v-if="checkFieldVisible('examRoom')"
|
|
v-if="checkFieldVisible('examRoom')"
|
|
prop="examRoom"
|
|
prop="examRoom"
|
|
label="考场"
|
|
label="考场"
|
|
- width="80"
|
|
|
|
|
|
+ min-width="100"
|
|
sortable
|
|
sortable
|
|
/>
|
|
/>
|
|
<el-table-column label="操作" width="120" fixed="right">
|
|
<el-table-column label="操作" width="120" fixed="right">
|
|
@@ -357,7 +361,7 @@
|
|
v-if="!appStore.isMultiExam"
|
|
v-if="!appStore.isMultiExam"
|
|
type="danger"
|
|
type="danger"
|
|
link
|
|
link
|
|
- @click="onDelete(row)"
|
|
|
|
|
|
+ @click="onDelete(scope.row)"
|
|
>删除</el-button
|
|
>删除</el-button
|
|
>
|
|
>
|
|
</template>
|
|
</template>
|
|
@@ -490,11 +494,11 @@
|
|
return headFields.value.includes(field);
|
|
return headFields.value.includes(field);
|
|
};
|
|
};
|
|
async function getExportCols() {
|
|
async function getExportCols() {
|
|
- const cols = await getExportFields('SCORE');
|
|
|
|
|
|
+ const cols = await getExportFields('STUDENT');
|
|
headFields.value = cols && cols.length ? cols : defaultCols;
|
|
headFields.value = cols && cols.length ? cols : defaultCols;
|
|
}
|
|
}
|
|
async function handleFieldChange() {
|
|
async function handleFieldChange() {
|
|
- await saveExportFields({ type: 'SCORE', cols: headFields.value });
|
|
|
|
|
|
+ await saveExportFields({ type: 'STUDENT', cols: headFields.value });
|
|
}
|
|
}
|
|
|
|
|
|
// table action
|
|
// table action
|