From 65e98a19cb6c20eb9a0322a2231a82d6b39b7f51 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期二, 16 九月 2025 11:02:00 +0800 Subject: [PATCH] fix: bug --- src/views/EnterpriseManage/EnterpriseManageList.vue | 137 ++++++++++++++++++++++++++++++++------------- 1 files changed, 97 insertions(+), 40 deletions(-) diff --git a/src/views/EnterpriseManage/EnterpriseManageList.vue b/src/views/EnterpriseManage/EnterpriseManageList.vue index c708c86..1c28138 100644 --- a/src/views/EnterpriseManage/EnterpriseManageList.vue +++ b/src/views/EnterpriseManage/EnterpriseManageList.vue @@ -1,5 +1,5 @@ <template> - <LoadingLayout :loading="state.loading"> + <LoadingLayout :loading="isInitialLoading"> <AppContainer> <ProTableQueryFilterBar @on-reset="reset"> <template #query> @@ -9,7 +9,6 @@ :value-enum="IsConfiguredText" buttonStyle showAllBtn - @change="getList()" /> </QueryFilterItem> <QueryFilterItem> @@ -18,7 +17,6 @@ style="width: 300px" placeholder="浼佷笟鍚嶇О/娉曚汉/鑱旂郴浜�" @on-click-search="getList" - @keyup.enter="getList()" > </SearchInput> </QueryFilterItem> @@ -52,12 +50,16 @@ useTable, useFormDialog, FieldRadio, + UploadUserFile, + useTableV2, } from '@bole-core/components'; import { useAccess, useGlobalEventContext } from '@/hooks'; 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', @@ -85,18 +87,7 @@ const router = useRouter(); -const BaseState = { - loading: true, -}; - -const state = reactive({ ...BaseState }); - const { invalidateQueries } = useEnabledElectronSignSettings(); - -onMounted(async () => { - await getList(); - state.loading = false; -}); const { getDataSource: getList, @@ -104,8 +95,9 @@ paginationState, extraParamState, reset, -} = useTable( - async ({ pageIndex, pageSize }, extraParamState) => { + isInitialLoading, +} = useTableV2( + async ({ pageIndex, pageSize, isInitialLoading }, extraParamState) => { try { let params: API.GetEnterprisesQuery = { pageModel: { @@ -118,7 +110,7 @@ }; let res = await enterpriseServices.getEnterprises(params, { - showLoading: !state.loading, + showLoading: !isInitialLoading, }); return res; } catch (error) { @@ -140,43 +132,81 @@ ); async function getEnterpriseElectronSignSetting(id: string) { - try { - return await enterpriseServices.getEnterpriseElectronSignSetting({ id: id }); - } catch (error) {} + return await enterpriseServices.getEnterpriseElectronSignSetting({ id: id }); } async function getEnterpriseSmsSetting(id: string) { - try { - return await enterpriseServices.getEnterpriseSmsSetting({ id: id }); - } catch (error) {} + return await enterpriseServices.getEnterpriseSmsSetting({ id: id }); } +const EnumElectronSignAccessList = computed(() => + Object.values(EnumElectronSignAccess) + .filter(Number) + .map((x) => Number(x)) +); + async function openDialog(row?: API.GetEnterprisesQueryResultItem) { - if (row) { - let electronSignSetting = await getEnterpriseElectronSignSetting(row.id); - let smsSetting = await getEnterpriseSmsSetting(row.id); - handleEdit({ - id: row.id, - enterpriseConfigureType: EnterpriseConfigureType.Electronic, - electronSignAccesses: electronSignSetting.electronSignAccesses, - smsAccess: smsSetting.smsAccess, - smsCost: smsSetting.smsCost, - }); - } else { - handleAdd({ - enterpriseConfigureType: EnterpriseConfigureType.Electronic, - }); - } + 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.Electronic, + 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[], }, }); @@ -192,11 +222,38 @@ 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) {} } @@ -218,7 +275,7 @@ try { let params: API.SetEnterpriseElectronSignSettingCommand = { id: editForm.id, - electronSignAccesses: editForm.electronSignAccesses, + electronSignAccesses: editForm.electronSignAccesses.filter(Boolean), }; let res = await enterpriseServices.setEnterpriseElectronSignSetting(params); invalidateQueries(); -- Gitblit v1.9.1