You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
279 lines
7.0 KiB
279 lines
7.0 KiB
<template>
|
|
<view>
|
|
<view class="leave_cont">
|
|
<view class="ul">
|
|
<view class="li">
|
|
<text class="font15 fcor333">选择卡号</text>
|
|
<view class="flex1">
|
|
<picker mode="selector" :range="UserCard" range-key="cardNo"
|
|
@change="bindUserCard">
|
|
<view class="date text1 margle10">{{carNo}}</view>
|
|
</picker>
|
|
</view>
|
|
</view>
|
|
<view class="li">
|
|
<text class="font15 fcor333">业务类型</text>
|
|
<view class="flex1">
|
|
<picker mode="selector" :range="title_list" range-key="name"
|
|
@change="bindtitleList">
|
|
<view class="date text1 margle10">{{titleName}}</view>
|
|
</picker>
|
|
</view>
|
|
</view>
|
|
<view class="li">
|
|
<text class="font15 fcor333">开始时间</text>
|
|
<view class="flex1">
|
|
<picker mode="date" :value="start_date" :start="startDate" :end="endDate" @change="bindDateChange">
|
|
<view class="date">{{start_date}}</view>
|
|
</picker>
|
|
</view>
|
|
</view>
|
|
<view class="li">
|
|
<text class="font15 fcor333">结束时间</text>
|
|
<view class="flex1">
|
|
<picker mode="date" :value="end_date" :start="startDate" :end="endDate" @change="bindDateChange2">
|
|
<view class="date">{{end_date}}</view>
|
|
</picker>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="btnw94" @click="getHuiLianTongCardConsumeOpen()">立即查询</view>
|
|
<view class="font14 fcor666 mart15 fotct" v-if="user.hltCardNo" @click="delUserCard()">解除绑定</view>
|
|
<view class="height22 backcorfff width100"></view>
|
|
</view>
|
|
<view class="width100 backcorfff mart10">
|
|
<view class="font13 fotct fcor666 paddtop15">账号余额(元)</view>
|
|
<view class="mart15 font16 fcor089 fotct paddbotm10"><text class="font28">¥{{tongCardPrice}}</text></view>
|
|
</view>
|
|
<view class="width100 backcorfff mart10">
|
|
<view class="width100 height70 bor-botm1 paddleft5 paddtright5" v-for="(cardInfp,i) in cardConsumeList" :key="i">
|
|
<view class="width100 paddtop10 height30">
|
|
<view class="width70 flleft fcor333 font15 fontwig6 text1">订单编号:{{cardInfp.orderNo}}</view>
|
|
<view class="width30 flright fcoreb5 font15 fontwig6 fotct">-{{cardInfp.tranAmount}}</view>
|
|
</view>
|
|
<view class="width100 height30">
|
|
<view class="flleft fcor333 font14 fontwig6 text1">{{cardInfp.tranTime}}</view>
|
|
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="height25 width100"></view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import {
|
|
getUserCardList,
|
|
getHuiLianTongCardBalance,
|
|
getHuiLianTongCardConsume,
|
|
delUserCard
|
|
} from '../../../Utils/Api.js';
|
|
let app = getApp();
|
|
export default {
|
|
data() {
|
|
const currentDate = this.getDate({
|
|
format: true
|
|
})
|
|
return {
|
|
start_date: currentDate,
|
|
end_date: currentDate,
|
|
other: '请输入',
|
|
UserCard: '',
|
|
carNo: '',
|
|
title_list: [{
|
|
name: '中石化加油券',
|
|
value: 'sinopec_oil_code'
|
|
},
|
|
{
|
|
name: '其他商品或服务',
|
|
value: 'hisen_consume'
|
|
}
|
|
],
|
|
titleValue:'sinopec_oil_code',
|
|
titleName:'中石化加油券',
|
|
tongCardPrice:0,
|
|
cardConsumeList : [],
|
|
pageNum: 1,
|
|
pageSize: 10,
|
|
isNoMoreData: false,
|
|
user: ''
|
|
}
|
|
},
|
|
onLoad() {
|
|
|
|
},
|
|
onShow() {
|
|
this.getUserCardList();
|
|
},
|
|
//上滑刷新
|
|
onReachBottom() {
|
|
this.getHuiLianTongCardConsume();
|
|
},
|
|
computed: {
|
|
startDate() {
|
|
return this.getDate('start');
|
|
},
|
|
endDate() {
|
|
return this.getDate('end');
|
|
}
|
|
},
|
|
methods: {
|
|
// 选择日期
|
|
bindDateChange: function(e) {
|
|
this.start_date = e.target.value
|
|
},
|
|
bindDateChange2: function(e) {
|
|
this.end_date = e.target.value;
|
|
},
|
|
//选择卡号
|
|
bindUserCard(e) {
|
|
this.carNo = this.UserCard[e.target.value].cardNo;
|
|
},
|
|
//选择类型
|
|
bindtitleList(e){
|
|
this.titleName = this.title_list[e.target.value].name;
|
|
this.titleValue = this.title_list[e.target.value].value;
|
|
},
|
|
// 获取当前时间
|
|
getDate(type) {
|
|
const date = new Date();
|
|
let year = date.getFullYear();
|
|
let month = date.getMonth() + 1;
|
|
let day = date.getDate();
|
|
|
|
if (type === 'start') {
|
|
year = year - 60;
|
|
} else if (type === 'end') {
|
|
year = year + 2;
|
|
}
|
|
month = month > 9 ? month : '0' + month;
|
|
day = day > 9 ? day : '0' + day;
|
|
return `${year}-${month}-${day}`;
|
|
},
|
|
//查询我的卡号列表
|
|
getUserCardList() {
|
|
uni.showLoading();
|
|
getUserCardList().then(res => {
|
|
uni.hideLoading();
|
|
if (res.return_code == '000000') {
|
|
this.UserCard = res.return_data;
|
|
this.carNo = res.return_data[0].cardNo;
|
|
this.getHuiLianTongCardBalance();
|
|
this.getHuiLianTongCardConsume();
|
|
return;
|
|
}
|
|
this.UserCard = '';
|
|
});
|
|
},
|
|
//查询详情
|
|
getHuiLianTongCardBalance() {
|
|
let params = {
|
|
cardNo: this.carNo
|
|
}
|
|
getHuiLianTongCardBalance(params).then(res => {
|
|
if (res.return_code == '000000') {
|
|
this.tongCardPrice = res.return_data.balance;
|
|
}
|
|
|
|
});
|
|
},
|
|
// 重新打开查询
|
|
getHuiLianTongCardConsumeOpen(){
|
|
this.pageNum = 1;
|
|
this.isNoMoreData = false;
|
|
this.cardConsumeList = [];
|
|
this.getHuiLianTongCardConsume();
|
|
this.getHuiLianTongCardBalance();
|
|
},
|
|
|
|
//查询消费记录
|
|
getHuiLianTongCardConsume() {
|
|
if (this.isNoMoreData) {
|
|
return false;
|
|
}
|
|
uni.showLoading({
|
|
title: '加载中...'
|
|
})
|
|
let pagenum = this.pageNum;
|
|
let Time1 = new Date(this.start_date);
|
|
let timestemp1 = Time1.getTime();
|
|
let Time2 = new Date(this.end_date);
|
|
let timestemp2 = Time2.getTime();
|
|
let params = {
|
|
businessType :this.titleValue,
|
|
cardNo : this.carNo,
|
|
sdate : timestemp1,
|
|
edate: timestemp2,
|
|
pageNum: pagenum,
|
|
pageSize: this.pageSize
|
|
}
|
|
getHuiLianTongCardConsume(params).then(res => {
|
|
uni.hideLoading();
|
|
if (res.return_code == '000000' && res.return_data.records != '') {
|
|
this.isNoMoreData = res.return_data.records.length == this.pageSize ? false : true;
|
|
this.cardConsumeList = this.cardConsumeList.concat(res.return_data.records);
|
|
this.pageNum = res.return_data.records.length == this.pageSize ? ++pagenum : pagenum;
|
|
} else {
|
|
this.cardConsumeList = [];
|
|
uni.hideLoading();
|
|
uni.showToast({
|
|
title:res.return_msg,
|
|
icon:'none',
|
|
duration: 2000
|
|
})
|
|
this.isNoMoreData = true;
|
|
}
|
|
});
|
|
},
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
page {
|
|
background-color: #F5F5F5;
|
|
}
|
|
|
|
.leave_cont {
|
|
background: #FFFFFF;
|
|
}
|
|
|
|
.leave_cont .ul {
|
|
padding-left: 30rpx;
|
|
}
|
|
|
|
.leave_cont .ul .li {
|
|
display: flex;
|
|
align-items: center;
|
|
border-bottom: 1px solid #efefef;
|
|
}
|
|
|
|
.leave_cont .ul .li text {
|
|
padding: 40rpx 0;
|
|
}
|
|
|
|
.leave_cont .ul .li .flex1 {
|
|
flex: 1;
|
|
text-align: right;
|
|
width: 70%;
|
|
padding-right: 25rpx;
|
|
color: #999999;
|
|
font-size: 32rpx;
|
|
}
|
|
|
|
.date {
|
|
height: 42rpx;
|
|
}
|
|
|
|
.btnw94 {
|
|
width: 94%;
|
|
margin-left: 3%;
|
|
height: 45px;
|
|
line-height: 45px;
|
|
color: white;
|
|
text-align: center;
|
|
margin-top: 30px;
|
|
background-color: #0083f5;
|
|
border-radius: 25px;
|
|
}
|
|
</style>
|
|
|