Files
xdd-uniapp-new/pagesUser/user/promotion/PromoterOrder/index.vue
T
2026-05-12 15:19:37 +08:00

134 lines
4.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>
<view class="promoter-order" ref="container">
<view class="promoterHeader bg-color-red">
<view class="headerCon acea-row row-between-wrapper" style="flex-wrap: nowrap;">
<view style="flex-shrink: 0;margin-right: 40rpx;">
<text class="name">累计推广订单</text>
<view>
<text class="num">{{ count||'0' }}</text>
<text></text>
</view>
</view>
<view class="" style="flex-grow: 1;font-size: 24rpx;">
{{ ruleText }}
</view>
</view>
</view>
<view class="list">
<view class="item" v-for="(item, listIndex) in list" :key="listIndex">
<view class="title acea-row row-column row-center">
<view class="data">{{ item.time }}</view>
<text>本月累计推广订单{{ item.count ? item.count : 0 }}</text>
</view>
<view class="listn">
<view class="itenm" v-for="(val, indexn) in item.child" :key="indexn">
<view class="top acea-row row-between-wrapper">
<view class="pictxt acea-row row-between-wrapper">
<view class="pictrue">
<image :src="val.avatar" />
</view>
<text class="text line1">{{ val.nickname }}</text>
</view>
<view class="money">
<text>返佣</text>
<text class="font-color-red">{{ val.number ? val.number : 0 }}</text>
</view>
</view>
<view class="bottom">
<view class="acea-row row-between" style="flex-wrap: nowrap;">
<view style="flex-grow: 1;">
<text class="name">订单金额</text>
<text class="font-color-red">{{ val.payPrice || 0 }}({{ val.totalPrice || 0 }}+{{ val.totalPostage || 0 }}运费)</text>
</view>
<view class="" style="flex-shrink: 0;">{{val.billStatus==0?"待收货确定":(val.billStatus==1?"有效":"无效")}}</view>
</view>
<view>
<text class="name">订单号</text>
{{ val.orderId }}
</view>
<view>
<text class="name">下单时间</text>
{{ val.time }}
</view>
</view>
</view>
</view>
</view>
</view>
<Loading :loaded="loaded" :loading="loading"></Loading>
</view>
</template>
<script>
import { getSpreadOrder, getUserSpreadRule } from "@/api/user";
import Loading from "@/components/Loading";
import { pageListenMixins } from '@/mixins/pageListenMixins'
export default {
name: "PromoterOrder",
components: {
Loading
},
mixins: [pageListenMixins],
data: function() {
return {
list: [],
where: {
page: 1,
limit: 15
},
loaded: false,
loading: false,
loadTitle: '',
count: '',
ruleText: '',
pageKeyId: Object.freeze('userSpreadOrder')
}
},
mounted() {
this.getIndex()
this.getRuleText()
},
onReachBottom() {
!this.loading && this.getIndex()
},
methods: {
getRuleText() {
getUserSpreadRule().then(res => {
const { success, data } = res
if (success) {
this.ruleText = data.userSpreadRule || ''
}
})
},
getIndex() {
let there = this
if (there.loaded == true || there.loading == true) return
there.loading = true
getSpreadOrder(there.where).then(
res => {
there.loading = false
there.loaded = res.data.list.length < there.where.limit
there.loadTitle = there.loaded ? "人家是有底线的" : "上拉加载更多"
there.where.page = there.where.page + 1
there.list.push.apply(there.list, res.data.list)
there.count = res.data.count
},
err => {
uni.showToast({
title: err.msg || err.response.data.msg|| err.response.data.message,
icon: "none",
duration: 2000
})
}
)
}
}
};
</script>
<style>
.promoterHeader .headerCon{
width: auto !important;
padding: 0 20rpx 0 20rpx !important;
}
</style>