lxr 2 месяцев назад
Родитель
Сommit
d2c0a5fdbf
1 измененных файлов с 26 добавлено и 5 удалено
  1. 26 5
      src/views/home/components/go-flow.vue

+ 26 - 5
src/views/home/components/go-flow.vue

@@ -424,7 +424,25 @@ const step2Rules: FormRules = {
   storeBlurb: [{ required: true, message: "请输入门店简介", trigger: "change" }],
   storeDetailAddress: [{ required: true, message: "请输入详细地址", trigger: "blur" }],
   businessSection: [{ required: true, message: "请选择经营板块", trigger: "change" }],
-  storeTickets: [{ required: true, message: "请选择标签", trigger: "change" }],
+  storeTickets: [
+    {
+      required: true,
+      message: "请选择标签",
+      trigger: "change",
+      validator: (_rule: any, value: any, callback: (err?: Error) => void) => {
+        // 仅当经营板块为「生活服务」时校验标签必选
+        if (step2Form.businessSection != 3) {
+          callback();
+          return;
+        }
+        if (value !== "" && value !== undefined && value !== null) {
+          callback();
+        } else {
+          callback(new Error("请选择标签"));
+        }
+      }
+    }
+  ],
   businessTypeName: [{ required: true, message: "请输入经营种类", trigger: "change" }],
   businessCategoryName: [{ required: true, message: "请选择经营类目", trigger: "change" }],
   address: [{ required: true, message: "请输入经纬度", trigger: "blur" }],
@@ -441,8 +459,8 @@ const step2Rules: FormRules = {
         else callback(new Error("请完整填写三项店铺评价"));
       }
     }
-  ],
-  disportLicenceImgList: [{ required: true, message: "请上传其他资质证明", trigger: "change" }]
+  ]
+  // disportLicenceImgList: [{ required: true, message: "请上传其他资质证明", trigger: "change" }]
 };
 
 //地址集合
@@ -486,10 +504,13 @@ watch(
 
 const changeBusinessSection = () => {
   if (step2Form.businessSection == 3) {
+    // 生活服务:显示标签,默认选「其他类型」(dictId=0)
     showDisportLicence.value = true;
+    (step2Form as { storeTickets: string | number }).storeTickets = 0;
   } else {
+    // 非生活服务:隐藏标签,不选任何类型
     showDisportLicence.value = false;
-    step2Form.storeTickets = "0";
+    step2Form.storeTickets = "";
   }
 };
 // 隐藏财务管理菜单的函数
@@ -609,7 +630,7 @@ const step2Form = reactive({
   storeAddress: "",
   storeBlurb: "",
   businessSection: 1,
-  storeTickets: "0" as string,
+  storeTickets: "",
   businessSecondLevel: [] as string[],
   businessTypes: "" as string,
   businessTypesList: [] as string[],