From 89eca80eaf4a75b512b0074c0fecc194162c3530 Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期五, 12 九月 2025 17:35:39 +0800 Subject: [PATCH] Merge branch 'master' into dev-v1.1 --- src/views/EnterpriseManage/EnterpriseManageList.vue | 170 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 143 insertions(+), 27 deletions(-) diff --git a/src/views/EnterpriseManage/EnterpriseManageList.vue b/src/views/EnterpriseManage/EnterpriseManageList.vue index 1ef6e37..3ea8079 100644 --- a/src/views/EnterpriseManage/EnterpriseManageList.vue +++ b/src/views/EnterpriseManage/EnterpriseManageList.vue @@ -6,16 +6,7 @@ <QueryFilterItem tip-content="閰嶇疆鐘舵��"> <FieldRadio v-model="extraParamState.isConfigured" - :value-enum="[ - { - value: true, - label: '宸查厤缃�', - }, - { - value: false, - label: '鏈厤缃�', - }, - ]" + :value-enum="IsConfiguredText" buttonStyle showAllBtn @change="getList()" @@ -24,7 +15,7 @@ <QueryFilterItem> <SearchInput v-model="extraParamState.keywords" - style="width: 200px" + style="width: 300px" placeholder="浼佷笟鍚嶇О/娉曚汉/鑱旂郴浜�" @on-click-search="getList" @keyup.enter="getList()" @@ -45,7 +36,7 @@ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns"> </ProTableV2> </AppContainer> - <!-- <ConfigureDialog v-bind="dialogProps" /> --> + <ConfigureDialog v-bind="dialogProps" /> </LoadingLayout> </template> @@ -61,12 +52,15 @@ useTable, useFormDialog, FieldRadio, + UploadUserFile, } from '@bole-core/components'; import { useAccess, useGlobalEventContext } from '@/hooks'; -import { EnterpriseConfigureType } from '@/constants'; +import { EnterpriseConfigureType, IsConfiguredText } from '@/constants'; import ConfigureDialog from './components/ConfigureDialog.vue'; import { Message } from '@bole-core/core'; import * as enterpriseServices from '@/services/api/enterprise'; +import * as enterpriseWalletServices from '@/services/api/enterpriseWallet'; +import { convertWalletApiToFiles, convertWalletFilesToApi } from '@/utils'; defineOptions({ name: 'EnterpriseManageList', @@ -100,10 +94,34 @@ const state = reactive({ ...BaseState }); +const { invalidateQueries } = useEnabledElectronSignSettings(); + onMounted(async () => { await getList(); state.loading = false; }); + +onMounted(() => { + if (typeof window !== 'undefined' && window.addEventListener) { + console.log('onMounted'); + window.addEventListener('visibilitychange', handleFocus); + // window.addEventListener('focus', handleFocus2); + } +}); + +onUnmounted(() => { + console.log('onUnmounted'); + window.removeEventListener('visibilitychange', handleFocus); + // window.removeEventListener('focus', handleFocus2); +}); + +function handleFocus() { + console.log('handleFocus1'); +} + +function handleFocus2() { + console.log('handleFocus2'); +} const { getDataSource: getList, @@ -138,45 +156,137 @@ orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], isConfigured: '' as any as boolean, }, - queryKey: ['flexEnterpriseServices/getFlexEnterpriseList'], - columnsRenderProps: {}, + queryKey: ['enterpriseServices/getEnterprises'], + columnsRenderProps: { + isReal: { type: 'enum', valueEnum: IsRealText }, + isConfigured: { type: 'enum', valueEnum: IsConfiguredText }, + }, } ); -function openDialog(row?: API.GetEnterprisesQueryResultItem) { - if (row) { - handleEdit({ - id: row.id, - }); - } else { - handleAdd(); - } +async function getEnterpriseElectronSignSetting(id: string) { + return await enterpriseServices.getEnterpriseElectronSignSetting({ id: id }); +} + +async function getEnterpriseSmsSetting(id: string) { + return await enterpriseServices.getEnterpriseSmsSetting({ id: id }); +} + +const EnumElectronSignAccessList = computed(() => + Object.values(EnumElectronSignAccess) + .filter(Number) + .map((x) => Number(x)) +); + +async function openDialog(row?: API.GetEnterprisesQueryResultItem) { + try { + if (row) { + let electronSignSetting = await getEnterpriseElectronSignSetting(row.id); + let smsSetting = await getEnterpriseSmsSetting(row.id); + let alipayWallet = await enterpriseWalletServices.getEnterpriseWallet({ + enterpriseId: row.id, + access: EnumEnterpriseWalletAccess.Alipay, + }); + handleEdit({ + id: row.id, + enterpriseConfigureType: EnterpriseConfigureType.AliPay, + electronSignAccesses: EnumElectronSignAccessList.value.map((value) => + electronSignSetting.electronSignAccesses.includes(value) ? value : null + ), + smsAccess: smsSetting.smsAccess, + smsCost: smsSetting.smsCost, + alipayAccount: alipayWallet.identity, + alipayMerchantId: alipayWallet.code, + signStatus: alipayWallet.signStatus, + expandindirectOrderStatus: alipayWallet.expandindirectOrderStatus, + + name: alipayWallet.name, + scene: alipayWallet.scene || EnumEnterpriseWalletExpandindirectOrderScene.YONGJIN_BAOCHOU, + sceneDirections: alipayWallet.sceneDirections, + sceneFiles: convertWalletApiToFiles( + alipayWallet.files, + EnumEnterpriseWalletExpandindirectOrderFileType.Scene + ), + sceneQualificationFiles: convertWalletApiToFiles( + alipayWallet.files, + EnumEnterpriseWalletExpandindirectOrderFileType.SceneQualification + ), + }); + } else { + handleAdd({ + enterpriseConfigureType: EnterpriseConfigureType.AliPay, + }); + } + } catch (error) {} } const { dialogProps, handleAdd, handleEdit, editForm, dialogState } = useFormDialog({ onConfirm: handleAddOrEdit, defaultFormParams: { id: '', + enterpriseConfigureType: EnterpriseConfigureType.AliPay, + electronSignAccesses: [] as EnumElectronSignAccess[], + smsAccess: '' as any as EnumSmsAccess, + smsCost: 0, + alipayAccount: '', + alipayMerchantId: '', + signStatus: '' as any as EnumEnterpriseWalletSignStatus, + expandindirectOrderStatus: '' as any as EnumEnterpriseWalletExpandindirectOrderStatus, + + name: '', + scene: '' as any as EnumEnterpriseWalletExpandindirectOrderScene, + sceneDirections: '', + /**杞处鍦烘櫙鎴浘 */ + sceneFiles: [] as UploadUserFile[], + /**鍟嗘埛琛屼笟璧勮川鍥剧墖鎴栧崗璁枃鏈� */ + sceneQualificationFiles: [] as UploadUserFile[], }, }); -async function handleAddOrEdit(type: EnterpriseConfigureType) { +async function handleAddOrEdit() { try { let res; // if (type === EnterpriseConfigureType.Bank) { // res = await createOrEditFlexEnterpriseBankSetting(); // } - if (type === EnterpriseConfigureType.Electronic) { + if (editForm.enterpriseConfigureType === EnterpriseConfigureType.Electronic) { res = await createOrEditFlexEnterpriseSignSetting(); } - if (type === EnterpriseConfigureType.ShortMessage) { + if (editForm.enterpriseConfigureType === EnterpriseConfigureType.ShortMessage) { res = await createOrEditFlexEnterpriseMessageSetting(); + } + if (editForm.enterpriseConfigureType === EnterpriseConfigureType.AliPay) { + res = await enterpriseWalletExpandindirectCreate(); } if (res) { Message.successMessage('鎿嶄綔鎴愬姛'); getList(paginationState.pageIndex); dialogState.dialogVisible = false; } + } catch (error) {} +} + +async function enterpriseWalletExpandindirectCreate() { + try { + let params: API.EnterpriseWalletExpandindirectCreateCommand = { + enterpriseId: editForm.id, + identity: editForm.alipayAccount, + name: editForm.name, + scene: editForm.scene, + sceneDirections: editForm.sceneDirections, + sitesInfo: null, + files: [ + ...convertWalletFilesToApi( + editForm.sceneFiles, + EnumEnterpriseWalletExpandindirectOrderFileType.Scene + ), + ...convertWalletFilesToApi( + editForm.sceneQualificationFiles, + EnumEnterpriseWalletExpandindirectOrderFileType.SceneQualification + ), + ], + }; + return await enterpriseWalletServices.enterpriseWalletExpandindirectCreate(params); } catch (error) {} } @@ -193,18 +303,24 @@ // 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() { try { let params: API.SetEnterpriseSmsSettingCommand = { id: editForm.id, + smsAccess: editForm.smsAccess, + smsCost: editForm.smsCost, }; return await enterpriseServices.setEnterpriseSmsSetting(params); } catch (error) {} -- Gitblit v1.9.1