|
|
@@ -124,7 +124,7 @@
|
|
|
<script setup lang="ts">
|
|
|
import {useInfiniteScroll} from "../../utils/infinite-scroll";
|
|
|
import {onReachBottom, onPullDownRefresh, onShow} from "@dcloudio/uni-app";
|
|
|
-import {fetchWallet, listRefund} from "../../api/user";
|
|
|
+import {fetchProfile, fetchWallet, listRefund} from "../../api/user";
|
|
|
import {to} from "../../utils/navigate";
|
|
|
import {ref} from "vue";
|
|
|
import {rpxToPx} from "@/utils/device";
|
|
|
@@ -263,7 +263,6 @@ const changeTab = (index: number) => {
|
|
|
}
|
|
|
|
|
|
const loadData = () => {
|
|
|
- if (!user) return;
|
|
|
if (tab.value !== 2) {
|
|
|
fetchWallet(tab.value, 1, 1000).then((res: any) => {
|
|
|
if (res && res.length) {
|
|
|
@@ -274,18 +273,27 @@ const loadData = () => {
|
|
|
dataList.value = res;
|
|
|
});
|
|
|
} else {
|
|
|
- listRefund({userId: user.value.id, pageSize: 1000}).then((res: any) => {
|
|
|
- console.log(res)
|
|
|
- let list = (res.list || []).map(item => {
|
|
|
- item.amount = (Number(item.refund) / 100).toFixed(2);
|
|
|
- item.type = 2;
|
|
|
- if (item.successTime) {
|
|
|
- item.transactionTime = item.successTime.slice(0, 3).join("-") + " " + item.successTime.slice(3, 6).join(":")
|
|
|
- }
|
|
|
- return item;
|
|
|
- })
|
|
|
- dataList.value = list;
|
|
|
- })
|
|
|
+ // 退款列表需要 userId;globalData 缺失时先拉取用户信息兜底
|
|
|
+ const ensureUser = user.value && user.value.id
|
|
|
+ ? Promise.resolve(user.value)
|
|
|
+ : fetchProfile().then((res: any) => {
|
|
|
+ user.value = res;
|
|
|
+ getApp<any>().globalData.user = res;
|
|
|
+ return res;
|
|
|
+ });
|
|
|
+ ensureUser
|
|
|
+ .then((u: any) => listRefund({userId: u.id, pageSize: 1000}))
|
|
|
+ .then((res: any) => {
|
|
|
+ let list = (res.list || []).map((item: any) => {
|
|
|
+ item.amount = (Number(item.refund) / 100).toFixed(2);
|
|
|
+ item.type = 2;
|
|
|
+ if (Array.isArray(item.successTime) && item.successTime.length >= 6) {
|
|
|
+ item.transactionTime = item.successTime.slice(0, 3).join("-") + " " + item.successTime.slice(3, 6).join(":")
|
|
|
+ }
|
|
|
+ return item;
|
|
|
+ })
|
|
|
+ dataList.value = list;
|
|
|
+ })
|
|
|
}
|
|
|
}
|
|
|
|