Files
2025-04-30 14:08:39 +08:00

381 lines
10 KiB
Vue

<template>
<view class="page" :style="themeColor">
<view class="flex benben-position-layout flex flex-wrap align-center contributionDetails_flex_0"
:style="{height:(88+StatusBarRpx)+'rpx',paddingTop:StatusBarRpx+'rpx'}">
<view class='flex flex-wrap align-center justify-between flex-sub contributionDetails_fd0_0'>
<view class='flex flex-wrap align-center' @tap.stop="handleJumpDiy" data-type="back" data-url="1">
<text class='fu-iconfont2 contributionDetails_fd0_0_c0_c0' @tap.stop="handleJumpDiy"
data-type="back" data-url="1">&#xE794;</text>
</view>
<view class='flex flex-wrap align-stretch justify-center flex-sub'>
<text class='contributionDetails_fd0_0_c1_c0'>积分明细</text>
</view>
<view class='flex flex-wrap align-center contributionDetails_fd0_0_c2' @tap.stop="handleJumpDiy"
data-type="navigateTo" :data-url="`/pages/dl/registrationAgreemen/registrationAgreemen?type=22`">
<text class='fu-iconfont2 Withdrawals_fd1_2_c3'>&#xE600;</text>
</view>
</view>
</view>
<view :style="{height: (88+StatusBarRpx)+'rpx'}"></view>
<!---flex布局flex布局开始-->
<view class="flex flex-direction flex-wrap align-stretch benben-flex-layout contributionDetails_flex_1"
v-if="tabls=='1'">
<view class='flex flex-direction flex-wrap align-start flex-sub contributionDetails_fd1_0'>
<view class='flex flex-wrap align-center'>
<text class='contributionDetails_fd1_0_c0_c0'>积分</text>
<image @tap.stop="handleJumpDiy" data-type="navigateTo"
:data-url="`/pages/dl/registrationAgreemen/registrationAgreemen?type=23`" style="width: 36rpx; height: 36rpx; margin-left: 24rpx;" src="../static/dd_tips.png" mode="widthFix"></image>
</view>
<view class='flex flex-wrap align-end contributionDetails_fd1_0_c1'>
<text class='contributionDetails_fd1_0_c1_c0'>当前</text>
<text class='contributionDetails_fd1_0_c1_c1'>{{freeze_score}}</text>
</view>
</view>
</view>
<!---flex布局flex布局结束-->
<!---收入flex布局开始-->
<view class="flex flex-direction flex-wrap align-stretch benben-flex-layout contributionDetails_flex_2" v-if="lists.length>0">
<view class='flex flex-direction flex-wrap align-stretch flex-sub contributionDetails_fd2_0' v-for="(item,index) in lists" :key="index">
<view class='flex flex-wrap align-center justify-between'>
<view class='flex flex-wrap align-center'>
<image class='contributionDetails_fd2_0_c0_c0_c0' mode="aspectFit" :src='STATIC_URL+"22.png"'>
</image>
<text class='contributionDetails_fd2_0_c0_c0_c1'>{{item.store_name}}</text>
</view>
<view class='flex flex-wrap align-center' v-if="item.order_sn" @tap.stop="handleJumpDiy"
data-type="navigateTo" :data-url="`/pages/ddgl/orderDetails/orderDetails?order_sn=${item.order_sn}`">
<text class='contributionDetails_fd2_0_c0_c1_c0'>{{item.remark}}</text>
</view>
<view class='flex flex-wrap align-center' v-else >
<text class='contributionDetails_fd2_0_c0_c1_c0'>{{item.remark}}</text>
</view>
</view>
<view class='flex flex-wrap align-center justify-between contributionDetails_fd2_0_c1'>
<view class='flex flex-wrap align-center' v-if="item.logo">
<image class='contributionDetails_fd2_0_c1_c0_c0' mode="aspectFill" :src='item.logo'>
</image>
</view>
<view class='flex flex-wrap align-center'>
<!-- <text class='contributionDetails_fd2_0_c1_c1_c0'>+</text> -->
<text class='contributionDetails_fd2_0_c1_c1_c1'>{{item.change_score}}</text>
</view>
</view>
<view class='flex flex-wrap align-center'>
<text class='contributionDetails_fd2_0_c2_c0'>{{item.create_time}}</text>
</view>
</view>
</view>
<!---收入flex布局结束-->
<!-- 空布局 start -->
<fu-empty-ui v-if="lists.length == 0 && isInit"></fu-empty-ui>
<!-- 空布局 end -->
<!-- 页面加载 start -->
<!-- 页面加载 end -->
<!-- 底部数据加载状态 start-->
<uni-load-more v-if="lists.length > 8" :status="status"></uni-load-more>
<!-- 底部数据加载状态 end-->
</view>
</template>
<script>
export default {
components: {},
data() {
return {
"tabls": "1",
freeze_score:"",
lists: [], //订单列表
page: 1, //页码说
size: 10, //一页显示几条数据
status: 'more', // 加载状态 more:有更多数据 noMore:已加载全部数据 loading:数据加载中
isInit: false, //是否已经初始化
};
},
computed: {
themeColor() {
return this.$store.getters.themeColor
},
},
watch: {},
onLoad(options) {
this.getOrderList(true)
},
onShow() {
this.post64893775ce02c()
},
onPullDownRefresh() {
this.page = 1;
this.status = 'more';
this.getOrderList(false);
},
onReachBottom() {
this.getOrderList();
},
methods: {
//账户余额信息
post64893775ce02c(){
this.$api.post(global.apiUrls.post64893775ce02c).then(res=>{
if(res.data.code==1){
this.freeze_score = res.data.data.freeze_score
}
})
},
getOrderList(value) {
// this.isShow = false;
if (this.status != 'more') return;
this.status = 'loading';
let data = {
type: this.tabls,
page: this.page,
list_rows: this.size,
};
console.log('请求的数据', data);
if (this.page == 1 && value) {
this.isShowLoading = true;
}
this.$api
.post(global.apiUrls.post64916225e43d9, data)
.then(res => {
console.log('抵用券明细', res);
this.isShowLoading = false;
if (res.data.code == 1) {
var curPageData = res.data.data.data;
let total = res.data.data.total;
if (this.page == 1) this.lists = [];
this.lists = this.lists.concat(curPageData);
if (this.lists.length < total) {
this.status = 'more';
this.page++;
} else {
this.status = 'noMore';
}
} else {
this.$message.info(res.data.msg);
}
this.isInit = true;
uni.stopPullDownRefresh();
})
.catch(err => {
this.isShowLoading = false;
uni.stopPullDownRefresh();
});
},
}
};
</script>
<style lang="scss" scoped>
.page {
width: 100vw;
overflow-x: hidden;
min-height: calc(100vh - var(--window-bottom));
background: rgba(246, 247, 249, 1);
background-size: 100% auto !important;
}
.contributionDetails_flex_0 {
background: #fff;
width: 750rpx;
height: 88rpx;
overflow: hidden;
z-index: 10;
top: 0rpx;
background-size: 100% auto !important;
}
.contributionDetails_fd0_0_c2 {
width: 32rpx;
height: 32rpx;
}
.contributionDetails_fd0_0_c1_c0 {
font-size: 36rpx;
font-weight: 600;
color: #333333;
line-height: 36rpx;
}
.contributionDetails_fd0_0_c0_c0 {
font-size: 32rpx;
font-weight: 500;
color: #333;
line-height: 88rpx;
}
.contributionDetails_fd0_0 {
margin: 0rpx 32rpx 0rpx 32rpx;
}
.contributionDetails_flex_1 {
background: rgba(203, 255, 247, 1);
background-size: 100% auto !important;
padding: 19rpx 32rpx 21rpx 32rpx;
}
.contributionDetails_fd1_0_c1_c1 {
color: #FFFFFF;
font-size: 48rpx;
font-weight: 700;
line-height: 42rpx;
margin: 0rpx 0rpx 0rpx 16rpx;
}
.contributionDetails_fd1_0_c1_c0 {
color: #FFFFFF;
font-size: 24rpx;
font-weight: 500;
line-height: 24rpx;
}
.contributionDetails_fd1_0_c1 {
margin: 32rpx 0rpx 0rpx 0rpx;
}
.contributionDetails_fd1_0_c0_c0 {
color: #FFFFFF;
font-size: 32rpx;
font-weight: 500;
line-height: 42rpx;
}
.contributionDetails_fd1_0 {
background: url(/static/images/27.png) no-repeat, transparent;
background-size: 100% auto !important;
padding: 116rpx 0rpx 110rpx 30rpx;
}
.contributionDetails_flex_2 {
background: rgba(246, 247, 249, 1);
padding: 24rpx 24rpx 0rpx 24rpx;
border-radius: 16rpx 16rpx 0rpx 0rpx;
margin: -60rpx 0rpx 0rpx 0rpx;
background-size: 100% auto !important;
position: relative;
}
.contributionDetails_fd2_1_c2_c0 {
color: #999999;
font-size: 28rpx;
font-weight: 400;
line-height: 42rpx;
}
.contributionDetails_fd2_1_c1_c1_c1 {
color: #E32121;
font-size: 36rpx;
font-weight: 500;
line-height: 36rpx;
}
.contributionDetails_fd2_1_c1_c1_c0 {
color: #E32121;
font-size: 36rpx;
font-weight: 500;
line-height: 36rpx;
}
.contributionDetails_fd2_1_c1_c0_c0 {
width: 120rpx;
height: 120rpx;
border-radius: 16rpx 16rpx 16rpx 16rpx;
}
.contributionDetails_fd2_1_c1 {
margin: 40rpx 0rpx 57rpx 0rpx;
}
.contributionDetails_fd2_1_c0_c1_c0 {
color: #59A6F4;
font-size: 28rpx;
font-weight: 500;
line-height: 50rpx;
}
.contributionDetails_fd2_1_c0_c0_c1 {
color: #333333;
font-size: 32rpx;
font-weight: 500;
}
.contributionDetails_fd2_1_c0_c0_c0 {
width: 30rpx;
height: 28rpx;
border-radius: 0rpx 0rpx 0rpx 0rpx;
margin: 0rpx 16rpx 0rpx 0rpx;
}
.contributionDetails_fd2_1 {
background: rgba(255, 255, 255, 1);
border-radius: 16rpx 16rpx 16rpx 16rpx;
background-size: 100% auto !important;
margin: 0rpx 0rpx 20rpx 0rpx;
padding: 41rpx 24rpx 24rpx 24rpx;
}
.contributionDetails_fd2_0_c2_c0 {
color: #999999;
font-size: 28rpx;
font-weight: 400;
line-height: 42rpx;
}
.contributionDetails_fd2_0_c1_c1_c1 {
color: #E32121;
font-size: 36rpx;
font-weight: 500;
line-height: 36rpx;
}
.contributionDetails_fd2_0_c1_c1_c0 {
color: #E32121;
font-size: 36rpx;
font-weight: 500;
line-height: 36rpx;
}
.contributionDetails_fd2_0_c1_c0_c0 {
width: 120rpx;
height: 120rpx;
border-radius: 16rpx 16rpx 16rpx 16rpx;
}
.contributionDetails_fd2_0_c1 {
margin: 40rpx 0rpx 57rpx 0rpx;
}
.contributionDetails_fd2_0_c0_c1_c0 {
color: #59A6F4;
font-size: 28rpx;
font-weight: 500;
line-height: 50rpx;
}
.contributionDetails_fd2_0_c0_c0_c1 {
color: #333333;
font-size: 32rpx;
font-weight: 500;
}
.contributionDetails_fd2_0_c0_c0_c0 {
width: 30rpx;
height: 28rpx;
border-radius: 0rpx 0rpx 0rpx 0rpx;
margin: 0rpx 16rpx 0rpx 0rpx;
}
.contributionDetails_fd2_0 {
background: rgba(255, 255, 255, 1);
border-radius: 16rpx 16rpx 16rpx 16rpx;
background-size: 100% auto !important;
margin: 0rpx 0rpx 20rpx 0rpx;
padding: 41rpx 24rpx 24rpx 24rpx;
}
</style>