From 97f29024ce18babeb4b635c5d73f907ac493976e Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期五, 22 八月 2025 16:15:48 +0800 Subject: [PATCH] fix: 签约 --- src/services/api/enterpriseEmployee.ts | 17 +++++ src/fabric-editor/components/systemTemplateDataParamSetting.vue | 1 src/fabric-editor/components/attributeTemplateParam.vue | 11 +++ src/services/api/electronSign.ts | 20 ++++++ src/services/api/typings.d.ts | 86 ++++++++++++++++++++++++++-- src/views/DictionaryManage/DataDictionary.vue | 2 src/fabric-editor/customObject/index.ts | 1 src/fabric-editor/hooks/context.ts | 1 src/views/DictionaryManage/components/AddOrEditDictionaryDialog.vue | 26 ++++++-- src/fabric-editor/types.d.ts | 2 10 files changed, 151 insertions(+), 16 deletions(-) diff --git a/src/fabric-editor/components/attributeTemplateParam.vue b/src/fabric-editor/components/attributeTemplateParam.vue index 415c20d..3b1bb4a 100644 --- a/src/fabric-editor/components/attributeTemplateParam.vue +++ b/src/fabric-editor/components/attributeTemplateParam.vue @@ -18,6 +18,14 @@ disabled ></el-input> </el-form-item> + <el-form-item :label="'鏁版嵁缁戝畾瀛楁'" required> + <el-input + v-model="baseAttr.bindProperty" + placeholder="璇疯緭鍏ユ暟鎹弬鏁板瓧娈�" + @input="(value) => changeCommon('bindProperty', value)" + disabled + ></el-input> + </el-form-item> <el-form-item :label="'鍚堝悓妯℃澘鍙橀噺绫诲瀷'" required> <FieldSelect v-model="baseAttr.templateParamType" @@ -26,6 +34,7 @@ @change="(value) => changeCommon('templateParamType', value)" /> </el-form-item> + <el-form-item :label="'鍚堝悓妯℃澘鍙橀噺'" required> <FieldSelect v-model="baseAttr.recorder" @@ -82,6 +91,7 @@ userType: EnumUserType.Personal, label: '', name: '', + bindProperty: '', required: true, }); @@ -98,6 +108,7 @@ baseAttr.label = activeObject.get('label'); baseAttr.name = activeObject.get('name'); baseAttr.required = activeObject.get('required'); + baseAttr.bindProperty = activeObject.get('bindProperty'); } }; diff --git a/src/fabric-editor/components/systemTemplateDataParamSetting.vue b/src/fabric-editor/components/systemTemplateDataParamSetting.vue index 7ea1a8c..850d753 100644 --- a/src/fabric-editor/components/systemTemplateDataParamSetting.vue +++ b/src/fabric-editor/components/systemTemplateDataParamSetting.vue @@ -70,6 +70,7 @@ required: true, label: item.label, name: item.data?.field3, + bindProperty: item.data?.field4, templateDataParamId: '', pageNum: templateEditState.currentImageIndex, diff --git a/src/fabric-editor/customObject/index.ts b/src/fabric-editor/customObject/index.ts index 2c61a8c..e7f659f 100644 --- a/src/fabric-editor/customObject/index.ts +++ b/src/fabric-editor/customObject/index.ts @@ -11,6 +11,7 @@ 'required', 'templateDataParamId', 'pageNum', + 'bindProperty', ]; export class TemplateParam extends fabric.IText { diff --git a/src/fabric-editor/hooks/context.ts b/src/fabric-editor/hooks/context.ts index 6406b85..b989b5e 100644 --- a/src/fabric-editor/hooks/context.ts +++ b/src/fabric-editor/hooks/context.ts @@ -184,6 +184,7 @@ type: x.templateParamType, recorder: x.recorder, userType: x.userType, + bindProperty: x.bindProperty, } as API.SaveContractTemplateValuesCommandItem) ), templateJsonData: JSON.stringify(templateEditState.jsonMap), diff --git a/src/fabric-editor/types.d.ts b/src/fabric-editor/types.d.ts index f7b6484..da2fe6a 100644 --- a/src/fabric-editor/types.d.ts +++ b/src/fabric-editor/types.d.ts @@ -13,6 +13,8 @@ name?: string; /** 鏄惁蹇呭~ */ required?: boolean; + /** 缁戝畾瀛楁 */ + bindProperty?: string; } } diff --git a/src/services/api/electronSign.ts b/src/services/api/electronSign.ts index acd5124..cc9ed3b 100644 --- a/src/services/api/electronSign.ts +++ b/src/services/api/electronSign.ts @@ -119,6 +119,26 @@ ); } +/** 鏌ヨ浼佷笟鍚堝悓妯℃澘閫夋嫨鍣ㄦ暟鎹� GET /api/user/electronSign/getEnterpriseContractTemplateSelect */ +export async function getEnterpriseContractTemplateSelect( + // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄) + params: API.APIgetEnterpriseContractTemplateSelectParams, + options?: API.RequestConfig +) { + return request<API.SelectOptionGuidGetEnterpriseContractTemplateSelectQueryOption[]>( + '/api/user/electronSign/getEnterpriseContractTemplateSelect', + { + method: 'GET', + params: { + ...params, + request: undefined, + ...params['request'], + }, + ...(options || {}), + } + ); +} + /** 鏌ヨ涓汉瀹炲悕缁撴灉 GET /api/user/electronSign/getPersonalUserRealResult */ export async function getPersonalUserRealResult( // 鍙犲姞鐢熸垚鐨凱aram绫诲瀷 (闈瀊ody鍙傛暟swagger榛樿娌℃湁鐢熸垚瀵硅薄) diff --git a/src/services/api/enterpriseEmployee.ts b/src/services/api/enterpriseEmployee.ts index b54b7c3..4f7e0c8 100644 --- a/src/services/api/enterpriseEmployee.ts +++ b/src/services/api/enterpriseEmployee.ts @@ -47,8 +47,6 @@ method: 'GET', params: { ...params, - request: undefined, - ...params['request'], }, ...(options || {}), } @@ -108,3 +106,18 @@ } ); } + +/** 閭�璇风伒宸ョ绾� POST /api/user/enterpriseEmployee/inviteEnterpriseEmployeeElectronSign */ +export async function inviteEnterpriseEmployeeElectronSign( + body: API.InviteEnterpriseEmployeeElectronSignCommand, + options?: API.RequestConfig +) { + return request<string>('/api/user/enterpriseEmployee/inviteEnterpriseEmployeeElectronSign', { + method: 'POST', + headers: { + 'Content-Type': 'application/json-patch+json', + }, + data: body, + ...(options || {}), + }); +} diff --git a/src/services/api/typings.d.ts b/src/services/api/typings.d.ts index e629fd1..3ae288f 100644 --- a/src/services/api/typings.d.ts +++ b/src/services/api/typings.d.ts @@ -71,14 +71,21 @@ enterpriseId?: string; } + interface APIgetEnterpriseContractTemplateSelectParams { + /** 鏌ヨ浼佷笟鍚堝悓妯℃澘閫夋嫨鍣ㄦ暟鎹� */ + request?: GetEnterpriseContractTemplateSelectQuery; + } + interface APIgetEnterpriseElectronSignSettingParams { /** Id */ id?: string; } interface APIgetEnterpriseEmployeeElectronSignParams { - /** 鏌ヨ涓汉鐢ㄦ埛绛剧害璇︽儏 */ - request?: GetEnterpriseEmployeeElectronSignQuery; + /** 鐏靛伐Id */ + id?: string; + /** 鍚堝悓妯℃澘涓氬姟缂栫爜 */ + code?: string; } interface APIgetEnterpriseEmployeeParams { @@ -1803,6 +1810,25 @@ timestamp?: number; } + interface FriendlyResultListSelectOptionGuidGetEnterpriseContractTemplateSelectQueryOption { + /** 璺熻釜Id */ + traceId?: string; + /** 鐘舵�佺爜 */ + code?: number; + /** 閿欒鐮� */ + errorCode?: string; + /** 鏁版嵁 */ + data?: SelectOptionGuidGetEnterpriseContractTemplateSelectQueryOption[]; + /** 鎵ц鎴愬姛 */ + success?: boolean; + /** 閿欒淇℃伅 */ + msg?: any; + /** 闄勫姞鏁版嵁 */ + extras?: any; + /** 鏃堕棿鎴� */ + timestamp?: number; + } + interface FriendlyResultListSelectOptionStringGetDictionaryDataSelectQueryResultOption { /** 璺熻釜Id */ traceId?: string; @@ -2287,6 +2313,8 @@ label?: string; /** 鍙橀噺浠g爜 */ name?: string; + /** 缁戝畾瀛楁 */ + bindProperty?: string; /** 鏄惁蹇呭~ */ required?: boolean; } @@ -2470,6 +2498,17 @@ content?: string[]; } + type GetEnterpriseContractTemplateSelectQuery = Record<string, any>; + + interface GetEnterpriseContractTemplateSelectQueryOption { + /** Id */ + id?: string; + /** 妯℃澘鍚嶇О */ + name?: string; + /** 妯℃澘Id */ + templateId?: string; + } + interface GetEnterpriseContractTemplatesQuery { /** 浼佷笟Id */ enterpriseId?: string; @@ -2523,9 +2562,27 @@ electronSignAccesses?: EnumElectronSignAccess[]; } - type GetEnterpriseEmployeeElectronSignQuery = Record<string, any>; - - type GetEnterpriseEmployeeElectronSignQueryResult = Record<string, any>; + interface GetEnterpriseEmployeeElectronSignQueryResult { + /** 鍚堝悓缂栧彿 */ + contractCode?: string; + userSignContractStatus?: EnumTaskUserSignContractStatus; + /** 绛剧害鏂逛俊鎭�-鍛樺伐-濮撳悕 */ + name?: string; + /** 绛剧害鏂逛俊鎭�-鍛樺伐-璇佷欢绫诲瀷 */ + identityType?: string; + /** 绛剧害鏂逛俊鎭�-鍛樺伐-璇佷欢鍙风爜 */ + identity?: string; + /** 绛剧害鏂逛俊鎭�-鍛樺伐-绛剧害鏃堕棿 */ + userSignContractTime?: string; + /** 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-涓讳綋绫诲瀷 */ + enterpriseType?: string; + /** 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-绛剧害涓讳綋 */ + enterpriseName?: string; + /** 绛剧害鏂逛俊鎭�-鍏徃涓讳綋-绛剧害鏃堕棿 */ + enterpriseSignContractTime?: string; + /** 鍗忚鍐呭 */ + contractUrl?: string; + } interface GetEnterpriseEmployeeElectronSignsQuery { userSignContractStatus?: EnumTaskUserSignContractStatus; @@ -2539,7 +2596,7 @@ } interface GetEnterpriseEmployeeElectronSignsQueryResultItem { - /** Id */ + /** 鐏靛伐Id */ id?: string; /** 浼佷笟鍏ㄧО */ enterpriseName?: string; @@ -3997,6 +4054,13 @@ identity?: string; } + interface InviteEnterpriseEmployeeElectronSignCommand { + /** 鐏靛伐Id */ + id?: string; + /** 鍚堝悓妯℃澘Id */ + contractTemplateId?: string; + } + interface LoginCommandCallback { /** 鐢ㄦ埛Id */ id?: string; @@ -4152,6 +4216,8 @@ label?: string; /** 鍙橀噺浠g爜 */ name?: string; + /** 缁戝畾瀛楁 */ + bindProperty?: string; /** 鏄惁蹇呭~ */ required?: boolean; } @@ -4475,6 +4541,14 @@ data?: GetDictionaryCategorySelectQueryOption; } + interface SelectOptionGuidGetEnterpriseContractTemplateSelectQueryOption { + /** 鍊� */ + value?: string; + /** 鏍囩 */ + label?: string; + data?: GetEnterpriseContractTemplateSelectQueryOption; + } + interface SelectOptionStringGetDictionaryDataSelectQueryResultOption { /** 鍊� */ value?: string; diff --git a/src/views/DictionaryManage/DataDictionary.vue b/src/views/DictionaryManage/DataDictionary.vue index 69e84cf..96df848 100644 --- a/src/views/DictionaryManage/DataDictionary.vue +++ b/src/views/DictionaryManage/DataDictionary.vue @@ -160,6 +160,7 @@ field1: row.field1, field3: row.field3, field2: convertApi2FormUrlOnlyOne(row.field2), + field4: row.field4, }); } else { handleAdd({ @@ -180,6 +181,7 @@ field1: '', field2: [] as UploadUserFile[], field3: '', + field4: '', title: '鏂板瀛楀吀', }, editTitle: '缂栬緫瀛楀吀', diff --git a/src/views/DictionaryManage/components/AddOrEditDictionaryDialog.vue b/src/views/DictionaryManage/components/AddOrEditDictionaryDialog.vue index 52032b2..e34bf6a 100644 --- a/src/views/DictionaryManage/components/AddOrEditDictionaryDialog.vue +++ b/src/views/DictionaryManage/components/AddOrEditDictionaryDialog.vue @@ -39,14 +39,23 @@ <ProFormItemV2 label="缂栧彿:" prop="code" :check-rules="[{ message: '璇疯緭鍏ョ紪鍙�' }]"> <ProFormText v-model.trim="form.code" :disabled="!!form.id"></ProFormText> </ProFormItemV2> - <ProFormItemV2 - label="鍙傛暟瀛楁鍚�:" - prop="field3" - :check-rules="[{ message: '璇疯緭鍏ュ弬鏁板瓧娈靛悕' }]" - v-if="category?.data?.code === CategoryCode.ElectronSignParam" - > - <ProFormText v-model.trim="form.field3"></ProFormText> - </ProFormItemV2> + <template v-if="category?.data?.code === CategoryCode.ElectronSignParam"> + <ProFormItemV2 + label="鍙傛暟瀛楁鍚�:" + prop="field3" + :check-rules="[{ message: '璇疯緭鍏ュ弬鏁板瓧娈靛悕' }]" + > + <ProFormText v-model.trim="form.field3" placeholder="璇疯緭鍏ュ弬鏁板瓧娈靛悕"></ProFormText> + </ProFormItemV2> + <ProFormItemV2 + label="缁戝畾瀛楁鍚�:" + prop="field4" + :check-rules="[{ message: '璇疯緭鍏ョ粦瀹氬瓧娈靛悕' }]" + > + <ProFormText v-model.trim="form.field4" placeholder="璇疯緭鍏ョ粦瀹氬瓧娈靛悕"></ProFormText> + </ProFormItemV2> + </template> + <ProFormItemV2 label="鍥剧墖:" prop="field2" @@ -105,6 +114,7 @@ field1?: string; field2?: UploadUserFile[]; field3?: string; + field4?: string; }; const form = defineModel<Form>('form'); -- Gitblit v1.9.1