Переглянути джерело

feat: 企业表单选国外服务商时显示万里汇uid输入框

alphah 2 днів тому
батько
коміт
4ee6b6ce65

+ 16 - 0
frontend/src/views/module_payment/enterprise/components/EnterpriseForm.vue

@@ -28,6 +28,15 @@
         </el-col>
       </el-row>
 
+      <!-- 万里汇uid:仅国外服务商显示 -->
+      <el-row v-if="formData.scope_label === 'OVERSEAS'" :gutter="20">
+        <el-col :span="12">
+          <el-form-item label="万里汇uid" prop="wanlihui_uid">
+            <el-input v-model="formData.wanlihui_uid" placeholder="请输入万里汇uid" :maxlength="128" />
+          </el-form-item>
+        </el-col>
+      </el-row>
+
       <el-row :gutter="20">
         <el-col :span="12">
           <el-form-item label="身份类型" prop="identity_type">
@@ -205,6 +214,7 @@ const initialFormData = {
   identity_open_id: undefined,
   service_provider_id: null as number | null,
   scope_label: "",
+  wanlihui_uid: "",
 };
 
 const formData = reactive(
@@ -214,6 +224,10 @@ const formData = reactive(
 function handleProviderChange(val: number) {
   const provider = providerOptions.value.find(p => p.id === val);
   formData.scope_label = provider?.scope_label || "";
+  // 切换服务商时若不再是国外,清空万里汇uid
+  if (formData.scope_label !== "OVERSEAS") {
+    formData.wanlihui_uid = "";
+  }
 }
 
 // 身份类型变化处理
@@ -253,6 +267,7 @@ watch(
         materialForm.business_license = data.business_license || "";
         materialForm.business_scenario = data.business_scenario || "";
         materialForm.legal_rep_id_photo = data.legal_rep_id_photo || "";
+        formData.wanlihui_uid = data.wanlihui_uid || "";
         if (data.business_contracts) {
           try {
             const contracts = typeof data.business_contracts === "string"
@@ -427,6 +442,7 @@ async function submitForm() {
       identity_open_id: undefined,
       service_provider_id: formData.service_provider_id,
       scope_label: formData.scope_label,
+      wanlihui_uid: formData.wanlihui_uid || undefined,
     };
 
     // 入驻材料