zhangwei
2024-09-23 208b5a9f559dd2c7298759fdfe37d07c926cbd4d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<template>
    <view class="full-page">
        <view class="" v-if="imcomeInfo&&imcomeInfo.length>0">
            <view class="money_bag">
                <up-cell :value="`${item.yiTiXianJine} 元`" :title="item.zhiChuShouRuName" :label="item.remark"
                    v-for="(item,index) in imcomeInfo" :key='item.id'></up-cell>
            </view>
            <up-loadmore :status="loadStatus" />
        </view>
        <view class="tool_content" v-else>
            <up-empty mode="list" icon="http://cdn.uviewui.com/uview/empty/list.png">
            </up-empty>
        </view>
    </view>
</template>
 
<script>
    export default {
        onLoad() {
            let that = this
            that.identity = this.$db.get('identity')
        },
        data() {
            return {
                identity: '',
                imcomeInfo: null,
                pageIndex: 1,
                pageSize: 20,
                loadStatus: 'loadmore'
            }
        },
        onLoad() {
            this.PostMyTiXianDetailListPage()
        },
        onReachBottom() {
            if (this.loadStatus != 'nomore') {
                this.PostMyTiXianDetailListPage();
            }
        },
        onPullDownRefresh() {
            this.pageIndex = 1
            this.pageSize = 20
            this.loadStatus = 'loadmore'
            this.PostMyTiXianDetailListPage();
            uni.stopPullDownRefresh();
        },
        methods: {
            PostMyTiXianDetailListPage() {
                let obj = {
                    pageIndex: this.pageIndex,
                    pageSize: this.pageSize
                }
                this.$api.PostMyTiXianDetailListPage(obj).then(res => {
                    if (res.code == 1) {
                        if (this.pageIndex == 1) {
                            this.imcomeInfo = res.data.items
                        } else {
                            this.imcomeInfo = this.imcomeInfo.concat(...res.data.items)
                        }
                        // totalPages.value = res.data.totalCount
                        // 根据count数量判断是否还有数据
                        if (res.data.totalCount > this.imcomeInfo.length) {
                            this.loadStatus = 'loadmore'
                            this.pageIndex++
                        } else {
                            // 数据已加载完毕
                            this.loadStatus = 'nomore'
                        }
                    }
                })
            }
        }
    }
</script>
 
<style lang="scss">
    .content {
        width: 100%;
        height: 390rpx;
        background-color: #fed244;
        box-sizing: border-box;
        padding: 50rpx 22rpx 0 22rpx;
 
        .balance {
            width: 100%;
            height: 100%;
            box-sizing: border-box;
            background-color: #fff;
            border-radius: 20rpx 20rpx 0 0;
            padding: 30rpx;
 
            .header {
                width: 100%;
                height: 85%;
                box-sizing: border-box;
                border: 1px solid #eeeff4;
                border-radius: 15rpx;
                padding: 25rpx;
                background-image: linear-gradient(to bottom, #f4f5fc, #ffffff);
 
                .left {}
 
                .right {
                    width: 130rpx;
                }
            }
        }
    }
 
 
    .money_bag {
        background: #fff;
        border-radius: 16rpx;
        margin-top: 30rpx;
        // padding: 20rpx 30rpx;
        position: relative;
        // top: 25rpx;
        z-index: 2;
    }
 
    .tool_wrap {
        .tool_title {
            padding: 30rpx;
            border-bottom: 2rpx solid #eee;
 
            .title {
                color: #333;
                font-size: 32rpx;
                font-weight: 700;
            }
 
            .title_right {
                color: #939499;
            }
        }
 
        .tool_content {
            padding: 30rpx 0;
        }
    }
</style>