oil-station/gasStation-uni/pagesMy/writeOff/writeOff.vue
2024-08-16 18:26:19 +08:00

253 lines
4.5 KiB
Vue

<template>
<view class="content">
<view class="container">
<view class="my-header">
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
<view class="my-text">核销记录</view>
<view class="my-icons"></view>
</view>
<!-- 顶部区域 -->
<view class="tap-top">
<view class="tap-box" :class="{ 'act' : tindex == index }" v-for="(item,index) in tapList" :key="index"
@click="tapindex(index,item.text)">
<view class="">{{ item.text }}</view>
<view class="gang" :class="{ 'lan' : tindex == index }"></view>
</view>
</view>
<view class="ail" v-if="cardsList.length != 0 ">
<view class="box-order" v-for="(item,index) in cardsList" :key="index">
<view class="or-box-top">
<view class="chengg" style="font-weight: bold;">兑换券</view>
</view>
<view class="but-box">
<view class="huis">卡类型</view>
<view class="">{{item.cardType || "暂无"}}</view>
</view>
<view class="but-box">
<view class="huis">核销卡名</view>
<view class="reds">{{item.cardName || "暂无"}}</view>
</view>
<view class="but-box">
<view class="huis">卡券内容</view>
<view class="reds">{{item.cardContent || "暂无"}}</view>
</view>
<view class="but-box">
<view class="huis">兑换时间</view>
<view class="">{{item.updateTime || "暂无"}}</view>
</view>
</view>
</view>
<u-empty v-if="list.length == 0 " mode="coupon" text="内容为空"
icon="http://cdn.uviewui.com/uview/empty/coupon.png">
</u-empty>
</view>
</view>
</template>
<script>
import request from "../../utils/request";
export default {
data() {
return {
storeId: '',
cardsList: [],
query: {
storeId: '',
cardType: '兑换券',
pageNo: 1,
pageSize: 10
},
title: '',
tindex: 0,
list: [],
tapList: [{
text: "兑换券"
},
{
text: "洗车券"
},
]
}
},
components: {
},
onShow() {
this.query.storeId = uni.getStorageSync("storeId");
this.getGiftRecords()
},
methods: {
tapindex(index, item) {
this.cardsList = []
this.tindex = index
this.query.cardType = item
this.getGiftRecords()
},
getGiftRecords() {
request({
url: '/business/marketingActivity/cardExchangeRecord/selectCancelRecords',
method: 'get',
params: this.query
}).then(res => {
console.log(res)
if (res.code == 200) {
this.cardsList = res.data.records
// console.log(cardsList)
}
})
},
goback() {
uni.navigateBack()
}
},
}
</script>
<style scoped lang="scss">
.content {
background: #f4f5f6;
}
.container {
width: 100%;
height: 100vh;
box-sizing: border-box;
padding-top: 88px;
}
.my-header {
width: 100%;
height: 88px;
background: #ffffff;
display: flex;
align-items: center;
justify-content: space-between;
color: #000;
box-sizing: border-box;
padding: 0px 15px;
padding-top: 40px;
.my-icons {
width: 20px;
}
position: fixed;
top: 0px;
}
.but-box {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 14px;
margin: 5px 0px;
}
.tap-top {
width: 100%;
height: 50px;
background-color: #ffffff;
display: flex;
align-items: center;
justify-content: space-between;
}
.tap-box {
width: 33%;
text-align: center;
color: #666666;
}
.gang {
width: 35px;
height: 4px;
// background: #0000ff;
margin: 0 auto;
margin-top: 10px;
}
.act {
font-weight: bold;
color: #000;
}
.lan {
background: #0000ff;
}
.box-order {
width: 95%;
border-radius: 8px;
background: #ffffff;
box-sizing: border-box;
padding: 10px;
margin: 10px auto;
}
.or-box-top {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 5px 0px;
border-bottom: 1px solid #e5e5e5;
}
.chengg {
color: #1678ff;
}
.but-box {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 14px;
margin: 5px 0px;
}
.reds {
color: red;
}
.huis {
color: #666666;
}
.end-box {
width: 100%;
display: flex;
align-items: center;
justify-content: flex-end;
}
.anniu {
width: 70px;
height: 25px;
background-color: #1678ff;
color: #ffffff;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
border-radius: 15px;
}
</style>