调整个人中心页面,会议中心页面,充值页面
This commit is contained in:
306
pages/user/member/billDetails - 副本.vue
Normal file
306
pages/user/member/billDetails - 副本.vue
Normal file
@@ -0,0 +1,306 @@
|
||||
<template>
|
||||
<!-- 账单明细 -->
|
||||
<view style="padding-bottom: 40rpx;">
|
||||
<up-navbar bgColor="transparent" title="明细" @leftClick="back"></up-navbar>
|
||||
<view class="bild" style="background-image: url(/static/czzx_header_bg.png);">
|
||||
<view class="bildLeft">
|
||||
<text>我的余额</text>
|
||||
<view>{{formData.info.amount||0}}</view>
|
||||
</view>
|
||||
<view class="bildRight">
|
||||
<text>我的积分</text>
|
||||
<view>{{formData.info.accountPoints||0}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="bottom">
|
||||
<view class="navTop">
|
||||
<view @click="clickEvent(1)" :class="[formData.active==1?'fonts':'']">
|
||||
余额明细
|
||||
<view :class="[formData.active==1?'xian':'']" style="left: 36rpx;"> </view>
|
||||
</view>
|
||||
<view @click="clickEvent(2)" :class="[formData.active==2?'fonts':'']">
|
||||
积分明细
|
||||
<view :class="[formData.active==2?'xian':'']" style="left: 36rpx;"> </view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="listStyle " v-for="(item,i) in formData.list" :key="i">
|
||||
<view class="flex-start">
|
||||
<view class="listStyle_left">
|
||||
<view class="listrigth">
|
||||
<view v-if="formData.active == 1">
|
||||
<text v-if="item.bizCode == 'cashIn'">
|
||||
现金充值
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'wechatIn'">
|
||||
微信小程序充值
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'alipayIn'">
|
||||
支付宝小程序充值
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'awardIn'">
|
||||
充值奖励
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'rechargeRefund'">
|
||||
充值退款
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'orderPay'">
|
||||
订单消费
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'orderRefund'">
|
||||
订单退款
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'adminIn'">
|
||||
管理员充值
|
||||
</text>
|
||||
<text v-if="item.bizCode == 'adminOut'">
|
||||
管理员消费
|
||||
</text>
|
||||
</view>
|
||||
<view v-else>
|
||||
{{item.content}}
|
||||
</view>
|
||||
|
||||
<view v-if="formData.active == 1" :class="{colorStyle: (item.bizCode == 'cashIn' || item.bizCode == 'wechatIn' ||
|
||||
item.bizCode == 'alipayIn'|| item.bizCode == 'awardIn'|| item.bizCode == 'rechargeRefund')}">
|
||||
{{ item.amount }}
|
||||
</view>
|
||||
<view v-else :class="{colorStyle: (item.floatPoint>0)}">
|
||||
{{item.floatPoints}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class=" listrigth2">
|
||||
<view>{{item.createTime}}
|
||||
</view>
|
||||
<view v-if="formData.active == 1">余额:{{item.balance}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="formData.list.length <= 0" style="text-align: center;">
|
||||
<image style="width: 402rpx;height: 442rpx;margin:240rpx auto 32rpx;"
|
||||
src="https://czg-qr-order.oss-cn-beijing.aliyuncs.com/nomore.png" mode="aspectFill"></image>
|
||||
</view>
|
||||
<up-loadmore :status="formData.form.status" fontSize="14" color="#999" iconSize="14" />
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import {
|
||||
ref,
|
||||
reactive,
|
||||
onMounted
|
||||
} from 'vue'
|
||||
|
||||
import {
|
||||
onReachBottom
|
||||
} from '@dcloudio/uni-app'
|
||||
|
||||
import {
|
||||
APIshopUsermoneyRecord,
|
||||
APIshopUserpointsRecord
|
||||
} from '@/common/api/member.js'
|
||||
|
||||
|
||||
function back(){
|
||||
uni.navigateBack()
|
||||
}
|
||||
const formData = reactive({
|
||||
active: 1,
|
||||
list: [],
|
||||
form: {
|
||||
page: 1,
|
||||
size: 10,
|
||||
status: 'loadmore',
|
||||
},
|
||||
info: {
|
||||
amount: '',
|
||||
accountPoints: ''
|
||||
},
|
||||
shopId: null
|
||||
})
|
||||
|
||||
const getlist = async () => {
|
||||
let res = null
|
||||
if (formData.active == 1) {
|
||||
res = await APIshopUsermoneyRecord({
|
||||
page: formData.form.page,
|
||||
size: formData.form.size,
|
||||
// status: formData.status,
|
||||
shopId: formData.shopId
|
||||
})
|
||||
} else {
|
||||
res = await APIshopUserpointsRecord({
|
||||
page: formData.form.page,
|
||||
size: formData.form.size,
|
||||
// status: formData.form.status,
|
||||
shopId: formData.shopId
|
||||
})
|
||||
}
|
||||
if (res.totalPage == 0 || res.totalPage == 1 && res.totalRow <= 10) {
|
||||
formData.form.status = 'nomore'
|
||||
formData.list = res.records
|
||||
if (formData.form.page == 1 && res.records.length == 0) {
|
||||
formData.records = []
|
||||
formData.is_end = true
|
||||
}
|
||||
return false;
|
||||
} else {
|
||||
formData.form.status = 'loading';
|
||||
if (formData.form.page == 1) {
|
||||
formData.list = res.records
|
||||
} else {
|
||||
formData.list = [...formData.list, ...res.records];
|
||||
}
|
||||
formData.form.page = ++formData.form.page;
|
||||
if (formData.form.page > res.totalPage) {
|
||||
formData.form.status = 'nomore';
|
||||
} else {
|
||||
formData.form.status = 'loading';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 检测是否包含In
|
||||
const checkIn = (str) => {
|
||||
let reg = RegExp(/In/)
|
||||
return str.match(reg)
|
||||
}
|
||||
|
||||
const clickEvent = (i) => {
|
||||
formData.active = i;
|
||||
formData.form.page = 1;
|
||||
formData.is_end = false
|
||||
formData.form.page = 1
|
||||
formData.form.size = 10
|
||||
formData.form.status = 'loadmore'
|
||||
getlist()
|
||||
}
|
||||
|
||||
onReachBottom(() => {
|
||||
getlist()
|
||||
})
|
||||
|
||||
onMounted(() => {
|
||||
// 获取当前页面栈
|
||||
const pages = getCurrentPages();
|
||||
// 获取当前页面实例
|
||||
const currentPage = pages[pages.length - 1];
|
||||
// 获取页面参数
|
||||
const options = currentPage.options;
|
||||
formData.info = JSON.parse(decodeURIComponent(options.shopInfo))
|
||||
formData.shopId = options.shopId
|
||||
formData.active = options.type
|
||||
console.log(formData.info)
|
||||
getlist()
|
||||
})
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.bild {
|
||||
height: 500rpx;
|
||||
background-size: cover;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
|
||||
.bildLeft,
|
||||
.bildRight {
|
||||
font-weight: 400;
|
||||
font-size: 32rpx;
|
||||
|
||||
>view,
|
||||
>text {
|
||||
text-align: center;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
>view {
|
||||
margin-top: 34rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
.bottom{
|
||||
background-color: rgba(255, 255, 255, .3);
|
||||
padding: 40rpx 28rpx 0 28rpx;
|
||||
transform: translateY(-140rpx);
|
||||
border-radius: 74rpx 74rpx 0 0;
|
||||
}
|
||||
.navTop {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
color: #333;
|
||||
|
||||
font-size: 28rpx;
|
||||
|
||||
.fonts {
|
||||
font-size: 32rpx;
|
||||
}
|
||||
|
||||
>view {
|
||||
position: relative;
|
||||
|
||||
.xian {
|
||||
width: 58rpx;
|
||||
height: 6rpx;
|
||||
background: #FFAA62;
|
||||
border-radius: 2rpx 2rpx 2rpx 2rpx;
|
||||
position: absolute;
|
||||
bottom: -16rpx;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.listStyle {
|
||||
padding: 28rpx;
|
||||
padding-top: 50rpx;
|
||||
width: 100%;
|
||||
|
||||
.listrigth,
|
||||
.listrigth2 {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
// padding-left: 32rpx;
|
||||
}
|
||||
|
||||
.listrigth {
|
||||
.colorStyle {
|
||||
color: #FF7127;
|
||||
}
|
||||
|
||||
>view {
|
||||
font-weight: bold;
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
|
||||
.listStyle_left {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.head_img {
|
||||
border-radius: 50%;
|
||||
margin-right: 32rpx;
|
||||
}
|
||||
|
||||
.listrigth2 {
|
||||
margin-top: 16rpx;
|
||||
|
||||
>view {
|
||||
font-weight: 500;
|
||||
font-size: 24rpx;
|
||||
color: #666666;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user