This commit is contained in:
2026-05-13 14:43:38 +08:00
parent 92efdae9eb
commit c9102f2d51
18 changed files with 679 additions and 838 deletions

View File

@@ -1,7 +1,7 @@
<template>
<div class="min-h-screen bg-gray-50">
<!-- 提现记录列表 -->
<van-list v-model:loading="loading" :finished="finished" finished-text="没有更多了" @load="onLoad">
<van-list v-model:loading="loading" :finished="finished" :finished-text="data.list.length > 0 ? '没有更多了' : ''" @load="onLoad">
<div v-for="(item, index) in data.list" :key="index" class="mx-4 my-2 bg-white rounded-lg p-4 shadow-sm">
<div class="flex justify-between items-center mb-2">
<span class="text-gray-500 text-sm">{{
@@ -36,11 +36,15 @@
</div>
</div>
</van-list>
<!-- 空状态 -->
<EmptyState v-if="!loading && !data.list.length" text="暂无提现记录" />
</div>
</template>
<script setup>
import { getWithdrawalList } from '@/api/agent'
import EmptyState from '@/components/EmptyState.vue'
// 新系统状态映射配置1=待审核2=审核通过3=审核拒绝4=提现中5=提现成功6=提现失败
const statusConfig = {
@@ -140,15 +144,11 @@ const getAmountColor = (status) => {
// 加载更多数据
const onLoad = async () => {
if (!finished.value) {
await getData();
}
await getData();
};
// 获取数据
const getData = async () => {
if (loading.value || finished.value) return
try {
loading.value = true;
const { data: res, error } = await getWithdrawalList({
@@ -157,45 +157,35 @@ const getData = async () => {
});
if (res.value?.code === 200 && !error.value) {
// 首次加载
if (page.value === 1) {
data.value = res.value.data;
} else {
// 分页加载
data.value.list.push(...res.value.data.list);
}
const list = res.value.data.list || []
const total = res.value.data.total || 0
// 更新分页状态
page.value++;
if (page.value === 1) {
data.value = { total, list }
} else {
data.value.list.push(...list)
}
// 判断是否加载完成
if (
data.value.list.length >= res.value.data.total ||
res.value.data.list.length < pageSize.value
data.value.list.length >= total ||
list.length < pageSize.value
) {
finished.value = true;
} else {
page.value++;
}
} else {
// 接口返回错误或请求失败,停止翻页
finished.value = true;
console.error('获取提现列表失败:', res.value?.msg || error.value || '未知错误');
}
} catch (err) {
// 捕获异常,停止翻页
finished.value = true;
console.error('获取提现列表失败:', err);
} finally {
loading.value = false;
}
};
// 初始化加载
onMounted(async () => {
// 重置分页状态
page.value = 1;
finished.value = false;
await getData();
});
</script>
<style scoped>