Files
lucky_shop/pages_tool/member/withdrawal.vue

224 lines
5.1 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<page-meta :page-style="themeColor"></page-meta>
<view>
<mescroll-uni @getData="getData" ref="mescroll" class="member-point">
<view slot="list">
<block v-if="dataList.length">
<view class="detailed-wrap">
<view class="cont">
<view class="detailed-item" v-for="(item, index) in dataList" :key="index" @click="toDetail(item.id)">
<view class="info">
<view class="event">{{ item.transfer_type_name }}</view>
<view>
<text class="time">{{ $util.timeStampTurnTime(item.apply_time) }}</text>
</view>
</view>
<view class="right-wrap">
<view class="num color-base-text">{{ item.apply_money }}</view>
<!-- #ifdef H5 -->
<view class="actions" v-if="$util.isWeiXin() && isWithdrawWechat && item.transfer_type == 'wechatpay' && item.status == 1" @click.stop="toTransfer(item.id)">
<view class="act-btn">收款</view>
</view>
<view class="status-name" v-else :style="item.status == -1 || item.status == -2 ? 'color:red;' : ''">{{ item.status_name }}</view>
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view class="actions" v-if="isWithdrawWechat && item.transfer_type == 'wechatpay' && item.status == 1" @click.stop="toTransfer(item.id)">
<view class="act-btn">收款</view>
</view>
<view class="status-name" v-else :style="item.status == -1 || item.status == -2 ? 'color:red;' : ''">{{ item.status_name }}</view>
<!-- #endif -->
</view>
<view v-if="item.status == -1" class="fail-reason">
拒绝原因{{ item.refuse_reason }}
</view>
<view v-if="item.status == -2" class="fail-reason">
失败原因{{ item.fail_reason }}
</view>
</view>
</view>
</view>
</block>
<block v-else>
<ns-empty :isIndex="false" text="暂无提现记录"></ns-empty>
</block>
</view>
</mescroll-uni>
<loading-cover ref="loadingCover"></loading-cover>
</view>
</template>
<script>
export default {
data() {
return {
dataList: [],
isWithdrawWechat: 0
};
},
onShow() {
if (!this.storeToken) {
this.$util.redirectTo('/pages_tool/login/login', {
back: '/pages_tool/member/point'
}, 'redirectTo');
}
if(this.$refs.mescroll) this.$refs.mescroll.refresh();
this.getWithdrawConfig()
},
methods: {
toTransfer(id) {
this.$util.redirectTo('/pages_tool/member/withdrawal_detail', {
id: id,
action: 'transfer'
});
},
getWithdrawConfig() {
this.$api.sendRequest({
url: '/wechatpay/api/transfer/getWithdrawConfig',
success: res => {
if (res.code == 0){
this.isWithdrawWechat = res.data.transfer_type;
}
},
});
},
//获得列表数据
getData(mescroll) {
this.$api.sendRequest({
url: '/api/memberwithdraw/page',
data: {
page_size: mescroll.size,
page: mescroll.num
},
success: res => {
let newArr = [];
let msg = res.message;
if (res.code == 0 && res.data) {
newArr = res.data.list;
} else {
this.$util.showToast({
title: msg
});
}
mescroll.endSuccess(newArr.length);
//设置列表数据
if (mescroll.num == 1) this.dataList = []; //如果是第一页需手动制空列表
this.dataList = this.dataList.concat(newArr); //追加新数据
if (this.$refs.loadingCover) this.$refs.loadingCover.hide();
},
fail: res => {
mescroll.endErr();
if (this.$refs.loadingCover) this.$refs.loadingCover.hide();
}
});
},
toDetail(id) {
this.$util.redirectTo('/pages_tool/member/withdrawal_detail', {
id: id
});
}
}
};
</script>
<style lang="scss">
.account-box {
width: 100vw;
padding: 30rpx;
box-sizing: border-box;
padding-bottom: 10rpx;
display: flex;
justify-content: space-between;
align-items: center;
.tit {
color: #fff;
line-height: 1;
}
.iconmn_jifen_fill {
font-size: 60rpx;
color: #fff;
}
.point {
color: #fff;
font-size: 60rpx;
margin-left: 10rpx;
}
}
.detailed-wrap {
.head {
display: flex;
height: 90rpx;
& > view {
flex: 1;
text-align: left;
padding: 0 $padding;
line-height: 90rpx;
}
}
.cont {
background: #fff;
.detailed-item {
padding: $padding 10rpx;
margin: 0 $margin-both;
border-bottom: 2rpx solid #eee;
position: relative;
&:last-of-type {
border-bottom: none;
}
.info {
padding-right: 180rpx;
.event {
font-size: $font-size-base;
line-height: 1.3;
}
.time {
font-size: $font-size-base;
color: $color-tip;
}
}
.right-wrap {
position: absolute;
right: 0;
top: 0;
text-align: right;
.num {
font-size: $font-size-toolbar;
}
}
.fail-reason{
font-size: $font-size-base;
color:$color-tip;
}
.actions{
display: flex;
justify-content: flex-end;
.act-btn{
color: #fff;
background-color: $base-color;
font-size: $font-size-base;
line-height: 1;
padding: 10rpx $padding;
border-radius: $border-radius;
}
}
}
}
}
</style>