|
|
@@ -3,37 +3,34 @@
|
|
|
@confirm="handleConfirm">
|
|
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
|
|
<el-form-item label="平台机构" prop="deptId" required>
|
|
|
- <ie-institution-select v-model="form.deptId" class="w-[350px]!" />
|
|
|
+ <ie-institution-select v-model="form.deptId" class="w-[350px]!" clearable />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="卡类型" prop="cardType">
|
|
|
<ie-select v-model="form.cardType" :options="card_type" class="w-[350px]!" clearable />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="卡号段" prop="cardNoRange" :required="!cardIds || cardIds.length === 0">
|
|
|
+ <el-form-item label="卡号段" prop="cardNoRange" required>
|
|
|
<div class="flex items-center gap-x-3">
|
|
|
- <el-input v-model="form.begin" type="text" maxlength="8" v-number class="w-[160px]!"
|
|
|
- placeholder="请输入开始卡号" :disabled="cardIds && cardIds.length > 0" />
|
|
|
+ <el-input v-model="form.begin" type="text" maxlength="8" v-number class="w-[160px]!"
|
|
|
+ placeholder="请输入开始卡号" />
|
|
|
<span class="text-gray-500">-</span>
|
|
|
- <el-input v-model="form.end" type="text" maxlength="8" v-number class="w-[160px]!"
|
|
|
- placeholder="请输入结束卡号" :disabled="cardIds && cardIds.length > 0" />
|
|
|
- </div>
|
|
|
- <div v-if="cardIds && cardIds.length > 0" class="text-sm text-gray-500 mt-1">
|
|
|
- 已选择 {{ cardIds.length }} 张卡片,将使用选中的卡片进行分配
|
|
|
+ <el-input v-model="form.end" type="text" maxlength="8" v-number class="w-[160px]!"
|
|
|
+ placeholder="请输入结束卡号" />
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="代理商" prop="agentId" required>
|
|
|
- <ie-agent-select v-model="form.agentId" :deptId="form.deptId" class="w-[350px]!" filterable />
|
|
|
+ <ie-agent-select v-model="form.agentId" :deptId="form.deptId" class="w-[350px]!" filterable clearable />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="省份" prop="provinceId">
|
|
|
<ie-select v-model="area.selected" v-model:selectedItem="area.selectedItem" :options="area.list"
|
|
|
- label-key="areaName" value-key="areaId" class="w-[350px]!" />
|
|
|
+ label-key="areaName" value-key="areaId" class="w-[350px]!" clearable />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="学校" prop="schoolId">
|
|
|
<ie-select v-model="selectedSchool" :options="schoolList" label-key="name" value-key="id" filterable
|
|
|
- class="w-[350px]!" />
|
|
|
+ class="w-[350px]!" clearable />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="考生类型" prop="assignExamType">
|
|
|
<ie-select v-model="selectedExamType" :options="examTypeList" label-key="dictLabel" value-key="dictValue"
|
|
|
- class="w-[350px]!" />
|
|
|
+ class="w-[350px]!" clearable />
|
|
|
</el-form-item>
|
|
|
<el-form-item v-if="form.cardType === '9'" label="有效期" prop="days">
|
|
|
<el-input-number v-model="form.days" :min="1" :max="10000" :step="1" :precision="0" class="w-full!">
|
|
|
@@ -70,7 +67,6 @@ const {
|
|
|
|
|
|
const modalRef = ref(null);
|
|
|
const formRef = ref(null);
|
|
|
-const cardIds = ref(null) // 选中的卡片ID列表
|
|
|
const defaultForm = {
|
|
|
deptId: null,
|
|
|
agentId: null,
|
|
|
@@ -83,14 +79,8 @@ const defaultForm = {
|
|
|
const form = ref({ ...defaultForm })
|
|
|
// 自定义验证
|
|
|
const validateCardNoRange = (rule, value, callback) => {
|
|
|
- // 如果有选中的卡片ID,则不需要验证卡号段
|
|
|
- if (cardIds.value && cardIds.value.length > 0) {
|
|
|
- callback()
|
|
|
- return
|
|
|
- }
|
|
|
- // 如果没有选中卡片,则需要验证卡号段
|
|
|
if (!form.value.begin || !form.value.end) {
|
|
|
- callback(new Error('请输入卡号段或选择卡片'))
|
|
|
+ callback(new Error('请输入卡号段'))
|
|
|
} else if (Number(form.value.begin) > Number(form.value.end)) {
|
|
|
callback(new Error('开始卡号不能大于结束卡号'))
|
|
|
} else {
|
|
|
@@ -126,15 +116,12 @@ const rules = ref({
|
|
|
|
|
|
const handleBeforeClose = () => {
|
|
|
form.value = { ...defaultForm };
|
|
|
- cardIds.value = null;
|
|
|
reset();
|
|
|
}
|
|
|
|
|
|
-const open = (selectedCardIds = null) => {
|
|
|
+const open = () => {
|
|
|
init();
|
|
|
form.value = { ...defaultForm };
|
|
|
- // 如果传入了选中的卡片ID列表,则使用它
|
|
|
- cardIds.value = selectedCardIds && selectedCardIds.length > 0 ? selectedCardIds : null;
|
|
|
modalRef.value.open()
|
|
|
}
|
|
|
const close = () => {
|
|
|
@@ -157,15 +144,9 @@ const handleConfirm = () => {
|
|
|
location,
|
|
|
assignExamType,
|
|
|
schoolId,
|
|
|
- days
|
|
|
- }
|
|
|
-
|
|
|
- // 如果有选中的卡片ID,使用cardIds;否则使用begin和end
|
|
|
- if (cardIds.value && cardIds.value.length > 0) {
|
|
|
- params.cardIds = Array.isArray(cardIds.value) ? cardIds.value.join(",") : cardIds.value
|
|
|
- } else {
|
|
|
- params.begin = form.value.begin
|
|
|
- params.end = form.value.end
|
|
|
+ days,
|
|
|
+ begin: form.value.begin,
|
|
|
+ end: form.value.end
|
|
|
}
|
|
|
|
|
|
assignCard(params).then(res => {
|