From bfd94e08a36b4449c842b6310b65d66b6b0bcd3c Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期二, 09 九月 2025 14:47:27 +0800 Subject: [PATCH] feat: 钱包 --- apps/cMiniApp/src/subpackages/wallet/incomeDetail/InnerPage.vue | 57 +++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 35 insertions(+), 22 deletions(-) diff --git a/apps/cMiniApp/src/subpackages/wallet/incomeDetail/InnerPage.vue b/apps/cMiniApp/src/subpackages/wallet/incomeDetail/InnerPage.vue index 1c9c45c..c123918 100644 --- a/apps/cMiniApp/src/subpackages/wallet/incomeDetail/InnerPage.vue +++ b/apps/cMiniApp/src/subpackages/wallet/incomeDetail/InnerPage.vue @@ -1,6 +1,6 @@ <template> <!-- <ProTabs - v-model="queryState.status" + v-model="queryState.type" name="home-tab" :showPaneContent="false" class="home-tabs" @@ -9,17 +9,18 @@ title-scroll > <ProTabPane :title="`鍏ㄩ儴`" :pane-key="0"></ProTabPane> - <ProTabPane :title="`鏀跺叆`" :pane-key="1"></ProTabPane> - <ProTabPane :title="`鎻愮幇`" :pane-key="2"></ProTabPane> + <ProTabPane :title="`鏀跺叆`" :pane-key="EnumUserWalletTransactionType.Income"></ProTabPane> + <ProTabPane :title="`鎻愮幇`" :pane-key="EnumUserWalletTransactionType.Withdraw"></ProTabPane> </ProTabs> --> <List> - <IncomeDetailListItem :item="`鏀跺叆锛氾骏${toThousand(100)} 鎻愮幇锛氾骏${toThousand(200)}`"> + <IncomeDetailListItem + :item="`鏀跺叆锛氾骏${toThousand(sumIncome)} 鎻愮幇锛氾骏${toThousand(sumWithdraw)}`" + > <template #title> <div class="income-detail-time-picker"> <ChooseInputWithDatePicker v-model="queryState.month" type="year-month" - format="YYYY骞碝鏈�" :max-date="nowDate" /> <IconFont name="triangle-down" class="income-detail-time-picker-icon"></IconFont> @@ -30,15 +31,15 @@ <InfiniteLoading scrollViewClassName="common-infinite-scroll-list home-list" v-bind="infiniteLoadingProps" - :key="queryState.status" + :key="queryState.type" > <template #renderItem="{ item }"> <IncomeDetailListItem - :title="'鏀跺叆-瀹佹尝浜哄姏鏃犲咖'" - :funds="'+300.00'" - :item="'2024.12.20 13:30:30'" - :value="'閽卞寘浣欓锛�300.00'" - @click="goIncomeDetailInfo()" + :title="item.title" + :funds="item.amount" + :item="item.createdTime" + :value="`閽卞寘浣欓锛�${item.balance}`" + @click="goIncomeDetailInfo(item)" > </IncomeDetailListItem> </template> @@ -58,9 +59,9 @@ import Taro from '@tarojs/taro'; import dayjs from 'dayjs'; import { useInfiniteLoading } from '@12333/hooks'; -import { EnumPagedListOrder } from '@12333/constants'; +import { EnumPagedListOrder, EnumUserWalletTransactionType } from '@12333/constants'; import { toThousand } from '@12333/utils'; -import * as taskServices from '@12333/services/apiV2/task'; +import * as userServices from '@12333/services/apiV2/user'; defineOptions({ name: 'InnerPage', @@ -70,34 +71,46 @@ const nowDate = dayjs().toDate(); const queryState = reactive({ - month: dayjs().format('YYYY骞碝鏈�'), - status: 0, + month: dayjs().format('YYYY-MM'), + type: 0 as any as EnumUserWalletTransactionType, +}); + +const sumIncome = computed(() => { + return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.sumIncome ?? 0; +}); +const sumWithdraw = computed(() => { + return infiniteLoadingProps.value?.listData?.pages?.[0]?.objectData?.sumWithdraw ?? 0; }); const { infiniteLoadingProps } = useInfiniteLoading( ({ pageParam }) => { - let params: API.GetPersonalApplyTaskInfosQuery = { + let params: API.GetPersonalUserTransactionsQuery = { pageModel: { rows: 20, page: pageParam, orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], }, + type: EnumUserWalletTransactionType.Income, }; - if (Number(queryState.status)) { - params.status = queryState.status; + // if (Number(queryState.type)) { + // params.type = queryState.type; + // } + if (queryState.month) { + params.createdTimeStart = dayjs(queryState.month).startOf('month').format('YYYY-MM-DD'); + params.createdTimeEnd = dayjs(queryState.month).endOf('month').format('YYYY-MM-DD'); } - return taskServices.getPersonalApplyTaskInfos(params, { + return userServices.getPersonalUserTransactions(params, { showLoading: false, }); }, { - queryKey: ['taskServices/getPersonalApplyTaskInfos', queryState], + queryKey: ['userServices/getPersonalUserTransactions', queryState], } ); -function goIncomeDetailInfo(row?) { +function goIncomeDetailInfo(row: API.GetPersonalUserTransactionsQueryResultItem) { Taro.navigateTo({ - url: `${RouterPath.incomeDetailInfo}`, + url: `${RouterPath.incomeDetailInfo}&id=${row.id}`, }); // Taro.navigateTo({ // url: `${RouterPath.withdrawDetailInfo}`, -- Gitblit v1.9.1