wupengfei
2025-02-24 fe5fc18b6b1810a61df6ed7d94957f449ca05488
packages/components/src/hooks/index.ts
@@ -3,9 +3,13 @@
  LifePayRateListOutput,
  PhoneParValueOutput,
  PhoneParValueResponse,
  QueryLifePayOrderListInput,
  LifeRechargeConstants,
} from '../utils';
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 +61,48 @@
    phoneParValueList,
  };
}
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,
  };
}