From 1910e9f27373b8b4da75f076762025ceb3419965 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 12 六月 2025 15:40:50 +0800
Subject: [PATCH] fix: 暂时隐藏电信充值通道
---
packages/components/src/hooks/index.ts | 103 ++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 88 insertions(+), 15 deletions(-)
diff --git a/packages/components/src/hooks/index.ts b/packages/components/src/hooks/index.ts
index 912a1b6..b8ce406 100644
--- a/packages/components/src/hooks/index.ts
+++ b/packages/components/src/hooks/index.ts
@@ -11,12 +11,13 @@
UserAccountListOutput,
AddUpdateUserAccountInput,
GasParValueResponse,
- GasParValueOutput,
+ ChannelRateOutput,
} from '@life-payment/core-vue';
import { useQuery, useQueryClient } from '@tanstack/vue-query';
import { computed, MaybeRef, reactive, unref } from 'vue';
import { useInfiniteLoading } from './infiniteLoading';
import { OrderInputType } from '../constants';
+import { convertOrderFrontStatus } from '../utils';
export function useGetRate() {
const { blLifeRecharge } = useLifeRechargeContext();
@@ -29,26 +30,54 @@
placeholderData: () => [] as LifePayRateListOutput[],
});
- const lifePayPhoneRate = computed(
- () =>
+ const hasChannel = computed(() => !!blLifeRecharge.accountModel.channlesNum);
+
+ const { data: channelRate } = useQuery({
+ queryKey: ['blLifeRecharge/getChannelRate', blLifeRecharge.accountModel.channlesNum],
+ queryFn: async () => {
+ return await blLifeRecharge.services.getChannelRate(
+ {
+ checkChannelId: blLifeRecharge.accountModel.channlesNum,
+ },
+ { showLoading: false }
+ );
+ },
+ placeholderData: () => ({} as ChannelRateOutput),
+ enabled: hasChannel,
+ });
+
+ const lifePayPhoneRate = computed(() => {
+ if (hasChannel.value && channelRate.value.channlesRate) {
+ return channelRate.value.channlesRate;
+ }
+ return (
lifePayRateList.value.find(
(x) => x.rateType === blLifeRecharge.constants.LifePayRateTypeEnum.榛樿璇濊垂鎶樻墸
- )?.rate ?? 100
- );
+ )?.rate ?? 0
+ );
+ });
- const lifePayElectricRate = computed(
- () =>
+ const lifePayElectricRate = computed(() => {
+ if (hasChannel.value && channelRate.value.channlesRate) {
+ return channelRate.value.channlesRate;
+ }
+ return (
lifePayRateList.value.find(
(x) => x.rateType === blLifeRecharge.constants.LifePayRateTypeEnum.榛樿鐢佃垂鎶樻墸
- )?.rate ?? 100
- );
+ )?.rate ?? 0
+ );
+ });
- const lifePayGasRate = computed(
- () =>
+ const lifePayGasRate = computed(() => {
+ if (hasChannel.value && channelRate.value.channlesRate) {
+ return channelRate.value.channlesRate;
+ }
+ return (
lifePayRateList.value.find(
(x) => x.rateType === blLifeRecharge.constants.LifePayRateTypeEnum.榛樿鐕冩皵鎶樻墸
- )?.rate ?? 100
- );
+ )?.rate ?? 0
+ );
+ });
return {
lifePayRateList,
@@ -110,7 +139,7 @@
// });
const { infiniteLoadingProps } = useInfiniteLoading(
- ({ pageParam }) => {
+ async ({ pageParam }) => {
let params: QueryLifePayOrderListInput = {
pageModel: {
rows: 20,
@@ -121,9 +150,18 @@
userId: blLifeRecharge.accountModel.userId,
};
- return blLifeRecharge.services.getUserLifePayOrderPage(params, {
+ let res = await blLifeRecharge.services.getUserLifePayOrderPage(params, {
showLoading: false,
});
+ res.data = res.data.map((x) => ({
+ ...x,
+ frontStatus: convertOrderFrontStatus(
+ x.payStatus,
+ x.lifePayOrderStatus,
+ x.lifePayRefundStatus
+ ),
+ }));
+ return res;
},
{
queryKey: [
@@ -133,6 +171,12 @@
userId: blLifeRecharge.accountModel.userId,
},
],
+
+ select(data) {
+ console.log('data: ', data);
+ // data.pages.map((item) => item.data.map((x) => convertOrderFrontStatus(x)))
+ return data;
+ },
}
);
@@ -264,3 +308,32 @@
gasParValueList,
};
}
+
+type UseIntroInfoOptions = {
+ lifePayOrderType: MaybeRef<LifeRechargeConstants.LifePayOrderTypeEnum>;
+ onSuccess?: (data: API.LifePayIntroInfoOutput[]) => any;
+};
+
+export function useIntroInfo({ lifePayOrderType, onSuccess }: UseIntroInfoOptions) {
+ const { blLifeRecharge } = useLifeRechargeContext();
+
+ const { data: introInfo } = useQuery({
+ queryKey: ['blLifeRecharge/getIntroInfo', lifePayOrderType],
+ queryFn: async () => {
+ return await blLifeRecharge.services.getIntroInfo(
+ {
+ type: unref(lifePayOrderType),
+ },
+ {
+ showLoading: false,
+ }
+ );
+ },
+ placeholderData: () => [] as API.LifePayIntroInfoOutput[],
+ onSuccess: (data) => {
+ onSuccess?.(data);
+ },
+ });
+
+ return { introInfo };
+}
--
Gitblit v1.9.1