From ecaa5e0af0a087f256d497f7b7656f2900342226 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 22 八月 2025 15:10:53 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobAdmin
---
src/services/api/enterpriseEmployee.ts | 38 +++++++++
.eslintrc-auto-import.json | 1
src/services/api/electronSign.ts | 18 ++++
src/services/api/typings.d.ts | 102 +++++++++++++++++++++++++
src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue | 9 ++
src/views/ProtocolManage/EditTemplate.vue | 2
auto-imports.d.ts | 3
src/constants/apiEnum.ts | 4 +
src/hooks/electronSign.ts | 43 ++++++++++
src/hooks/index.ts | 1
src/views/EnterpriseManage/EnterpriseManageList.vue | 7 +
types/api.d.ts | 4 +
12 files changed, 230 insertions(+), 2 deletions(-)
diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json
index 4dc8632..4646e5b 100644
--- a/.eslintrc-auto-import.json
+++ b/.eslintrc-auto-import.json
@@ -221,6 +221,7 @@
"useCssModule": true,
"useCssVars": true,
"useDictionaryDataSelect": true,
+ "useEnabledElectronSignSettings": true,
"useGetDictionaryCategorySelect": true,
"useGlobalEventContext": true,
"useGlobalEventProvide": true,
diff --git a/auto-imports.d.ts b/auto-imports.d.ts
index 17e4ef2..b902105 100644
--- a/auto-imports.d.ts
+++ b/auto-imports.d.ts
@@ -222,6 +222,7 @@
const toValue: typeof import('vue')['toValue']
const triggerRef: typeof import('vue')['triggerRef']
const unref: typeof import('vue')['unref']
+ const useAA: typeof import('./src/hooks/electronSign')['useAA']
const useAccess: typeof import('./src/hooks/useAccess')['useAccess']
const useAllAreaList: typeof import('./src/hooks/dic')['useAllAreaList']
const useAllRoleList: typeof import('./src/hooks/useUser')['useAllRoleList']
@@ -233,6 +234,7 @@
const useCssModule: typeof import('vue')['useCssModule']
const useCssVars: typeof import('vue')['useCssVars']
const useDictionaryDataSelect: typeof import('./src/hooks/dic')['useDictionaryDataSelect']
+ const useEnabledElectronSignSettings: typeof import('./src/hooks/electronSign')['useEnabledElectronSignSettings']
const useGetDictionaryCategorySelect: typeof import('./src/hooks/dic')['useGetDictionaryCategorySelect']
const useGlobalEventContext: typeof import('./src/hooks/useEvent')['useGlobalEventContext']
const useGlobalEventProvide: typeof import('./src/hooks/useEvent')['useGlobalEventProvide']
@@ -511,6 +513,7 @@
readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
readonly useCssVars: UnwrapRef<typeof import('vue')['useCssVars']>
readonly useDictionaryDataSelect: UnwrapRef<typeof import('./src/hooks/dic')['useDictionaryDataSelect']>
+ readonly useEnabledElectronSignSettings: UnwrapRef<typeof import('./src/hooks/electronSign')['useEnabledElectronSignSettings']>
readonly useGetDictionaryCategorySelect: UnwrapRef<typeof import('./src/hooks/dic')['useGetDictionaryCategorySelect']>
readonly useGlobalEventContext: UnwrapRef<typeof import('./src/hooks/useEvent')['useGlobalEventContext']>
readonly useGlobalEventProvide: UnwrapRef<typeof import('./src/hooks/useEvent')['useGlobalEventProvide']>
diff --git a/src/constants/apiEnum.ts b/src/constants/apiEnum.ts
index 687a584..bd799b6 100644
--- a/src/constants/apiEnum.ts
+++ b/src/constants/apiEnum.ts
@@ -331,6 +331,10 @@
Pass = 20,
/**宸叉嫆绛� */
Refuse = 30,
+ /**鐢熸晥涓� */
+ Effect = 40,
+ /**宸茬粓姝� */
+ Stop = 50,
}
/** 浠诲姟楠屾敹鐘舵�� */
diff --git a/src/hooks/electronSign.ts b/src/hooks/electronSign.ts
new file mode 100644
index 0000000..8c737b3
--- /dev/null
+++ b/src/hooks/electronSign.ts
@@ -0,0 +1,43 @@
+import { useQuery, useQueryClient } from '@tanstack/vue-query';
+import * as electronSignServices from '@/services/api/electronSign';
+
+type UseEnabledElectronSignSettingsOptions = {
+ enterpriseId?: MaybeRef<string>;
+};
+
+export function useEnabledElectronSignSettings(
+ options: UseEnabledElectronSignSettingsOptions = {}
+) {
+ const { enterpriseId } = options;
+
+ const queryClient = useQueryClient();
+
+ const { data } = useQuery({
+ queryKey: ['electronSignServices/getEnabledElectronSignSettings', enterpriseId],
+ queryFn: async () => {
+ let res = await electronSignServices.getEnabledElectronSignSettings(
+ { enterpriseId: unref(enterpriseId) },
+ { showLoading: false }
+ );
+ return res;
+ },
+ select(data) {
+ return data.map((x) => ({
+ ...x,
+ accessName: EnumElectronSignAccessText[x.access],
+ }));
+ },
+ placeholderData: () => [] as API.GetEnabledElectronSignSettingsQueryResultItem[],
+ });
+
+ function invalidateQueries() {
+ return queryClient.invalidateQueries({
+ queryKey: ['electronSignServices/getEnabledElectronSignSettings', enterpriseId],
+ });
+ }
+
+ return {
+ enabledElectronSignSettings: data,
+ invalidateQueries,
+ };
+}
diff --git a/src/hooks/index.ts b/src/hooks/index.ts
index b4cd58c..90173c1 100644
--- a/src/hooks/index.ts
+++ b/src/hooks/index.ts
@@ -9,3 +9,4 @@
export * from './dic';
export * from './menu';
export * from './portraitTable';
+export * from './electronSign';
diff --git a/src/services/api/electronSign.ts b/src/services/api/electronSign.ts
index cfc6b4c..acd5124 100644
--- a/src/services/api/electronSign.ts
+++ b/src/services/api/electronSign.ts
@@ -65,6 +65,24 @@
);
}
+/** 鏌ヨ宸插惎鐢ㄧ殑鐢靛瓙绛鹃厤缃� GET /api/user/electronSign/getEnabledElectronSignSettings */
+export async function getEnabledElectronSignSettings(
+ // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+ params: API.APIgetEnabledElectronSignSettingsParams,
+ options?: API.RequestConfig
+) {
+ return request<API.GetEnabledElectronSignSettingsQueryResultItem[]>(
+ '/api/user/electronSign/getEnabledElectronSignSettings',
+ {
+ method: 'GET',
+ params: {
+ ...params,
+ },
+ ...(options || {}),
+ }
+ );
+}
+
/** 鏌ヨ浼佷笟鍚堝悓妯℃澘鏃ュ織鍒嗛〉鍒楄〃鏁版嵁 POST /api/user/electronSign/getEnterpriseContractTemplateLogs */
export async function getEnterpriseContractTemplateLogs(
body: API.GetEnterpriseContractTemplateLogsQuery,
diff --git a/src/services/api/enterpriseEmployee.ts b/src/services/api/enterpriseEmployee.ts
index dfe7822..b54b7c3 100644
--- a/src/services/api/enterpriseEmployee.ts
+++ b/src/services/api/enterpriseEmployee.ts
@@ -35,6 +35,44 @@
);
}
+/** 鏌ヨ涓汉鐢ㄦ埛绛剧害璇︽儏 GET /api/user/enterpriseEmployee/getEnterpriseEmployeeElectronSign */
+export async function getEnterpriseEmployeeElectronSign(
+ // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄)
+ params: API.APIgetEnterpriseEmployeeElectronSignParams,
+ options?: API.RequestConfig
+) {
+ return request<API.GetEnterpriseEmployeeElectronSignQueryResult>(
+ '/api/user/enterpriseEmployee/getEnterpriseEmployeeElectronSign',
+ {
+ method: 'GET',
+ params: {
+ ...params,
+ request: undefined,
+ ...params['request'],
+ },
+ ...(options || {}),
+ }
+ );
+}
+
+/** 鏌ヨ涓汉鐢ㄦ埛绛剧害鍒楄〃 POST /api/user/enterpriseEmployee/getEnterpriseEmployeeElectronSigns */
+export async function getEnterpriseEmployeeElectronSigns(
+ body: API.GetEnterpriseEmployeeElectronSignsQuery,
+ options?: API.RequestConfig
+) {
+ return request<API.GetEnterpriseEmployeeElectronSignsQueryResult>(
+ '/api/user/enterpriseEmployee/getEnterpriseEmployeeElectronSigns',
+ {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json-patch+json',
+ },
+ data: body,
+ ...(options || {}),
+ }
+ );
+}
+
/** 鏌ヨ鐏靛伐鍒嗛〉鍒楄〃鏁版嵁 POST /api/user/enterpriseEmployee/getEnterpriseEmployees */
export async function getEnterpriseEmployees(
body: API.GetEnterpriseEmployeesQuery,
diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts
index 68dbba3..e629fd1 100644
--- a/src/services/api/typings.d.ts
+++ b/src/services/api/typings.d.ts
@@ -66,9 +66,19 @@
withChildren?: boolean;
}
+ interface APIgetEnabledElectronSignSettingsParams {
+ /** 浼佷笟Id */
+ enterpriseId?: string;
+ }
+
interface APIgetEnterpriseElectronSignSettingParams {
/** Id */
id?: string;
+ }
+
+ interface APIgetEnterpriseEmployeeElectronSignParams {
+ /** 鏌ヨ涓汉鐢ㄦ埛绛剧害璇︽儏 */
+ request?: GetEnterpriseEmployeeElectronSignQuery;
}
interface APIgetEnterpriseEmployeeParams {
@@ -665,6 +675,10 @@
Pass = 20,
/**宸叉嫆绛� */
Refuse = 30,
+ /**鐢熸晥涓� */
+ Effect = 40,
+ /**宸茬粓姝� */
+ Stop = 50,
}
enum EnumTaskUserSubmitCheckReceiveStatus {
@@ -940,6 +954,42 @@
/** 閿欒鐮� */
errorCode?: string;
data?: GetEnterpriseElectronSignSettingQueryResult;
+ /** 鎵ц鎴愬姛 */
+ success?: boolean;
+ /** 閿欒淇℃伅 */
+ msg?: any;
+ /** 闄勫姞鏁版嵁 */
+ extras?: any;
+ /** 鏃堕棿鎴� */
+ timestamp?: number;
+ }
+
+ interface FriendlyResultGetEnterpriseEmployeeElectronSignQueryResult {
+ /** 璺熻釜Id */
+ traceId?: string;
+ /** 鐘舵�佺爜 */
+ code?: number;
+ /** 閿欒鐮� */
+ errorCode?: string;
+ data?: GetEnterpriseEmployeeElectronSignQueryResult;
+ /** 鎵ц鎴愬姛 */
+ success?: boolean;
+ /** 閿欒淇℃伅 */
+ msg?: any;
+ /** 闄勫姞鏁版嵁 */
+ extras?: any;
+ /** 鏃堕棿鎴� */
+ timestamp?: number;
+ }
+
+ interface FriendlyResultGetEnterpriseEmployeeElectronSignsQueryResult {
+ /** 璺熻釜Id */
+ traceId?: string;
+ /** 鐘舵�佺爜 */
+ code?: number;
+ /** 閿欒鐮� */
+ errorCode?: string;
+ data?: GetEnterpriseEmployeeElectronSignsQueryResult;
/** 鎵ц鎴愬姛 */
success?: boolean;
/** 閿欒淇℃伅 */
@@ -1591,6 +1641,25 @@
errorCode?: string;
/** 鏁版嵁 */
data?: GetAreaSelectQueryResultOption[];
+ /** 鎵ц鎴愬姛 */
+ success?: boolean;
+ /** 閿欒淇℃伅 */
+ msg?: any;
+ /** 闄勫姞鏁版嵁 */
+ extras?: any;
+ /** 鏃堕棿鎴� */
+ timestamp?: number;
+ }
+
+ interface FriendlyResultListGetEnabledElectronSignSettingsQueryResultItem {
+ /** 璺熻釜Id */
+ traceId?: string;
+ /** 鐘舵�佺爜 */
+ code?: number;
+ /** 閿欒鐮� */
+ errorCode?: string;
+ /** 鏁版嵁 */
+ data?: GetEnabledElectronSignSettingsQueryResultItem[];
/** 鎵ц鎴愬姛 */
success?: boolean;
/** 閿欒淇℃伅 */
@@ -2367,6 +2436,16 @@
isDisabled?: boolean;
}
+ interface GetEnabledElectronSignSettingsQueryResultItem {
+ access?: EnumElectronSignAccess;
+ /** 瀹炲悕璐圭敤 */
+ realVerifyCost?: number;
+ /** 绛剧害璐圭敤 */
+ signCost?: number;
+ /** 涓�鍙d环 */
+ mergeSignCost?: number;
+ }
+
interface GetEnterpriseContractTemplateLogsQuery {
/** 妯℃澘Id */
id?: string;
@@ -2444,6 +2523,29 @@
electronSignAccesses?: EnumElectronSignAccess[];
}
+ type GetEnterpriseEmployeeElectronSignQuery = Record<string, any>;
+
+ type GetEnterpriseEmployeeElectronSignQueryResult = Record<string, any>;
+
+ interface GetEnterpriseEmployeeElectronSignsQuery {
+ userSignContractStatus?: EnumTaskUserSignContractStatus;
+ pageModel?: PagedListQueryPageModel;
+ }
+
+ interface GetEnterpriseEmployeeElectronSignsQueryResult {
+ pageModel?: PagedListQueryResultPageModel;
+ /** 鏁版嵁 */
+ data?: GetEnterpriseEmployeeElectronSignsQueryResultItem[];
+ }
+
+ interface GetEnterpriseEmployeeElectronSignsQueryResultItem {
+ /** Id */
+ id?: string;
+ /** 浼佷笟鍏ㄧО */
+ enterpriseName?: string;
+ userSignContractStatus?: EnumTaskUserSignContractStatus;
+ }
+
interface GetEnterpriseEmployeeQueryResult {
/** 鐏靛伐Id */
id?: string;
diff --git a/src/views/EnterpriseManage/EnterpriseManageList.vue b/src/views/EnterpriseManage/EnterpriseManageList.vue
index dc5a167..4bbf424 100644
--- a/src/views/EnterpriseManage/EnterpriseManageList.vue
+++ b/src/views/EnterpriseManage/EnterpriseManageList.vue
@@ -91,6 +91,8 @@
const state = reactive({ ...BaseState });
+const { invalidateQueries } = useEnabledElectronSignSettings();
+
onMounted(async () => {
await getList();
state.loading = false;
@@ -219,13 +221,16 @@
// return await flexEnterpriseServices.createOrEditFlexEnterpriseBankSetting(params);
// } catch (error) {}
// }
+
async function createOrEditFlexEnterpriseSignSetting() {
try {
let params: API.SetEnterpriseElectronSignSettingCommand = {
id: editForm.id,
electronSignAccesses: editForm.electronSignAccesses.filter(Boolean),
};
- return await enterpriseServices.setEnterpriseElectronSignSetting(params);
+ let res = await enterpriseServices.setEnterpriseElectronSignSetting(params);
+ invalidateQueries();
+ return res;
} catch (error) {}
}
async function createOrEditFlexEnterpriseMessageSetting() {
diff --git a/src/views/ProtocolManage/EditTemplate.vue b/src/views/ProtocolManage/EditTemplate.vue
index c0c486a..833779c 100644
--- a/src/views/ProtocolManage/EditTemplate.vue
+++ b/src/views/ProtocolManage/EditTemplate.vue
@@ -197,6 +197,7 @@
title: '鏂板妯℃澘',
isEnterpriseUserCreated: false,
templateEditData: '',
+ enterpriseId: '',
},
});
@@ -213,6 +214,7 @@
access: row.access,
isEnterpriseUserCreated: detail.isEnterpriseUserCreated,
templateEditData: detail.templateEditData,
+ enterpriseId: enterpriseId,
});
} else {
handleAdd();
diff --git a/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue b/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
index 98db559..e4aa05c 100644
--- a/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
+++ b/src/views/ProtocolManage/components/AddOrEditTemplateDialog.vue
@@ -22,7 +22,9 @@
<ProFormSelect
placeholder="璇烽�夋嫨鐢靛瓙绛鹃�氶亾"
v-model="form.access"
- :value-enum="EnumElectronSignAccessText"
+ :value-enum="enabledElectronSignSettings"
+ enum-value-key="access"
+ enum-label-key="accessName"
></ProFormSelect>
</ProFormItemV2>
<ProFormItemV2 label="涓氬姟缂栫爜锛�" prop="code" :check-rules="[{ message: '璇疯緭鍏ヤ笟鍔$紪鐮�' }]">
@@ -91,6 +93,7 @@
file: UploadUserFile[];
access: EnumElectronSignAccess;
isEnterpriseUserCreated: boolean;
+ enterpriseId: string;
};
const form = defineModel<Form>('form');
@@ -100,6 +103,10 @@
(e: 'onCancel'): void;
}>();
+const { enabledElectronSignSettings } = useEnabledElectronSignSettings({
+ enterpriseId: computed(() => form.value.enterpriseId),
+});
+
const dialogForm = ref<FormInstance>();
function onDialogClose() {
diff --git a/types/api.d.ts b/types/api.d.ts
index c70a034..6f5bc26 100644
--- a/types/api.d.ts
+++ b/types/api.d.ts
@@ -43,4 +43,8 @@
quickQuery?: string
}
+ interface GetEnabledElectronSignSettingsQueryResultItem{
+ accessName?: string;
+ }
+
}
--
Gitblit v1.9.1