From ea419e5d4d95728a5654b0cb4bb3fb7634e2660a Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 24 十月 2025 15:55:28 +0800
Subject: [PATCH] fix: 自动签配置
---
.eslintrc-auto-import.json | 1 +
src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue | 36 +++++++++++++++++++++++++++++-------
src/views/ProtocolManage/EditTemplate.vue | 10 +++++++++-
auto-imports.d.ts | 2 ++
src/constants/electronSign.ts | 3 +++
5 files changed, 44 insertions(+), 8 deletions(-)
diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json
index 2b8d5a5..f11224d 100644
--- a/.eslintrc-auto-import.json
+++ b/.eslintrc-auto-import.json
@@ -5,6 +5,7 @@
"AppType": true,
"AreaType": true,
"AuthorizeType": true,
+ "AutoSignPowerAttorneyTempUrl": true,
"BooleanOptions": true,
"CategoryCode": true,
"CertificateTypeCodeEnum": true,
diff --git a/auto-imports.d.ts b/auto-imports.d.ts
index fb65a3e..1eeca58 100644
--- a/auto-imports.d.ts
+++ b/auto-imports.d.ts
@@ -11,6 +11,7 @@
const AppType: typeof import('./src/constants/app')['AppType']
const AreaType: typeof import('./src/constants/enum')['AreaType']
const AuthorizeType: typeof import('./src/constants/enum')['AuthorizeType']
+ const AutoSignPowerAttorneyTempUrl: typeof import('./src/constants/electronSign')['AutoSignPowerAttorneyTempUrl']
const BooleanOptions: typeof import('./src/constants/enum')['BooleanOptions']
const CategoryCode: typeof import('./src/constants/dic')['CategoryCode']
const CertificateTypeCodeEnum: typeof import('./src/constants/dic')['CertificateTypeCodeEnum']
@@ -371,6 +372,7 @@
readonly AppType: UnwrapRef<typeof import('./src/constants/app')['AppType']>
readonly AreaType: UnwrapRef<typeof import('./src/constants/enum')['AreaType']>
readonly AuthorizeType: UnwrapRef<typeof import('./src/constants/enum')['AuthorizeType']>
+ readonly AutoSignPowerAttorneyTempUrl: UnwrapRef<typeof import('./src/constants/electronSign')['AutoSignPowerAttorneyTempUrl']>
readonly BooleanOptions: UnwrapRef<typeof import('./src/constants/enum')['BooleanOptions']>
readonly CategoryCode: UnwrapRef<typeof import('./src/constants/dic')['CategoryCode']>
readonly CertificateTypeCodeEnum: UnwrapRef<typeof import('./src/constants/dic')['CertificateTypeCodeEnum']>
diff --git a/src/constants/electronSign.ts b/src/constants/electronSign.ts
index 65a05cc..dd8ae10 100644
--- a/src/constants/electronSign.ts
+++ b/src/constants/electronSign.ts
@@ -1,4 +1,5 @@
import { EnumContractTemplateValueRecorder } from './apiEnum';
+import { TempFolderPath } from './enum';
export const EnumContractTemplateStatusText = {
[EnumContractTemplateStatus.Wait]: '寰呭埗鐗�',
@@ -31,3 +32,5 @@
[EnumContractTemplateValueRecorder.Creator]: '鍙戜欢浜�',
[EnumContractTemplateValueRecorder.Signer]: '绛剧讲浜�',
};
+
+export const AutoSignPowerAttorneyTempUrl = `https://parkmanagement.oss-cn-hangzhou.aliyuncs.com/FlexJob/temp/%E3%80%90%E5%85%AC%E5%AF%B9%E5%85%AC%E3%80%91%E7%94%B5%E5%AD%90%E7%AD%BE%E5%90%8D%E6%8E%88%E6%9D%83%E4%B9%A6%EF%BC%88%E4%BB%A3%E4%B8%BA%E7%AD%BE%E7%BD%B2%26%E8%87%AA%E5%8A%A8%E7%AD%BE%EF%BC%89-V4-20220315.docx`;
diff --git a/src/views/ProtocolManage/EditTemplate.vue b/src/views/ProtocolManage/EditTemplate.vue
index d99ffb6..16a8129 100644
--- a/src/views/ProtocolManage/EditTemplate.vue
+++ b/src/views/ProtocolManage/EditTemplate.vue
@@ -181,6 +181,10 @@
showDownloadBtn: false,
formatter: (row: API.GetEnterpriseContractTemplatesQueryResultItem) => setOSSLink(row.file),
},
+ isAutoSign: {
+ formatter: (row: API.GetEnterpriseContractTemplatesQueryResultItem) =>
+ row.isAutoSign ? '鏄�' : '鍚�',
+ },
},
}
);
@@ -238,7 +242,6 @@
code: editForm.code,
access: editForm.access,
templateId: editForm.templateId,
- isAutoSign: editForm.isAutoSign,
autoSignPowerAttorneyUrl: editForm.autoSignPowerAttorneyUrl?.[0]?.path ?? '',
templateEditData: JSON.stringify(
pdfToImage.map(
@@ -251,6 +254,11 @@
)
),
};
+ if (editForm.access === EnumElectronSignAccess.BestSign) {
+ params.isAutoSign = editForm.isAutoSign;
+ } else {
+ params.isAutoSign = false;
+ }
if (isEdit) {
params.id = editForm.id;
}
diff --git a/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue b/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
index 7d8481f..04d7d16 100644
--- a/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
+++ b/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
@@ -55,14 +55,19 @@
accept="pdf"
></ProFormUpload>
</ProFormItemV2>
- <ProFormItemV2 label="鑷姩绛剧害锛�" prop="isAutoSign" required>
+ <ProFormItemV2
+ label="鑷姩绛剧害锛�"
+ prop="isAutoSign"
+ required
+ v-if="form.access === EnumElectronSignAccess.BestSign"
+ >
<ProFormSwitch v-model="form.isAutoSign"></ProFormSwitch>
</ProFormItemV2>
<ProFormItemV2
- label="鑷姩绛炬巿鏉冧功锛�"
+ label="涓婁紶鎺堟潈涔︼細"
prop="autoSignPowerAttorneyUrl"
- :check-rules="[{ message: '璇蜂笂浼犺嚜鍔ㄧ鎺堟潈涔�', type: 'upload' }]"
- v-if="form.isAutoSign"
+ :check-rules="form.isAutoSign && [{ message: '璇蜂笂浼犵鎺堟潈涔�', type: 'upload' }]"
+ :required="form.isAutoSign"
>
<ProFormUpload
v-model:file-url="form.autoSignPowerAttorneyUrl"
@@ -70,6 +75,7 @@
:limitFileSize="10"
accept="pdf,doc,docx,png,jpg,jpeg"
></ProFormUpload>
+ <el-button type="primary" link @click="handleDownload">涓嬭浇妯℃澘</el-button>
</ProFormItemV2>
</ProForm>
<template #footer>
@@ -91,9 +97,13 @@
ProFormSelect,
ProFormSwitch,
} 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';
@@ -124,6 +134,14 @@
(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,
@@ -141,6 +159,10 @@
} catch (error) {}
}
+function handleDownload() {
+ downloadFileByUrl(AutoSignPowerAttorneyTempUrl, '鑷姩绛炬巿鏉冧功妯℃澘');
+}
+
const dialogForm = ref<FormInstance>();
function onDialogClose() {
--
Gitblit v1.9.1