From 61d4b1cdbe39d2fd0fada988a30c8c73f1db1c97 Mon Sep 17 00:00:00 2001 From: zoujiandong <10130823232@qq.com> Date: Thu, 24 Sep 2026 15:56:02 +0800 Subject: [PATCH] 13 --- .../basic/pharmacy/components/pharmacyModal.vue | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/views/basic/pharmacy/components/pharmacyModal.vue b/src/views/basic/pharmacy/components/pharmacyModal.vue index a6b5dc9..09bc229 100644 --- a/src/views/basic/pharmacy/components/pharmacyModal.vue +++ b/src/views/basic/pharmacy/components/pharmacyModal.vue @@ -7,7 +7,7 @@ :ok-text="'保存'" :cancel-text="'取消'" :footer="mode !== 'detail'" - @ok="handleSubmit" + :on-before-ok="handleBeforeOk" @cancel="handleCancel" > { } }; -// 提交表单 -const handleSubmit = async () => { - if (!formRef.value) return; +// 提交表单前校验与处理 +const handleBeforeOk = async () => { + if (!formRef.value) return false; const errors = await formRef.value.validate(); if (errors) { + Message.warning('请检查并完善表单必填项'); return false; } @@ -387,13 +388,16 @@ const handleSubmit = async () => { if (res.code === 200) { Message.success(mode.value === 'add' ? '添加药房成功' : '修改药房成功'); - visible.value = false; emit('success'); + return true; } else { Message.error(res.message || '操作失败'); + return false; } } catch (error) { console.error('提交药房表单异常:', error); + Message.error('提交药房表单出现异常'); + return false; } finally { submitLoading.value = false; }