|
@@ -1,102 +1,88 @@
|
|
|
<template>
|
|
<template>
|
|
|
<div class="app-page">
|
|
<div class="app-page">
|
|
|
<el-form :model="queryParams" ref="queryRef" v-show="showSearch" label-width="100px" @submit.prevent="handleQuery">
|
|
<el-form :model="queryParams" ref="queryRef" v-show="showSearch" label-width="100px" @submit.prevent="handleQuery">
|
|
|
- <!-- 第一行:卡号段、卡类型、卡分配日期 -->
|
|
|
|
|
|
|
+ <!-- 其他表单项:每行4个 -->
|
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="卡号段" prop="begin">
|
|
|
|
|
- <div class="flex items-center gap-x-1">
|
|
|
|
|
- <el-input v-model="queryParams.begin" type="text" maxlength="11" class="w-[85px]!" placeholder="开始卡号" @keyup.enter="handleQuery" />
|
|
|
|
|
- <span class="text-gray-500 text-sm">-</span>
|
|
|
|
|
- <el-input v-model="queryParams.end" type="text" maxlength="11" class="w-[85px]!" placeholder="结束卡号" @keyup.enter="handleQuery" />
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ <el-form-item label="省份筛选" prop="provinceId">
|
|
|
|
|
+ <el-cascader class="w-[180px]!" :options="area.list" :props="cascaderProps" v-model="area.selected" clearable @change="handleAreaChange" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="卡类型" prop="type">
|
|
|
|
|
- <ie-select v-model="queryParams.type" :options="card_type" class="w-[180px]!" clearable />
|
|
|
|
|
|
|
+ <el-form-item label="注册学校" prop="schoolId">
|
|
|
|
|
+ <ie-select v-model="selectedSchool" :options="schoolList" label-key="name" value-key="id" filterable clearable
|
|
|
|
|
+ class="w-[180px]!" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="卡分配日期" prop="assignTimeRange">
|
|
|
|
|
- <el-date-picker v-model="queryParams.assignTimeRange" type="daterange" range-separator="至"
|
|
|
|
|
- start-placeholder="开始日期" end-placeholder="结束日期" value-format="YYYY-MM-DD" class="w-[180px]!" />
|
|
|
|
|
|
|
+ <el-form-item label="注册班级" prop="classId">
|
|
|
|
|
+ <ie-select v-model="selectedClass" :options="classList" label-key="name" value-key="classId" filterable
|
|
|
|
|
+ clearable class="w-[180px]!" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item>
|
|
|
|
|
- <div class="flex gap-x-2">
|
|
|
|
|
- <el-button type="primary" icon="Search" @click="handleQuery" class="w-[80px]">搜索</el-button>
|
|
|
|
|
- <el-button icon="Refresh" @click="resetQuery" class="w-[80px]">重置</el-button>
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ <el-form-item label="分配学校" prop="assignSchoolId">
|
|
|
|
|
+ <ie-select v-model="selectedAssignSchool" :options="schoolList" label-key="name" value-key="id" filterable
|
|
|
|
|
+ clearable class="w-[180px]!" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
- <!-- 其他表单项:每行4个 -->
|
|
|
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="省份筛选" prop="provinceId">
|
|
|
|
|
- <el-cascader class="w-[180px]!" :options="area.list" :props="cascaderProps" v-model="area.selected" clearable @change="handleAreaChange" />
|
|
|
|
|
|
|
+ <el-form-item label="培训校区" prop="campusId">
|
|
|
|
|
+ <ie-select v-model="selectedCampus" :options="campusList" label-key="name" value-key="id" filterable clearable
|
|
|
|
|
+ class="w-[180px]!" @change="handleCampusChange" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="分配学校" prop="assignSchoolId">
|
|
|
|
|
- <ie-select v-model="selectedAssignSchool" :options="schoolList" label-key="name" value-key="id" filterable
|
|
|
|
|
- clearable class="w-[180px]!" />
|
|
|
|
|
|
|
+ <el-form-item label="校区班级" prop="campusClassId">
|
|
|
|
|
+ <ie-select v-model="selectedCampusClass" :options="campusClassList" label-key="name" value-key="classId"
|
|
|
|
|
+ clearable filterable class="w-[180px]!" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="代理商" prop="agentId">
|
|
|
|
|
- <ie-agent-select v-model="queryParams.agentId" class="w-[180px]!" filterable clearable />
|
|
|
|
|
|
|
+ <el-form-item label="平台机构" prop="deptId">
|
|
|
|
|
+ <ie-institution-select v-model="queryParams.deptId" class="w-[180px]!" clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="平台机构" prop="deptId">
|
|
|
|
|
- <ie-institution-select v-model="queryParams.deptId" class="w-[180px]!" clearable />
|
|
|
|
|
|
|
+ <el-form-item label="代理商" prop="agentId">
|
|
|
|
|
+ <ie-agent-select v-model="queryParams.agentId" class="w-[180px]!" filterable clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
|
|
+ <!-- 第一行:卡号段、卡类型、卡分配日期 -->
|
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="注册学校" prop="schoolId">
|
|
|
|
|
- <ie-select v-model="selectedSchool" :options="schoolList" label-key="name" value-key="id" filterable clearable
|
|
|
|
|
- class="w-[180px]!" />
|
|
|
|
|
|
|
+ <el-form-item label="卡号段" prop="begin">
|
|
|
|
|
+ <div class="flex items-center gap-x-1">
|
|
|
|
|
+ <el-input v-model="queryParams.begin" type="text" maxlength="11" class="w-[85px]!" placeholder="开始卡号" @keyup.enter="handleQuery" />
|
|
|
|
|
+ <span class="text-gray-500 text-sm">-</span>
|
|
|
|
|
+ <el-input v-model="queryParams.end" type="text" maxlength="11" class="w-[85px]!" placeholder="结束卡号" @keyup.enter="handleQuery" />
|
|
|
|
|
+ </div>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="注册班级" prop="classId">
|
|
|
|
|
- <ie-select v-model="selectedClass" :options="classList" label-key="name" value-key="classId" filterable
|
|
|
|
|
- clearable class="w-[180px]!" />
|
|
|
|
|
|
|
+ <el-form-item label="卡类型" prop="type">
|
|
|
|
|
+ <ie-select v-model="queryParams.type" :options="card_type" class="w-[180px]!" clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="培训学校" prop="campusId">
|
|
|
|
|
- <ie-select v-model="selectedCampus" :options="campusList" label-key="name" value-key="id" filterable clearable
|
|
|
|
|
- class="w-[180px]!" @change="handleCampusChange" />
|
|
|
|
|
|
|
+ <el-form-item label="考生类型" prop="examType">
|
|
|
|
|
+ <ie-select v-model="queryParams.examType" :options="exam_type" class="w-[180px]!" clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="培训班级" prop="campusClassId">
|
|
|
|
|
- <ie-select v-model="selectedCampusClass" :options="campusClassList" label-key="name" value-key="classId"
|
|
|
|
|
- clearable filterable class="w-[180px]!" />
|
|
|
|
|
|
|
+ <el-form-item label="学生姓名" prop="nickName">
|
|
|
|
|
+ <el-input v-model="queryParams.nickName" type="text" class="w-[180px]!" placeholder="请输入姓名" clearable @keyup.enter="handleQuery" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
- <el-form-item label="姓名" prop="nickName">
|
|
|
|
|
- <el-input v-model="queryParams.nickName" type="text" class="w-[180px]!" placeholder="请输入姓名" clearable @keyup.enter="handleQuery" />
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-col>
|
|
|
|
|
- <el-col :span="6">
|
|
|
|
|
- <el-form-item label="手机" prop="phonenumber">
|
|
|
|
|
|
|
+ <el-form-item label="手机号码" prop="phonenumber">
|
|
|
<el-input v-model="queryParams.phonenumber" type="text" v-number maxlength="11" class="w-[180px]!"
|
|
<el-input v-model="queryParams.phonenumber" type="text" v-number maxlength="11" class="w-[180px]!"
|
|
|
- placeholder="请输入手机号" clearable @keyup.enter="handleQuery" />
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-col>
|
|
|
|
|
- <el-col :span="6">
|
|
|
|
|
- <el-form-item label="考生类型" prop="examType">
|
|
|
|
|
- <ie-select v-model="queryParams.examType" :options="exam_type" class="w-[180px]!" clearable />
|
|
|
|
|
|
|
+ placeholder="请输入手机号码" clearable @keyup.enter="handleQuery" />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
@@ -105,8 +91,6 @@
|
|
|
clearable />
|
|
clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
- </el-row>
|
|
|
|
|
- <el-row :gutter="20">
|
|
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
<el-form-item label="使用状态" prop="status">
|
|
<el-form-item label="使用状态" prop="status">
|
|
|
<ie-select v-model="queryParams.status" :options="card_status" class="w-[180px]!" clearable />
|
|
<ie-select v-model="queryParams.status" :options="card_status" class="w-[180px]!" clearable />
|
|
@@ -117,6 +101,9 @@
|
|
|
<ie-select v-model="queryParams.timeStatus" :options="card_time_status" class="w-[180px]!" clearable />
|
|
<ie-select v-model="queryParams.timeStatus" :options="card_time_status" class="w-[180px]!" clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
+
|
|
|
|
|
+ </el-row>
|
|
|
|
|
+ <el-row :gutter="20">
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
|
<el-form-item label="结算状态" prop="isSettlement">
|
|
<el-form-item label="结算状态" prop="isSettlement">
|
|
|
<ie-select v-model="queryParams.isSettlement" :options="card_settlement_status" class="w-[180px]!" clearable />
|
|
<ie-select v-model="queryParams.isSettlement" :options="card_settlement_status" class="w-[180px]!" clearable />
|
|
@@ -127,6 +114,20 @@
|
|
|
<ie-select v-model="queryParams.payStatus" :options="card_pay_status" class="w-[180px]!" clearable />
|
|
<ie-select v-model="queryParams.payStatus" :options="card_pay_status" class="w-[180px]!" clearable />
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
|
|
+ <el-col :span="6">
|
|
|
|
|
+ <el-form-item label="卡分配日期" prop="assignTimeRange">
|
|
|
|
|
+ <el-date-picker v-model="queryParams.assignTimeRange" type="daterange" range-separator="至"
|
|
|
|
|
+ start-placeholder="开始日期" end-placeholder="结束日期" value-format="YYYY-MM-DD" class="w-[180px]!" />
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ </el-col>
|
|
|
|
|
+ <el-col :span="6">
|
|
|
|
|
+ <el-form-item>
|
|
|
|
|
+ <div class="flex gap-x-2">
|
|
|
|
|
+ <el-button type="primary" icon="Search" @click="handleQuery" class="w-[80px]">搜索</el-button>
|
|
|
|
|
+ <el-button icon="Refresh" @click="resetQuery" class="w-[80px]">重置</el-button>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ </el-col>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
<!-- <el-row :gutter="20">
|
|
<!-- <el-row :gutter="20">
|
|
|
<el-col :span="6">
|
|
<el-col :span="6">
|
|
@@ -458,19 +459,19 @@ const handleAreaChange = () => {
|
|
|
// 初始化数据加载(只在首次挂载时执行,keep-alive 缓存后不会再次执行)
|
|
// 初始化数据加载(只在首次挂载时执行,keep-alive 缓存后不会再次执行)
|
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
|
// 如果列表数据已存在(keep-alive 缓存),则不重新调用接口
|
|
// 如果列表数据已存在(keep-alive 缓存),则不重新调用接口
|
|
|
- if (cardList.value.length > 0 || total.value > 0) {
|
|
|
|
|
- // 只检查省份数据,如果丢失则重新加载
|
|
|
|
|
- if (!area.list || area.list.length === 0) {
|
|
|
|
|
- getAreaList()
|
|
|
|
|
- }
|
|
|
|
|
- return
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- // 初始进入页面时,加载分配学校、注册学校、培训学校的数据
|
|
|
|
|
|
|
+ // if (cardList.value.length > 0 || total.value > 0) {
|
|
|
|
|
+ // // 只检查省份数据,如果丢失则重新加载
|
|
|
|
|
+ // if (!area.list || area.list.length === 0) {
|
|
|
|
|
+ // getAreaList()
|
|
|
|
|
+ // }
|
|
|
|
|
+ // return
|
|
|
|
|
+ // }
|
|
|
|
|
+
|
|
|
|
|
+ // 初始进入页面时,加载分配学校、注册学校、培训校区的数据
|
|
|
// 即使没有选择省份,也调用接口获取所有数据(areaCode 为 undefined 时接口会返回所有数据)
|
|
// 即使没有选择省份,也调用接口获取所有数据(areaCode 为 undefined 时接口会返回所有数据)
|
|
|
getSchoolList()
|
|
getSchoolList()
|
|
|
getCampusList()
|
|
getCampusList()
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 加载列表数据
|
|
// 加载列表数据
|
|
|
handleQuery()
|
|
handleQuery()
|
|
|
})
|
|
})
|