fix(shop): 修复店铺骑手编辑表单验证问题

- 为用户选择字段添加必填验证规则
- 在用户选择变化时触发表单验证
- 在门店选择变化时触发表单验证
- 注释开发环境API地址配置避免冲突
This commit is contained in:
2026-02-10 16:15:28 +08:00
parent 74068508c0
commit ac16fd5329
2 changed files with 16 additions and 1 deletions

View File

@@ -1,5 +1,5 @@
VITE_APP_NAME=后台管理(开发环境) VITE_APP_NAME=后台管理(开发环境)
VITE_API_URL=http://127.0.0.1:9200/api #VITE_API_URL=http://127.0.0.1:9200/api
#VITE_SERVER_API_URL=http://127.0.0.1:8000/api #VITE_SERVER_API_URL=http://127.0.0.1:8000/api

View File

@@ -252,6 +252,17 @@
// 表单验证规则 // 表单验证规则
const rules = reactive({ const rules = reactive({
userId: [
{
validator: (_rule: unknown, value: number | undefined) => {
if (!value) {
return Promise.reject(new Error('请选择用户'));
}
return Promise.resolve();
},
trigger: 'change'
}
],
storeId: [ storeId: [
{ {
validator: (_rule: unknown, value: number | undefined) => { validator: (_rule: unknown, value: number | undefined) => {
@@ -319,6 +330,7 @@
if (!user) { if (!user) {
selectedUserText.value = ''; selectedUserText.value = '';
form.userId = undefined; form.userId = undefined;
formRef.value?.validateFields(['userId']).catch(() => {});
return; return;
} }
form.userId = user.userId; form.userId = user.userId;
@@ -330,6 +342,7 @@
const name = user.realName ?? user.nickname ?? ''; const name = user.realName ?? user.nickname ?? '';
const phone = user.phone ?? user.mobile ?? ''; const phone = user.phone ?? user.mobile ?? '';
selectedUserText.value = phone ? `${name}${phone}` : name; selectedUserText.value = phone ? `${name}${phone}` : name;
formRef.value?.validateFields(['userId']).catch(() => {});
}; };
const onChooseCommunity = ( const onChooseCommunity = (
@@ -348,10 +361,12 @@
if (!store) { if (!store) {
selectedStoreText.value = ''; selectedStoreText.value = '';
form.storeId = undefined; form.storeId = undefined;
formRef.value?.validateFields(['storeId']).catch(() => {});
return; return;
} }
form.storeId = store.id; form.storeId = store.id;
selectedStoreText.value = store.name ?? String(store.id ?? ''); selectedStoreText.value = store.name ?? String(store.id ?? '');
formRef.value?.validateFields(['storeId']).catch(() => {});
}; };
const { resetFields } = useForm(form, rules); const { resetFields } = useForm(form, rules);