榆钱落尽槿花稀 d611b933dd 2.修复已知问题
3.我发布的活动增加售后订单
4.增加售后订单详情
5.增加拒绝和同意退款单
2025-06-09 18:28:36 +08:00

336 lines
12 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>
<view class="page">
<view style="background-color: #FFFFFF;border-radius: 0rpx 0rpx 44rpx 44rpx;padding: 30rpx 30rpx 40rpx 30rpx;">
<view class="section_1">
<view style="color: #FFFFFF;font-size: 26rpx;padding: 30rpx 30rpx 0rpx 30rpx;">当前余额</view>
<view style="display: flex;justify-content: space-between;align-items: center;padding: 30rpx;">
<view style="color: #FFFFFF;font-size: 60rpx;font-weight: 900;">
{{settleInfo.settled_amount?settleInfo.settled_amount:0}}
</view>
<view @click="openUrl('/packageB/wallet/bank')">
<view
style="text-align: center;width: 169rpx;height: 70rpx;background: #BBFC5B;line-height: 70rpx;color: #3D3D3D;font-size: 32rpx;border-radius: 70rpx;">
提现</view>
</view>
</view>
<view style="display: flex;align-items: center;color: #FFFFFF;font-weight: 400;font-size: 26rpx;padding-left: 30rpx;">
<text>预计待入账</text>
<text
style="padding-left: 20rpx;">{{settleInfo.expected_incoming_amount?settleInfo.expected_incoming_amount:0}}</text>
<image @click="tipsShow = true" src="/static/tips.png" style="width: 25rpx;height: 25rpx;margin-left: 10rpx;"></image>
<text style="padding: 0rpx 20rpx;">|</text>
<text>累计收益</text>
<text
style="padding-left: 20rpx;">{{settleInfo.accumulated_incoming_amount?settleInfo.accumulated_incoming_amount:0}}</text>
</view>
</view>
</view>
<view style="background-color: #FFFFFF;border-radius:44rpx;padding:45rpx 30rpx;margin-top: 30rpx;">
<view style="display: flex;gap: 70rpx;padding-bottom: 40rpx;">
<view @click="openTab(0)">
<view :class="tabIndex==0?'act':'no_act'">收益明细</view>
<view v-if="tabIndex==0"
style="width: 60rpx;height: 10rpx;background-color: #BBFC5B;margin: 0 auto;margin-top: 20rpx;">
</view>
</view>
<view @click="openTab(1)">
<view :class="tabIndex==1?'act':'no_act'">提现明细</view>
<view v-if="tabIndex==1"
style="width: 60rpx;height: 10rpx;background-color: #BBFC5B;margin: 0 auto;margin-top: 20rpx;">
</view>
</view>
</view>
<view v-if="tabIndex==0" v-for="item in list">
<view style="display: flex;justify-content: space-between;align-items: center;">
<view>
<view style="font-size: 30rpx;color: #3D3D3D;font-weight: 600;">{{item.detail.title}}</view>
<view style="font-size: 26rpx;color: #9C9C9C;font-weight: 400;margin: 30rpx 0rpx;">
<text v-if="item.status==3">{{formatTimestamp(item.settletime)}}</text>
<text v-if="item.status==2">{{formatTimestamp(item.createtime)}}</text>
</view>
<view style="font-size: 25rpx;color: #FF4810;font-weight: 400;">[
活动订单总金额x{{item.fee_scale*100}}%(平台费率)=待入账金额 ]
</view>
</view>
<view style="text-align: center;">
<view>+{{item.settle_price}}</view>
<view v-if="item.status==2"
style="background: #E6EEFF;width: 90rpx;height: 32rpx;border-radius: 4rpx 4rpx 4rpx 4rpx;text-align: center;margin: 0 auto;margin-top: 20rpx;">
<view style="color: #2F78CD;font-size: 22rpx;line-height: 32rpx;">待入账</view>
</view>
<view v-if="item.status==3"
style="background: #EAF8EB;width: 90rpx;height: 32rpx;border-radius: 4rpx 4rpx 4rpx 4rpx;text-align: center;margin: 0 auto;margin-top: 20rpx;">
<view style="color: #2BA635;font-size: 22rpx;line-height: 32rpx;">已入账</view>
</view>
</view>
</view>
<view style="background: #F0F0F0;width: 100%;height: 1px;margin: 40rpx 0rpx;"></view>
</view>
<view v-if="tabIndex==1" v-for="item in list">
<view style="display: flex;justify-content: space-between;align-items: center;">
<view>
<view style="font-size: 30rpx;color: #3D3D3D;font-weight: 600;">
{{item.bank_name}}{{cardSlice(item.bank_user_name)}}</view>
<view style="font-size: 26rpx;color: #9C9C9C;font-weight: 400;margin: 30rpx 0rpx;">
<text v-if="item.status==1">{{formatTimestamp(item.createtime)}}</text>
<text
v-if="item.status==3 || item.withdrawal_status==2">{{formatTimestamp(item.examinetime)}}</text>
<text v-if="item.withdrawal_status==3">{{formatTimestamp(item.paytime)}}</text>
</view>
</view>
<view style="text-align: center;">
<view style="margin-bottom: 20rpx;">+{{item.real_price}}</view>
<view v-if="item.status==1"
style="background: #E6EEFF;width: 90rpx;height: 32rpx;border-radius: 4rpx 4rpx 4rpx 4rpx;text-align: center;margin: 0 auto;">
<view style="color: #2F78CD;font-size: 22rpx;line-height: 32rpx;">审核中</view>
</view>
<view v-if="item.status==3"
style="background: #F8EAEA;width: 90rpx;height: 32rpx;border-radius: 4rpx 4rpx 4rpx 4rpx;text-align: center;margin: 0 auto;">
<view style="color: #A62B2B;font-size: 22rpx;line-height: 32rpx;">失败</view>
</view>
<view v-if="item.withdrawal_status==3"
style="background: #EAF8EB;width: 90rpx;height: 32rpx;border-radius: 4rpx 4rpx 4rpx 4rpx;text-align: center;margin: 0 auto;">
<view style="color: #2BA635;font-size: 22rpx;line-height: 32rpx;">已打款</view>
</view>
<view v-if="item.withdrawal_status==2"
style="background: #FFF3ED;width: 90rpx;height: 32rpx;border-radius: 4rpx 4rpx 4rpx 4rpx;text-align: center;margin: 0 auto;">
<view style="color: #FF783A;font-size: 22rpx;line-height: 32rpx;">打款中</view>
</view>
</view>
</view>
<view v-if="item.status==3"
style="font-weight: 400;color: #3D3D3D;font-size: 24rpx;background: #EEEEEE;border-radius: 6rpx;padding: 30rpx 20rpx;">
{{ item.reason }}
</view>
<view style="background: #F0F0F0;width: 100%;height: 1px;margin: 40rpx 0rpx;"></view>
</view>
<u-loadmore style="margin-bottom: 60rpx;" :status="loadStatus" />
</view>
<u-popup @touchmove.native.stop.prevent :custom-style="popupStyle" :closeable="false" :show="tipsShow" :round="10" mode="center"
:closeOnClickOverlay="false">
<view style="font-size: 32rpx;font-weight: 400;margin: 12rpx 0 24rpx 0;">预计待入账金额说明</view>
<view style="font-size: 26rpx;color: #3D3D3D;padding-bottom: 20px;line-height: 20px;">
<text style="font-weight: 600;">1. 活动结束时</text>
<text>您的可入账金额会显示为预计待入账金额</text>
</view>
<view style="font-size: 26rpx;color: #3D3D3D;padding-bottom: 20px;line-height: 20px;">
<text style="font-weight: 600;">2. 7天售后期</text>
<text>活动结束后7天内若发生售后问题(如退款)对应金额将从预计待入账中扣除您的可入账金额会显示为预计待入账金额</text>
</view>
<view style="font-size: 26rpx;color: #3D3D3D;padding-bottom: 20px;line-height: 20px;">
<text style="font-weight: 600;">3. 查看售后进度</text>
<text>您可在我发布的-已售后中查询具体售后单详情</text>
</view>
<view style="font-size: 26rpx;color: #3D3D3D;padding-bottom: 20px;line-height: 20px;">
<text style="font-weight: 600;">4. 最终可提现金额</text>
<text>7天售后期结束后剩余未扣除的金额即可全额提现</text>
</view>
<view class="popup-footer">
<view class="zhixiao shows_zhidao" @click="tipsShow = false">我已知晓</view>
</view>
</u-popup>
</view>
</template>
<script>
export default {
data() {
return {
tabIndex: 0,
page: 1,
list: [],
settleInfo: {},
loadStatus: 'loading',
tipsShow:false,
popupStyle: {
width: '600rpx',
padding: '24rpx 24rpx 42rpx 24rpx',
height: '660rpx',
margin: '0 auto', // 水平居中
display: 'flex',
justifyContent: 'start',
alignItems: 'center',
flexColumn: 'column'
},
}
},
onShow() {
this.token = uni.getStorageSync('token');
if (this.token) {
this.getUserInfo();
}
this.openTab(0);
},
onReachBottom() {
this.page += 1;
if (this.tabIndex == 0) {
this.getSyList();
} else {
this.getTxList();
}
},
methods: {
openTab(index) {
this.loadStatus = 'loading';
this.page = 1;
this.tabIndex = index;
this.list = [];
if (index == 0) {
this.getSyList();
} else {
this.getTxList();
}
},
getSyList() {
uni.$u.http
.get("/api/school.newactivity.settle_log/settle_log", {
params: {
page: this.page,
limit: 10,
status: '2,3'
},
})
.then((res) => {
if (res.code == 1) {
this.list.push(...res.data.list);
if (res.data.list.length < 10) {
this.loadStatus = 'nomore';
}
} else {
uni.showToast({
title: res.msg,
icon: "none",
duration: 2000,
});
}
})
},
getTxList() {
uni.$u.http
.get("/api/school.newactivity.settle_log/withdrawal_log", {
params: {
page: this.page,
limit: 10,
},
})
.then((res) => {
if (res.code == 1) {
this.list.push(...res.data.list);
if (res.data.list.length < 10) {
this.loadStatus = 'nomore';
}
} else {
uni.showToast({
title: res.msg,
icon: "none",
duration: 2000,
});
}
})
},
// 获取个人信息
getUserInfo() {
uni.$u.http.get('/api/user/index', {}).then(res => {
if (res.code == 1) {
uni.setStorageSync('userInfo', res.data.user_info)
uni.setStorageSync('settleInfo', res.data.settle_info)
uni.setStorageSync('activityInfo', res.data.activity_info)
this.settleInfo = res.data.settle_info;
} else {
uni.showToast({
title: '登陆失败',
icon: 'error',
duration: 2000
})
}
}).catch(error => {
console.log('error', error);
this.showPopup = false
uni.showToast({
title: '登陆失败',
icon: 'error',
duration: 2000
})
})
},
formatTimestamp(timestamp) {
const date = new Date(timestamp * 1000); // 10位时间戳需要乘以1000
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, "0");
const day = String(date.getDate()).padStart(2, "0");
const hours = String(date.getHours()).padStart(2, "0");
const minutes = String(date.getMinutes()).padStart(2, "0");
const seconds = String(date.getSeconds()).padStart(2, "0");
return `${year}.${month}.${day} ${hours}:${minutes}:${seconds}`;
},
cardSlice(str) {
return str.slice(-4); // 从倒数第4位开始截取到末尾
},
openUrl(url) {
uni.navigateTo({
url: url
})
},
}
}
</script>
<style scoped lang="scss">
.page {
font-family: PingFang SC, PingFang SC;
background: #f7f7f7;
min-height: 100vh;
}
.section_1 {
width: 100%;
height: 264rpx;
background: url(@/static/wallet.png);
background-size: 100% 100%;
}
.no_act {
font-size: 30rpx;
font-weight: 600;
color: #9C9C9C;
}
.act {
font-size: 34rpx;
color: #323232;
font-weight: 600;
}
.popup-footer {
display: flex;
justify-content: center;
align-items: center;
// margin: 30rpx 0;
height: 146rpx;
.zhixiao {
height: 100rpx;
background: #E8E8E8;
//border-radius: 401rpx 401rpx 401rpx 401rpx;
font-family: YouSheBiaoTiHei;
font-weight: 400;
font-size: 36rpx;
color: #9C9C9C;
line-height: 32rpx;
display: flex;
justify-content: center;
align-items: center;
position: absolute;
width: 100%;
bottom: 0;
border-radius: 0rpx 0rpx 20rpx 20rpx;
}
.shows_zhidao {
background-color: #323232;
color: #BBFC5B;
font-weight: 400;
font-size: 36rpx;
}
}
</style>