筛选优化
This commit is contained in:
1 parent
ccdfe977ba
commit
0ce758191e
7 files changed
+119
-6
No files matched your search
@@ -54,6 +54,7 @@ const now = ref(Date.now())
|
||||
const fileInput = ref<HTMLInputElement>()
|
||||
const termId = ref<string>()
|
||||
const taskKeyword = ref('')
|
||||
const taskClassKeyword = ref('')
|
||||
const taskPage = ref(1)
|
||||
const taskPageSize = 12
|
||||
const taskTotal = ref(0)
|
||||
@@ -126,6 +127,7 @@ async function loadTasks(resetPage = false) {
|
||||
params: {
|
||||
academicTermId: termId.value || undefined,
|
||||
keyword: taskKeyword.value.trim() || undefined,
|
||||
classKeyword: taskClassKeyword.value.trim() || undefined,
|
||||
page: taskPage.value,
|
||||
pageSize: taskPageSize,
|
||||
},
|
||||
@@ -164,6 +166,20 @@ async function selectTask(task: any) {
|
||||
if (activeMode.value === 'statistics') await loadStatistics()
|
||||
}
|
||||
|
||||
function resetTaskFilters() {
|
||||
taskKeyword.value = ''
|
||||
taskClassKeyword.value = ''
|
||||
termId.value = defaultAcademicTermId(terms.value)
|
||||
loadTasks(true)
|
||||
}
|
||||
|
||||
function resetSheetFilters() {
|
||||
sheetKeyword.value = ''
|
||||
sheetStatus.value = undefined
|
||||
sheetMethod.value = undefined
|
||||
loadSheets(true)
|
||||
}
|
||||
|
||||
async function loadSheets(resetPage = false) {
|
||||
if (!selectedTask.value) return
|
||||
try {
|
||||
@@ -737,7 +753,15 @@ onUnmounted(() => {
|
||||
<el-select v-model="termId" clearable placeholder="全部学期" @change="loadTasks(true)">
|
||||
<el-option v-for="term in terms" :key="term.id" :label="academicTermLabel(term)" :value="term.id" :class="academicTermOptionClass(term)" />
|
||||
</el-select>
|
||||
<el-input
|
||||
v-model="taskClassKeyword"
|
||||
clearable
|
||||
placeholder="行政班、专业或班级代码"
|
||||
@keyup.enter="loadTasks(true)"
|
||||
@clear="loadTasks(true)"
|
||||
/>
|
||||
<el-button :icon="Search" @click="loadTasks(true)">查询</el-button>
|
||||
<el-button :icon="Refresh" @click="resetTaskFilters">重置</el-button>
|
||||
<span>共 {{ taskTotal }} 个教学班</span>
|
||||
<el-radio-group v-model="activeMode" class="mode-switch" size="small">
|
||||
<el-radio-button value="rollcall">点名记录</el-radio-button>
|
||||
@@ -806,6 +830,7 @@ onUnmounted(() => {
|
||||
<el-option label="定位签到" value="Location" />
|
||||
</el-select>
|
||||
<el-button :icon="Search" @click="loadSheets(true)">筛选</el-button>
|
||||
<el-button :icon="Refresh" @click="resetSheetFilters">重置</el-button>
|
||||
</div>
|
||||
<div class="attendance-sheet-list">
|
||||
<button
|
||||
|
||||
Reference in new issue
Block a user