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

---
 src/views/EnterpriseManage/components/ConfigureDialog.vue |   26 +++++++++++++++-----------
 src/views/EnterpriseManage/EnterpriseManageList.vue       |   12 ++++++++++--
 2 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/src/views/EnterpriseManage/EnterpriseManageList.vue b/src/views/EnterpriseManage/EnterpriseManageList.vue
index e27c0cd..dc5a167 100644
--- a/src/views/EnterpriseManage/EnterpriseManageList.vue
+++ b/src/views/EnterpriseManage/EnterpriseManageList.vue
@@ -149,6 +149,12 @@
   } catch (error) {}
 }
 
+const EnumElectronSignAccessList = computed(() =>
+  Object.values(EnumElectronSignAccess)
+    .filter(Number)
+    .map((x) => Number(x))
+);
+
 async function openDialog(row?: API.GetEnterprisesQueryResultItem) {
   if (row) {
     let electronSignSetting = await getEnterpriseElectronSignSetting(row.id);
@@ -156,7 +162,9 @@
     handleEdit({
       id: row.id,
       enterpriseConfigureType: EnterpriseConfigureType.Electronic,
-      electronSignAccesses: electronSignSetting.electronSignAccesses,
+      electronSignAccesses: EnumElectronSignAccessList.value.map((value) =>
+        electronSignSetting.electronSignAccesses.includes(value) ? value : null
+      ),
       smsAccess: smsSetting.smsAccess,
       smsCost: smsSetting.smsCost,
     });
@@ -215,7 +223,7 @@
   try {
     let params: API.SetEnterpriseElectronSignSettingCommand = {
       id: editForm.id,
-      electronSignAccesses: editForm.electronSignAccesses,
+      electronSignAccesses: editForm.electronSignAccesses.filter(Boolean),
     };
     return await enterpriseServices.setEnterpriseElectronSignSetting(params);
   } catch (error) {}
diff --git a/src/views/EnterpriseManage/components/ConfigureDialog.vue b/src/views/EnterpriseManage/components/ConfigureDialog.vue
index 16d84e1..6b8a8aa 100644
--- a/src/views/EnterpriseManage/components/ConfigureDialog.vue
+++ b/src/views/EnterpriseManage/components/ConfigureDialog.vue
@@ -1,6 +1,6 @@
 <template>
   <ProDialog title="閰嶇疆" v-model="visible" @close="onDialogClose" destroy-on-close draggable>
-    <ProForm :model="form" ref="dialogForm" label-width="100px">
+    <ProForm :model="form" ref="dialogForm" label-width="120px">
       <ProFormItemV2 label="" prop="enterpriseConfigureType" label-width="0">
         <ProFormRadio
           v-model="form.enterpriseConfigureType"
@@ -40,20 +40,21 @@
           >
         </ProFormItemV2>
       </template> -->
+      {{ form.electronSignAccesses }}
       <template v-if="form.enterpriseConfigureType === EnterpriseConfigureType.Electronic">
         <div class="configure-dialog-form-title">閫氶亾閰嶇疆</div>
         <ProFormItemV2
-          label="鍚嶇О:"
+          v-for="(label, value, index) in EnumElectronSignAccessText"
+          :label="label"
+          :key="value"
           prop="electronSignAccesses"
-          :checkRules="[{ message: '璇烽�夋嫨鐢靛瓙绛鹃�氶亾' }]"
+          required
         >
-          <ProFormSelect
-            v-model="form.electronSignAccesses"
-            :valueEnum="EnumElectronSignAccessText"
-            placeholder="璇烽�夋嫨鐢靛瓙绛鹃�氶亾"
-            multiple
-          >
-          </ProFormSelect>
+          <ProFormSwitch
+            v-model="form.electronSignAccesses[index]"
+            :active-value="Number(value)"
+            :inactive-value="null"
+          ></ProFormSwitch>
         </ProFormItemV2>
       </template>
       <template v-if="form.enterpriseConfigureType === EnterpriseConfigureType.ShortMessage">
@@ -96,6 +97,7 @@
   ProFormRadio,
   ProFormInputNumber,
   ProFormSelect,
+  ProFormSwitch,
 } from '@bole-core/components';
 import { BoleRegExp } from '@bole-core/core';
 import {
@@ -104,7 +106,7 @@
   ChargeTypeEnum,
   EnumElectronSignAccessText,
   EnumSmsAccessText,
-  EnumRealAccess,
+  EnumElectronSignAccess,
 } from '@/constants';
 
 defineOptions({
@@ -125,6 +127,8 @@
 const form = defineModel<Form>('form');
 const visible = defineModel({ type: Boolean });
 
+const EnumElectronSignAccessList = computed(() => Object.values(EnumElectronSignAccess));
+
 const emit = defineEmits<{
   (e: 'onConfirm'): void;
   (e: 'onCancel'): void;

--
Gitblit v1.9.1