From 3d6e0ce70fb2267576ddba9d586eef20a52be31b Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期二, 25 二月 2025 17:35:03 +0800 Subject: [PATCH] fix: bug --- packages/components/src/hooks/index.ts | 74 ++++++++++++++++++++++++++++++++++++- 1 files changed, 72 insertions(+), 2 deletions(-) diff --git a/packages/components/src/hooks/index.ts b/packages/components/src/hooks/index.ts index 8513ce7..1f8861f 100644 --- a/packages/components/src/hooks/index.ts +++ b/packages/components/src/hooks/index.ts @@ -3,9 +3,15 @@ LifePayRateListOutput, PhoneParValueOutput, PhoneParValueResponse, -} from '../utils'; + QueryLifePayOrderListInput, + LifeRechargeConstants, + ElectricParValueResponse, + ElectricSupportAreaResponse, +} from '@life-payment/core-vue'; import { useQuery } from '@tanstack/vue-query'; -import { computed } from 'vue'; +import { computed, MaybeRef, reactive, unref } from 'vue'; +import { useInfiniteLoading } from './infiniteLoading'; +import { OrderInputType } from '../constants'; export function useGetRate() { const { blLifeRecharge } = useLifeRechargeContext(); @@ -57,3 +63,67 @@ phoneParValueList, }; } + +export function useGetElectricParValue() { + const { blLifeRecharge } = useLifeRechargeContext(); + + const { data: electricParValueList, isLoading } = useQuery({ + queryKey: ['blLifeRecharge/getElectricSupportArea'], + queryFn: async () => { + return await blLifeRecharge.services.getElectricSupportArea({ showLoading: false }); + }, + select(data) { + return data.electricAreaList ?? []; + }, + placeholderData: () => ({} as ElectricSupportAreaResponse), + }); + + return { + electricParValueList, + }; +} + +export type UseGetUserLifePayOrderPageOptions = { + lifePayOrderType?: MaybeRef<LifeRechargeConstants.LifePayOrderTypeEnum>; +}; + +export function useGetUserLifePayOrderPage(options: UseGetUserLifePayOrderPageOptions = {}) { + const { lifePayOrderType } = options; + + const { blLifeRecharge } = useLifeRechargeContext(); + + // const queryState = reactive({ + // lifePayOrderType: LifeRechargeConstants.LifePayOrderTypeEnum, + // }); + + const { infiniteLoadingProps } = useInfiniteLoading( + ({ pageParam }) => { + let params: QueryLifePayOrderListInput = { + pageModel: { + rows: 20, + page: pageParam, + orderInput: [{ property: 'id', order: OrderInputType.Desc }], + }, + lifePayOrderType: unref(lifePayOrderType), + userId: blLifeRecharge.accountModel.userId, + }; + + return blLifeRecharge.services.getUserLifePayOrderPage(params, { + showLoading: false, + }); + }, + { + queryKey: [ + 'blLifeRecharge/getUserLifePayOrderPage', + { + lifePayOrderType, + userId: blLifeRecharge.accountModel.userId, + }, + ], + } + ); + + return { + infiniteLoadingProps, + }; +} -- Gitblit v1.9.1