fix: 修复采购规则配置金额字段清空后未置空的问题
- el-input-number 清空时显式设置 null - 提交时确保 amountMin/amountMax 为 null 而非 undefined - 添加 @change 事件处理金额字段变化
This commit is contained in:
@@ -51,6 +51,7 @@
|
|||||||
:controls="false"
|
:controls="false"
|
||||||
placeholder="金额下限"
|
placeholder="金额下限"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
|
@change="handleAmountMinChange"
|
||||||
/>
|
/>
|
||||||
<span>元</span>
|
<span>元</span>
|
||||||
<span style="margin: 0 8px;">至</span>
|
<span style="margin: 0 8px;">至</span>
|
||||||
@@ -61,6 +62,7 @@
|
|||||||
:controls="false"
|
:controls="false"
|
||||||
placeholder="金额上限"
|
placeholder="金额上限"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
|
@change="handleAmountMaxChange"
|
||||||
/>
|
/>
|
||||||
<span>元</span>
|
<span>元</span>
|
||||||
<span style="color: #909399; font-size: 12px;">(不填表示不限)</span>
|
<span style="color: #909399; font-size: 12px;">(不填表示不限)</span>
|
||||||
@@ -224,13 +226,18 @@ const resetForm = () => {
|
|||||||
|
|
||||||
const handleSubmit = async () => {
|
const handleSubmit = async () => {
|
||||||
await formRef.value?.validate();
|
await formRef.value?.validate();
|
||||||
|
const submitData = {
|
||||||
|
...form,
|
||||||
|
amountMin: form.amountMin ?? null,
|
||||||
|
amountMax: form.amountMax ?? null
|
||||||
|
};
|
||||||
submitLoading.value = true;
|
submitLoading.value = true;
|
||||||
try {
|
try {
|
||||||
if (isEdit.value) {
|
if (isEdit.value) {
|
||||||
await putObj(form);
|
await putObj(submitData);
|
||||||
useMessage().success('修改成功');
|
useMessage().success('修改成功');
|
||||||
} else {
|
} else {
|
||||||
await addObj(form);
|
await addObj(submitData);
|
||||||
useMessage().success('新增成功');
|
useMessage().success('新增成功');
|
||||||
}
|
}
|
||||||
visible.value = false;
|
visible.value = false;
|
||||||
@@ -242,5 +249,13 @@ const handleSubmit = async () => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const handleAmountMinChange = (val: number | undefined) => {
|
||||||
|
form.amountMin = val ?? null;
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleAmountMaxChange = (val: number | undefined) => {
|
||||||
|
form.amountMax = val ?? null;
|
||||||
|
};
|
||||||
|
|
||||||
defineExpose({ openDialog });
|
defineExpose({ openDialog });
|
||||||
</script>
|
</script>
|
||||||
Reference in New Issue
Block a user