From 40aebfcd3f160a59b38c1b1542366e0ddd84bce8 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 22 八月 2025 15:10:28 +0800
Subject: [PATCH] feat: 接口对接

---
 src/views/EnterpriseManage/components/ConfigureDialog.vue |  162 ++++++++++++++---------------------------------------
 1 files changed, 43 insertions(+), 119 deletions(-)

diff --git a/src/views/EnterpriseManage/components/ConfigureDialog.vue b/src/views/EnterpriseManage/components/ConfigureDialog.vue
index c91035b..a4d0478 100644
--- a/src/views/EnterpriseManage/components/ConfigureDialog.vue
+++ b/src/views/EnterpriseManage/components/ConfigureDialog.vue
@@ -1,24 +1,24 @@
 <template>
-  <ProDialog title="閰嶇疆" v-model="innerVisible" @close="onDialogClose" destroy-on-close draggable>
-    <ProForm :model="innerForm" ref="dialogForm" label-width="100px">
+  <ProDialog title="閰嶇疆" v-model="visible" @close="onDialogClose" destroy-on-close draggable>
+    <ProForm :model="form" ref="dialogForm" label-width="120px">
       <ProFormItemV2 label="" prop="enterpriseConfigureType" label-width="0">
         <ProFormRadio
-          v-model="enterpriseConfigureType"
+          v-model="form.enterpriseConfigureType"
           :value-enum="EnterpriseConfigureTypeText"
           buttonStyle
         />
       </ProFormItemV2>
-      <template v-if="enterpriseConfigureType === EnterpriseConfigureType.Bank">
+      <!-- <template v-if="form.enterpriseConfigureType === EnterpriseConfigureType.Bank">
         <ProFormItemV2 label="寮�鎴锋�昏:" prop="openBank">
           <ProFormText
-            v-model.trim="innerForm.openBank"
+            v-model.trim="form.openBank"
             placeholder="璇疯緭鍏ュ紑鎴锋�昏"
             :maxlength="40"
           />
         </ProFormItemV2>
         <ProFormItemV2 label="寮�鎴锋敮琛�:" prop="openBranchBank">
           <ProFormText
-            v-model.trim="innerForm.openBranchBank"
+            v-model.trim="form.openBranchBank"
             placeholder="璇疯緭鍏ュ紑鎴锋敮琛�"
             :maxlength="40"
           />
@@ -31,89 +31,46 @@
             { message: '閾惰璐︽埛浠呮敮鎸佹暟瀛�', pattern: BoleRegExp.RegNumber },
           ]"
         >
-          <ProFormText v-model.trim="innerForm.bankAccount" placeholder="璇疯緭鍏ラ摱琛岃处鎴�" />
+          <ProFormText v-model.trim="form.bankAccount" placeholder="璇疯緭鍏ラ摱琛岃处鎴�" />
         </ProFormItemV2>
         <ProFormItemV2 label="閾惰璐︽埛:" prop="verifyStatus">
-          {{ VerifyStatusText[innerForm.verifyStatus] }}
+          {{ VerifyStatusText[form.verifyStatus] }}
           <el-button style="margin-left: 40px" type="primary" link @click="handleCheckBankAccount"
             >鏍¢獙</el-button
           >
         </ProFormItemV2>
-      </template>
-      <template v-if="enterpriseConfigureType === EnterpriseConfigureType.Electronic">
+      </template> -->
+      <template v-if="form.enterpriseConfigureType === EnterpriseConfigureType.Electronic">
         <div class="configure-dialog-form-title">閫氶亾閰嶇疆</div>
         <ProFormItemV2
-          label="鍚嶇О:"
-          prop="signChannel"
-          :checkRules="[{ message: '璇烽�夋嫨鐢靛瓙绛鹃�氶亾' }]"
+          v-for="(label, value, index) in EnumElectronSignAccessText"
+          :label="label"
+          :key="value"
+          prop="electronSignAccesses"
+          required
         >
-          <ProFormSelect
-            v-model="form.signChannel"
-            :valueEnum="SignChannelEnumText"
-            placeholder="璇烽�夋嫨鐢靛瓙绛鹃�氶亾"
-          >
-          </ProFormSelect>
+          <ProFormSwitch
+            v-model="form.electronSignAccesses[index]"
+            :active-value="Number(value)"
+            :inactive-value="null"
+          ></ProFormSwitch>
         </ProFormItemV2>
-        <div class="configure-dialog-form-title">璐圭敤閰嶇疆</div>
-        <ProFormItemV2
-          label="璁¤垂鏂瑰紡:"
-          prop="chargeType"
-          :checkRules="[{ message: '璇烽�夋嫨璁¤垂鏂瑰紡' }]"
-        >
-          <ProFormRadio
-            :button-style="false"
-            v-model="innerForm.chargeType"
-            :value-enum="ChargeTypeEnumText"
-          />
-        </ProFormItemV2>
-        <template v-if="innerForm.chargeType === ChargeTypeEnum.Group">
-          <ProFormItemV2 label="瀹炲悕璐圭敤:" prop="realVerifyCost">
-            <ProFormInputNumber
-              :controls="false"
-              v-model="innerForm.realVerifyCost"
-              placeholder="璇疯緭鍏�"
-              unit="鍏�/鏉�"
-            />
-          </ProFormItemV2>
-          <ProFormItemV2 label="绛剧害璐圭敤:" prop="signCost">
-            <ProFormInputNumber
-              :controls="false"
-              v-model="innerForm.signCost"
-              placeholder="璇疯緭鍏�"
-              unit="鍏�/浠�"
-            />
-          </ProFormItemV2>
-        </template>
-        <template v-if="innerForm.chargeType === ChargeTypeEnum.Merge">
-          <ProFormItemV2 label="缁熶竴鐢靛瓙绛�:" prop="mergeSignCost">
-            <ProFormInputNumber
-              :controls="false"
-              v-model="innerForm.mergeSignCost"
-              placeholder="璇疯緭鍏�"
-              unit="鍏�/浠�"
-            />
-          </ProFormItemV2>
-        </template>
       </template>
-      <template v-if="enterpriseConfigureType === EnterpriseConfigureType.ShortMessage">
+      <template v-if="form.enterpriseConfigureType === EnterpriseConfigureType.ShortMessage">
         <div class="configure-dialog-form-title">閫氶亾閰嶇疆</div>
-        <ProFormItemV2
-          label="鍚嶇О:"
-          prop="messageChannel"
-          :checkRules="[{ message: '璇烽�夋嫨鐭俊閫氶亾' }]"
-        >
+        <ProFormItemV2 label="鍚嶇О:" prop="smsAccess" :checkRules="[{ message: '璇烽�夋嫨鐭俊閫氶亾' }]">
           <ProFormSelect
-            v-model="form.messageChannel"
-            :valueEnum="MessageChannelEnumText"
+            v-model="form.smsAccess"
+            :valueEnum="EnumSmsAccessText"
             placeholder="璇烽�夋嫨鐭俊閫氶亾"
           >
           </ProFormSelect>
         </ProFormItemV2>
         <div class="configure-dialog-form-title">璐圭敤閰嶇疆</div>
-        <ProFormItemV2 label="鐭俊璐圭敤:" prop="messageCost">
+        <ProFormItemV2 label="鐭俊璐圭敤:" prop="smsCost">
           <ProFormInputNumber
             :controls="false"
-            v-model="innerForm.messageCost"
+            v-model="form.smsCost"
             placeholder="璇疯緭鍏�"
             unit="鍏�/鏉�"
           />
@@ -139,75 +96,42 @@
   ProFormRadio,
   ProFormInputNumber,
   ProFormSelect,
+  ProFormSwitch,
 } from '@bole-core/components';
 import { BoleRegExp } from '@bole-core/core';
 import {
   EnterpriseConfigureType,
   EnterpriseConfigureTypeText,
   ChargeTypeEnum,
-  ChargeTypeEnumText,
-  SignChannelEnum,
-  SignChannelEnumText,
-  VerifyStatusText,
-  VerifyStatusColor,
-  VerifyStatus,
-  MessageChannelEnum,
-  MessageChannelEnumText,
+  EnumElectronSignAccessText,
+  EnumSmsAccessText,
+  EnumElectronSignAccess,
 } from '@/constants';
 
 defineOptions({
   name: 'ConfigureDialog',
 });
 
-type Props = {
-  modelValue: boolean;
-  form?: {
-    openBank: string;
-    openBranchBank: string;
-    bankAccount: string;
-    verifyStatus: VerifyStatus;
-    signChannel: SignChannelEnum;
-    chargeType: ChargeTypeEnum;
-    realVerifyCost: number;
-    signCost: number;
-    mergeSignCost: number;
-    messageCost: number;
-    messageChannel: MessageChannelEnum;
-  };
+type Form = {
+  enterpriseConfigureType: EnterpriseConfigureType;
+  // openBank: string;
+  // openBranchBank: string;
+  // bankAccount: string;
+  // verifyStatus: VerifyStatus;
+  electronSignAccesses: EnumElectronSignAccess[];
+  smsAccess: EnumSmsAccess;
+  smsCost: number;
 };
 
-const props = withDefaults(defineProps<Props>(), {
-  modelValue: false,
-});
-
-const enterpriseConfigureType = ref<EnterpriseConfigureType>(EnterpriseConfigureType.Bank);
+const form = defineModel<Form>('form');
+const visible = defineModel({ type: Boolean });
 
 const emit = defineEmits<{
-  (e: 'update:modelValue', value: boolean): void;
-  (e: 'update:form', value: Props['form']): void;
-  (e: 'onConfirm', value: EnterpriseConfigureType): void;
+  (e: 'onConfirm'): void;
   (e: 'onCancel'): void;
 }>();
 
 const dialogForm = ref<FormInstance>();
-
-const innerVisible = computed({
-  get() {
-    return props.modelValue;
-  },
-  set(val) {
-    emit('update:modelValue', val);
-  },
-});
-
-const innerForm = computed({
-  get() {
-    return props.form;
-  },
-  set(val) {
-    emit('update:form', val);
-  },
-});
 
 function handleCheckBankAccount() {}
 
@@ -220,7 +144,7 @@
   if (!dialogForm.value) return;
   dialogForm.value.validate((valid) => {
     if (valid) {
-      emit('onConfirm', enterpriseConfigureType.value);
+      emit('onConfirm');
     } else {
       return;
     }

--
Gitblit v1.9.1