From 41072e5816e6cebb5ae7a0c417ba185dc442d00a Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 06 十一月 2025 18:24:45 +0800
Subject: [PATCH] feat: 接口
---
src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue | 62 +++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 3 deletions(-)
diff --git a/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue b/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
index 6e0f397..4007ad0 100644
--- a/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
+++ b/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
@@ -43,6 +43,13 @@
:disabled="form.isEnterpriseUserCreated"
></ProFormText>
</ProFormItemV2>
+ <ProFormItemV2 label="鑷畾涔夊唴瀹�:" prop="customContents">
+ <ProFormCheckbox
+ v-model="form.customContents"
+ :value-enum="templateParamList"
+ enum-value-key="label"
+ ></ProFormCheckbox>
+ </ProFormItemV2>
<ProFormItemV2
label="涓婁紶妯℃澘锛�"
prop="file"
@@ -54,6 +61,28 @@
:limitFileSize="10"
accept="pdf"
></ProFormUpload>
+ </ProFormItemV2>
+ <ProFormItemV2
+ label="鑷姩绛剧害锛�"
+ prop="isAutoSign"
+ required
+ v-if="form.access === EnumElectronSignAccess.BestSign"
+ >
+ <ProFormSwitch v-model="form.isAutoSign"></ProFormSwitch>
+ </ProFormItemV2>
+ <ProFormItemV2
+ label="涓婁紶鎺堟潈涔︼細"
+ prop="autoSignPowerAttorneyUrl"
+ :check-rules="form.isAutoSign && [{ message: '璇蜂笂浼犵鎺堟潈涔�', type: 'upload' }]"
+ :required="form.isAutoSign"
+ >
+ <ProFormUpload
+ v-model:file-url="form.autoSignPowerAttorneyUrl"
+ :limit="1"
+ :limitFileSize="10"
+ accept="pdf,doc,docx,png,jpg,jpeg"
+ ></ProFormUpload>
+ <el-button type="primary" link @click="handleDownload">涓嬭浇妯℃澘</el-button>
</ProFormItemV2>
</ProForm>
<template #footer>
@@ -73,12 +102,19 @@
ProFormText,
ProFormUpload,
ProFormSelect,
+ ProFormSwitch,
+ ProFormCheckbox,
} from '@bole-core/components';
-import { filterCN, filterNumbersFromString } from '@/utils';
-import { FormInstance } from 'element-plus';
-import { EnumElectronSignAccessText } from '@/constants';
+import { filterCN, filterNumbersFromString, downloadFileByUrl } from '@/utils';
+import { FormInstance, FormRules } from 'element-plus';
+import {
+ EnumElectronSignAccessText,
+ EnumElectronSignAccess,
+ AutoSignPowerAttorneyTempUrl,
+} from '@/constants';
import * as electronSignServices from '@/services/api/electronSign';
import { Message } from '@bole-core/core';
+import { useTemplateDetailProvide } from '@/fabric-editor/hooks/context';
defineOptions({
name: 'AddOrEditTemplateDialog',
@@ -96,6 +132,10 @@
access: EnumElectronSignAccess;
isEnterpriseUserCreated: boolean;
enterpriseId: string;
+ isAutoSign: boolean;
+ autoSignPowerAttorneyUrl: UploadUserFile[];
+
+ customContents: string[];
};
const form = defineModel<Form>('form');
@@ -105,9 +145,21 @@
(e: 'onCancel'): void;
}>();
+watch(
+ () => form.value.isAutoSign,
+ () => {
+ if (form.value.isAutoSign && dialogForm.value) {
+ dialogForm.value.clearValidate('autoSignPowerAttorneyUrl');
+ }
+ }
+);
const { enabledElectronSignSettings } = useEnabledElectronSignSettings({
enterpriseId: computed(() => form.value.enterpriseId),
all: true,
+});
+
+const { templateParamList } = useTemplateDetailProvide({
+ isDefault: false,
});
async function handleCodeBlur() {
@@ -122,6 +174,10 @@
} catch (error) {}
}
+function handleDownload() {
+ downloadFileByUrl(AutoSignPowerAttorneyTempUrl, '鑷姩绛炬巿鏉冧功妯℃澘');
+}
+
const dialogForm = ref<FormInstance>();
function onDialogClose() {
--
Gitblit v1.9.1