parent
8afa122693
commit
2a2f395f65
@ -0,0 +1,55 @@ |
|||||||
|
const isNullOrEmpty = function(val) { |
||||||
|
if (val == null || val == "" || typeof(val) == undefined) { |
||||||
|
return true; |
||||||
|
} else { |
||||||
|
return false; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
const timeFormat = (value, format) => { |
||||||
|
let date = new Date(value); |
||||||
|
let y = date.getFullYear(); |
||||||
|
let m = date.getMonth() + 1; |
||||||
|
let d = date.getDate(); |
||||||
|
let h = date.getHours(); |
||||||
|
let min = date.getMinutes(); |
||||||
|
let s = date.getSeconds(); |
||||||
|
let result = ""; |
||||||
|
if (format == undefined) { |
||||||
|
result = `${y}-${m < 10 ? "0" + m : m}-${d < 10 ? "0" + d : d} ${ |
||||||
|
h < 10 ? "0" + h : h |
||||||
|
}:${min < 10 ? "0" + min : min}:${s < 10 ? "0" + s : s}`;
|
||||||
|
} |
||||||
|
if (format == "yyyy-mm-dd hh:mm") { |
||||||
|
result = `${y}-${m < 10 ? "0" + m : m}-${d < 10 ? "0" + d : d} `; |
||||||
|
} |
||||||
|
if (format == "yyyy-mm-dd") { |
||||||
|
result = `${y}-${m < 10 ? "0" + m : m}-${d < 10 ? "0" + d : d}`; |
||||||
|
} |
||||||
|
if (format == "yyyy-mm") { |
||||||
|
result = `${y}-${m < 10 ? "0" + m : m}`; |
||||||
|
} |
||||||
|
if (format == "mm-dd") { |
||||||
|
result = ` ${mm < 10 ? "0" + mm : mm}:${ddmin < 10 ? "0" + dd : dd}`; |
||||||
|
} |
||||||
|
if (format == "hh:mm") { |
||||||
|
result = ` ${h < 10 ? "0" + h : h}:${min < 10 ? "0" + min : min}`; |
||||||
|
} |
||||||
|
if (format == "yyyy") { |
||||||
|
result = `${y}`; |
||||||
|
} |
||||||
|
return result; |
||||||
|
}; |
||||||
|
|
||||||
|
|
||||||
|
// {{date|isNullOrEmpty}}
|
||||||
|
// {{date|timeFormat('yyyy-mm-dd')}}
|
||||||
|
// {{date|timeFormat('yyyy-mm')}}
|
||||||
|
// {{date|timeFormat('hh:mm')}}
|
||||||
|
// {{date|timeFormat('yyyy')}}
|
||||||
|
// {{date|timeFormat}}
|
||||||
|
|
||||||
|
export { |
||||||
|
isNullOrEmpty, |
||||||
|
timeFormat |
||||||
|
} |
@ -1,313 +1,399 @@ |
|||||||
<template> |
<template> |
||||||
<view> |
<view> |
||||||
<!-- 头部 --> |
<!-- 头部 --> |
||||||
<view class="width100 height120 backcorfff"> |
<view class="width100 height120 backcorfff"> |
||||||
<image :src="orderList.goodsImg" class="flleft conImg mart10 margle10"></image> |
<image :src="orderList.goodsImg" class="flleft conImg mart10 margle10"></image> |
||||||
<view class="conCont paddtop15"> |
<view class="conCont paddtop15"> |
||||||
<view class="font20 fontwig6 fcor333 text1 paddtright10">{{orderList.goodsName}}</view> |
<view class="font20 fontwig6 fcor333 text1 paddtright10">{{orderList.goodsName}}</view> |
||||||
<view class="font14 fcor999 text2 paddtop5 paddtright10">{{refulAdress}}</view> |
<view class="font14 fcor999 text2 paddtop5 paddtright10">{{refulAdress}}</view> |
||||||
<view class="font20 fontwig6 fcoreb5 paddtop5">¥{{orderList.gasPriceVip}} |
<view class="font20 fontwig6 fcoreb5 paddtop5">¥{{orderList.gasPriceVip}} |
||||||
<text class="margle10 slogan font14">¥{{orderList.gasPriceGun}}</text> |
<text class="margle10 slogan font14">¥{{orderList.gasPriceGun}}</text> |
||||||
</view> |
</view> |
||||||
</view> |
</view> |
||||||
</view> |
</view> |
||||||
<!-- //订单详情 --> |
<!-- //订单详情 --> |
||||||
<view class="mart10 heightl60 paddleft10 fcor333 fontwig6 font18 width100 backcorfff">订单详情</view> |
<view class="mart10 heightl60 paddleft10 fcor333 fontwig6 font18 width100 backcorfff">订单详情</view> |
||||||
<view class="line1"></view> |
<view class="line1"></view> |
||||||
<view class="heightl60 paddleft10 fcor666 font16 width100 backcorfff"> |
<view class="heightl60 paddleft10 fcor666 font16 width100 backcorfff"> |
||||||
<view class="flleft width50"> |
<view class="flleft width50"> |
||||||
油号\油枪 |
油号\油枪 |
||||||
</view> |
</view> |
||||||
<view class="flright width40 fotct"> |
<view class="flright width40 fotct"> |
||||||
{{orderList.gasOilNo}}#/{{orderList.gasGunNo}}号 |
{{orderList.gasOilNo}}#/{{orderList.gasGunNo}}号 |
||||||
</view> |
</view> |
||||||
</view> |
</view> |
||||||
<view class="line1"></view> |
<view class="line1"></view> |
||||||
<view class="heightl60 paddleft10 fcor666 font16 width100 backcorfff"> |
<view class="heightl60 paddleft10 fcor666 font16 width100 backcorfff"> |
||||||
<view class="flleft width50"> |
<view class="flleft width50"> |
||||||
加油金额 |
加油金额 |
||||||
</view> |
</view> |
||||||
<view class="flright width40 fotct"> |
<view class="flright width40 fotct"> |
||||||
{{orderList.totalPrice}} |
{{orderList.totalPrice}} |
||||||
</view> |
</view> |
||||||
</view> |
</view> |
||||||
|
|
||||||
<!-- //支付方式 --> |
<!-- //支付方式 --> |
||||||
<!-- <view class="mart10 heightl60 paddleft10 fcor333 fontwig6 font18 width100 backcorfff">支付方式</view> |
<view class="mart10 heightl60 paddleft10 fcor333 fontwig6 font18 width100 backcorfff">支付方式</view> |
||||||
<view class="line1"></view> |
<view class="line1"></view> |
||||||
<view class="width100 backcorfff"> |
<view class="width100 backcorfff"> |
||||||
<view class="line1"></view> |
<view class="line1"></view> |
||||||
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='weixin'"> |
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='weixin'"> |
||||||
<view class="width60 flleft fontwig6"> |
<view class="width60 flleft fontwig6"> |
||||||
银联支付 |
银联支付 |
||||||
</view> |
</view> |
||||||
<view class="flright width30 fotct"> |
<view class="flright width30 fotct"> |
||||||
<radio :checked="paytype=='weixin'" color="#0083f5" /> |
<radio :checked="paytype=='weixin'" color="#0083f5" /> |
||||||
</view> |
</view> |
||||||
</view> |
</view> |
||||||
|
|
||||||
<view class="line1"></view> |
<view class="line1"></view> |
||||||
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='gonghuika'"> |
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='oilcard'"> |
||||||
<view class="width60 flleft fontwig6"> |
<view class="width60 flleft fontwig6"> |
||||||
积分<text class="font14 fcor666 margle">(积分:{{user.gold}})</text> |
油卡支付<text class="font14 fcor666 margle">余额: {{oilPirce}}元</text> |
||||||
</view> |
</view> |
||||||
<view class="flright width30 fotct"> |
<view class="flright width30 fotct"> |
||||||
<radio :checked="paytype=='gonghuika'" @click="changeRiado()" color="#0083f5" /> |
<radio :checked="paytype=='oilcard'" @click="changeRiado()" color="#0083f5" /> |
||||||
</view> |
</view> |
||||||
</view> |
</view> |
||||||
</view> --> |
<!-- <view class="line1"></view> |
||||||
|
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='gonghuika'"> |
||||||
<view class="width100 mart15 fcor333 font16 fontwig6 paddleft10">重要说明</view> |
<view class="width60 flleft fontwig6"> |
||||||
<view class="width95 paddleft10 font14 fcor999 mart5">1.<text |
积分<text class="font14 fcor666 margle">(积分:{{user.gold}})</text> |
||||||
class="fcor089 fontwig6">请先加油后下单</text>,即您到站后,与工作人员确认油号,抢号后再付款。</view> |
</view> |
||||||
<view class="width95 paddleft10 font14 fcor999 mart5"> |
<view class="flright width30 fotct"> |
||||||
2.请勿先付款后加油,若您已下单付款。请于24小时内到加油站完成加油;若您48小时内未完成加油,请及时发起退单;逾期退单可能会退单失败。</view> |
<radio :checked="paytype=='gonghuika'" @click="changeRiado()" color="#0083f5" /> |
||||||
<view class="height80 width100"></view> |
</view> |
||||||
<!-- 底部按钮 --> |
</view> --> |
||||||
<view class="footer"> |
</view> |
||||||
<view class="width50 flleft fcoreb5 padleft15 font15"> |
|
||||||
合计: ¥<text class="font24">{{payprice}}</text> |
<view class="width100 mart15 fcor333 font16 fontwig6 paddleft10">重要说明</view> |
||||||
</view> |
<view class="width95 paddleft10 font14 fcor999 mart5">1.<text |
||||||
<button class="reBtn flright" @click="unionPay">去支付</button> |
class="fcor089 fontwig6">请先加油后下单</text>,即您到站后,与工作人员确认油号,抢号后再付款。</view> |
||||||
</view> |
<view class="width95 paddleft10 font14 fcor999 mart5"> |
||||||
|
2.请勿先付款后加油,若您已下单付款。请于24小时内到加油站完成加油;若您48小时内未完成加油,请及时发起退单;逾期退单可能会退单失败。</view> |
||||||
<ssPaymentPassword ref="paymentPassword" :mode="1" @submit="submitHandle"/> |
<view class="height80 width100"></view> |
||||||
</view> |
<!-- 底部按钮 --> |
||||||
</template> |
<view class="footer"> |
||||||
|
<view class="width50 flleft fcoreb5 padleft15 font15"> |
||||||
<script> |
合计: ¥<text class="font24">{{payprice}}</text> |
||||||
import { |
</view> |
||||||
getOrderById, |
<button class="reBtn flright" @click="orderToPay">去支付</button> |
||||||
orderToPay, |
</view> |
||||||
unionPay, |
|
||||||
orderToGoldPay, |
<ssPaymentPassword ref="paymentPassword" :mode="1" @submit="submitHandle" /> |
||||||
hltUnionCardPay |
</view> |
||||||
} from '../../../Utils/Api.js'; |
</template> |
||||||
import ssPaymentPassword from '../../../components/sanshui-payment-password/index.vue'; |
|
||||||
let app = getApp(); |
<script> |
||||||
export default { |
import { |
||||||
components: { |
getOrderById, |
||||||
ssPaymentPassword |
orderToPay, |
||||||
}, |
unionPay, |
||||||
data() { |
orderToGoldPay, |
||||||
return { |
hltUnionCardPay, |
||||||
orderNo: '', |
findUser, |
||||||
couponId: '', |
oilCardPay |
||||||
payprice: '', |
} from '../../../Utils/Api.js'; |
||||||
orderList: '', |
import ssPaymentPassword from '../../../components/sanshui-payment-password/index.vue'; |
||||||
refulAdress: '', |
let app = getApp(); |
||||||
tongCardPrice: 0, |
export default { |
||||||
user: '', |
components: { |
||||||
paytype: '', |
ssPaymentPassword |
||||||
PaymentPassword: '', |
}, |
||||||
} |
data() { |
||||||
}, |
return { |
||||||
onLoad(e) { |
orderNo: '', |
||||||
this.payprice = e.payprice; |
couponId: '', |
||||||
this.orderNo = e.orderId; |
payprice: '', |
||||||
this.couponId = e.couponId; |
orderList: '', |
||||||
this.refulAdress = e.adres; |
refulAdress: '', |
||||||
this.getOrderById(); |
tongCardPrice: 0, |
||||||
}, |
oilPirce: 0, //油卡余额 |
||||||
onShow() { |
user: '', |
||||||
let that = this; |
paytype: '', |
||||||
that.paytype = ''; |
PaymentPassword: '', |
||||||
that.user = app.globalData.userInfo; |
} |
||||||
}, |
}, |
||||||
methods: { |
onLoad(e) { |
||||||
//密码支付完成 |
this.payprice = e.payprice; |
||||||
submitHandle(e) { |
this.orderNo = e.orderId; |
||||||
this.PaymentPassword = e.value; |
this.couponId = e.couponId; |
||||||
if(this.PaymentPassword == ''){ |
this.refulAdress = e.adres; |
||||||
uni.showToast({ |
this.getOrderById(); |
||||||
title: '请勿手动关闭弹窗', |
}, |
||||||
icon: 'none', |
onShow() { |
||||||
duration: 2000 |
let that = this; |
||||||
}) |
that.paytype = ''; |
||||||
return; |
that.findUser(); |
||||||
} |
// that.user = app.globalData.userInfo; |
||||||
uni.showLoading({ |
}, |
||||||
title: '支付中...' |
methods: { |
||||||
}) |
findUser() { |
||||||
let params = { |
let params; |
||||||
"orderId": this.orderNo, |
findUser(params).then(res => { |
||||||
"password": this.PaymentPassword |
if (res.return_code == '000000') { |
||||||
} |
app.globalData.userInfo = res.return_data; |
||||||
orderToGoldPay(params).then(res => { |
this.user = res.return_data; |
||||||
uni.hideLoading(); |
if (res.return_data.oilCard) { |
||||||
if (res.return_code == '000000') { |
this.oilPirce = res.return_data.oilCard.amount; |
||||||
uni.showToast({ |
} |
||||||
title: '支付成功' |
uni.setStorage({ |
||||||
}) |
key: "user", |
||||||
uni.reLaunch({ |
data: res.return_data |
||||||
url: '/pages/goods/refuel-succes/refuel-succes?id=' +this.orderNo |
}) |
||||||
}); |
} |
||||||
return; |
}); |
||||||
} |
}, |
||||||
if (res.return_code == '102130') { |
//密码支付完成 |
||||||
uni.navigateTo({ |
submitHandle(e) { |
||||||
url: '../../login/updatePas/updatePas' |
this.PaymentPassword = e.value; |
||||||
}) |
if (this.PaymentPassword == '') { |
||||||
return; |
uni.showToast({ |
||||||
} |
title: '请勿手动关闭弹窗', |
||||||
uni.showToast({ |
icon: 'none', |
||||||
title: res.return_msg, |
duration: 2000 |
||||||
icon: 'none' |
}) |
||||||
}) |
return; |
||||||
}) |
} |
||||||
|
uni.showLoading({ |
||||||
|
title: '支付中...' |
||||||
}, |
}) |
||||||
//获取选择支付方式 |
if (this.paytype == 'jifen') { |
||||||
changeRiado() { |
let params = { |
||||||
if (!this.user.isSetHltCard) { |
"orderId": this.orderNo, |
||||||
uni.showToast({ |
"password": this.PaymentPassword |
||||||
icon: 'none', |
} |
||||||
title: '当前账号还未绑定,前往绑定', |
orderToGoldPay(params).then(res => { |
||||||
duration: 2000, |
uni.hideLoading(); |
||||||
success() { |
if (res.return_code == '000000') { |
||||||
setTimeout(() => { |
uni.showToast({ |
||||||
uni.navigateTo({ |
title: '支付成功' |
||||||
url: '../../user/bindingCard/bindingCard' |
}) |
||||||
}) |
uni.reLaunch({ |
||||||
}, 1000) |
url: '/pages/goods/refuel-succes/refuel-succes?id=' + this.orderNo |
||||||
} |
}); |
||||||
}); |
return; |
||||||
return; |
} |
||||||
} |
if (res.return_code == '102130') { |
||||||
}, |
uni.navigateTo({ |
||||||
getOrderById() { |
url: '../../login/updatePas/updatePas' |
||||||
uni.showLoading({ |
}) |
||||||
title: '加载中...' |
return; |
||||||
}) |
} |
||||||
let params = { |
uni.showToast({ |
||||||
orderId: this.orderNo, |
title: res.return_msg, |
||||||
} |
icon: 'none' |
||||||
getOrderById(params).then(res => { |
}) |
||||||
uni.hideLoading(); |
}) |
||||||
if (res.return_code == '000000') { |
return; |
||||||
this.orderList = res.return_data.highChildOrderList[0]; |
} |
||||||
} |
if (this.paytype == 'oilcard') { |
||||||
}) |
let params = { |
||||||
}, |
"orderId": this.orderNo, |
||||||
|
"cardNo": this.user.oilCard.cardNo, |
||||||
//获取订单数据 |
"password": this.PaymentPassword |
||||||
orderToPay() { |
} |
||||||
let that = this; |
oilCardPay(params).then(res => { |
||||||
if (that.paytype == '') { |
uni.hideLoading(); |
||||||
uni.showToast({ |
if (res.return_code == '000000') { |
||||||
title: '请选择支付方式', |
uni.showToast({ |
||||||
icon: 'none', |
title: '支付成功' |
||||||
duration: 2000 |
}) |
||||||
}) |
uni.reLaunch({ |
||||||
return; |
url: '/pages/goods/refuel-succes/refuel-succes?id=' + this.orderNo |
||||||
} |
}); |
||||||
if (that.paytype == 'weixin') { |
return; |
||||||
that.unionPay(); |
} |
||||||
return; |
if (res.return_code == '102130') { |
||||||
} |
uni.navigateTo({ |
||||||
if(that.paytype == 'gonghuika'){ |
url: '../../login/updatePas/updatePas' |
||||||
if (!that.user.isSetPayPwd) { |
}) |
||||||
uni.navigateTo({ |
return; |
||||||
url: '../../login/updatePas/updatePas' |
} |
||||||
}) |
uni.showToast({ |
||||||
return; |
title: res.return_msg, |
||||||
} |
icon: 'none' |
||||||
that.$refs.paymentPassword.modalFun('show'); |
}) |
||||||
} |
}) |
||||||
|
return; |
||||||
}, |
} |
||||||
//银联获取信息 |
|
||||||
unionPay() { |
}, |
||||||
let goods = { |
//获取选择支付方式 |
||||||
"orderId": this.orderNo |
changeRiado() { |
||||||
} |
if (!this.user.isSetHltCard) { |
||||||
unionPay(goods).then(res => { |
uni.showToast({ |
||||||
if (res.return_code == '000000') { |
icon: 'none', |
||||||
this.uniontopay(res.return_data.prepayid); |
title: '当前账号还未绑定,前往绑定', |
||||||
} else { |
duration: 2000, |
||||||
uni.showToast({ |
success() { |
||||||
title: res.return_msg, |
setTimeout(() => { |
||||||
icon: 'none', |
uni.navigateTo({ |
||||||
duration: 2000 |
url: '../../user/bindingCard/bindingCard' |
||||||
}); |
}) |
||||||
} |
}, 1000) |
||||||
}) |
} |
||||||
}, |
}); |
||||||
//银联支付 |
return; |
||||||
uniontopay(item) { |
} |
||||||
let that = this; |
}, |
||||||
upsdk.pluginReady(function() { |
getOrderById() { |
||||||
upsdk.pay({ |
uni.showLoading({ |
||||||
tn: item, |
title: '加载中...' |
||||||
success: function(res) { |
}) |
||||||
uni.showToast({ |
let params = { |
||||||
title: '支付成功' |
orderId: this.orderNo, |
||||||
}) |
} |
||||||
uni.reLaunch({ |
getOrderById(params).then(res => { |
||||||
url: '/pages/goods/refuel-succes/refuel-succes?id=' +that.orderNo |
uni.hideLoading(); |
||||||
}); |
if (res.return_code == '000000') { |
||||||
}, |
this.orderList = res.return_data.highChildOrderList[0]; |
||||||
fail: function(err) { |
} |
||||||
uni.showToast({ |
}) |
||||||
title: err.msg, |
}, |
||||||
icon: 'none', |
|
||||||
duration: 2000 |
//获取订单数据 |
||||||
}) |
orderToPay() { |
||||||
// 支付失败, err.msg 是失败原因描述, 比如TN号不合法, 或者用户取消了交易 等等。 |
let that = this; |
||||||
} |
if (that.paytype == '') { |
||||||
}); |
uni.showToast({ |
||||||
}); |
title: '请选择支付方式', |
||||||
} |
icon: 'none', |
||||||
} |
duration: 2000 |
||||||
} |
}) |
||||||
</script> |
return; |
||||||
|
} |
||||||
<style lang="less"> |
if (that.paytype == 'weixin') { |
||||||
page { |
that.unionPay(); |
||||||
background-color: #f7f7f7; |
return; |
||||||
} |
} |
||||||
|
if (that.paytype == 'gonghuika') { |
||||||
.conImg { |
if (!that.user.isSetPayPwd) { |
||||||
width: 100px; |
uni.navigateTo({ |
||||||
height: 100px; |
url: '../../login/updatePas/updatePas' |
||||||
border-radius: 8px; |
}) |
||||||
} |
return; |
||||||
|
} |
||||||
.conCont { |
that.$refs.paymentPassword.modalFun('show'); |
||||||
margin-left: 115px; |
} |
||||||
} |
if (that.paytype == 'oilcard') { |
||||||
|
if (!that.user.isSetPayPwd) { |
||||||
.slogan { |
uni.navigateTo({ |
||||||
color: #807c87; |
url: '../../login/updatePas/updatePas' |
||||||
text-decoration: line-through; |
}) |
||||||
} |
return; |
||||||
|
} |
||||||
.footer { |
if (!that.user.isSetHltCard) { |
||||||
position: fixed; |
uni.showToast({ |
||||||
bottom: 0upx; |
icon: 'none', |
||||||
width: 100%; |
title: '当前账号还未绑定,前往绑定', |
||||||
height: 100rpx; |
duration: 2000, |
||||||
color: #FFFFFF; |
success() { |
||||||
border-top: solid 1upx #eee; |
setTimeout(() => { |
||||||
background-color: #FFFFFF; |
uni.navigateTo({ |
||||||
z-index: 2; |
url: '../../user/bindingCard/bindingCard' |
||||||
display: flex; |
}) |
||||||
justify-content: space-between; |
}, 1000) |
||||||
align-items: center; |
} |
||||||
|
}); |
||||||
.reBtn { |
return; |
||||||
width: 120px; |
} |
||||||
background-color: #089bf5; |
that.$refs.paymentPassword.modalFun('show'); |
||||||
color: #FFFFFF; |
} |
||||||
text-align: center; |
|
||||||
padding: 0; |
}, |
||||||
font-size: 16px; |
//银联获取信息 |
||||||
border-radius: 0px; |
unionPay() { |
||||||
height: 50px; |
let goods = { |
||||||
line-height: 50px; |
"orderId": this.orderNo |
||||||
position: absolute; |
} |
||||||
right: 0px; |
unionPay(goods).then(res => { |
||||||
} |
if (res.return_code == '000000') { |
||||||
} |
this.uniontopay(res.return_data.prepayid); |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: 'none', |
||||||
|
duration: 2000 |
||||||
|
}); |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
//银联支付 |
||||||
|
uniontopay(item) { |
||||||
|
let that = this; |
||||||
|
upsdk.pluginReady(function() { |
||||||
|
upsdk.pay({ |
||||||
|
tn: item, |
||||||
|
success: function(res) { |
||||||
|
uni.showToast({ |
||||||
|
title: '支付成功' |
||||||
|
}) |
||||||
|
uni.reLaunch({ |
||||||
|
url: '/pages/goods/refuel-succes/refuel-succes?id=' + that |
||||||
|
.orderNo |
||||||
|
}); |
||||||
|
}, |
||||||
|
fail: function(err) { |
||||||
|
uni.showToast({ |
||||||
|
title: err.msg, |
||||||
|
icon: 'none', |
||||||
|
duration: 2000 |
||||||
|
}) |
||||||
|
// 支付失败, err.msg 是失败原因描述, 比如TN号不合法, 或者用户取消了交易 等等。 |
||||||
|
} |
||||||
|
}); |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="less"> |
||||||
|
page { |
||||||
|
background-color: #f7f7f7; |
||||||
|
} |
||||||
|
|
||||||
|
.conImg { |
||||||
|
width: 100px; |
||||||
|
height: 100px; |
||||||
|
border-radius: 8px; |
||||||
|
} |
||||||
|
|
||||||
|
.conCont { |
||||||
|
margin-left: 115px; |
||||||
|
} |
||||||
|
|
||||||
|
.slogan { |
||||||
|
color: #807c87; |
||||||
|
text-decoration: line-through; |
||||||
|
} |
||||||
|
|
||||||
|
.footer { |
||||||
|
position: fixed; |
||||||
|
bottom: 0upx; |
||||||
|
width: 100%; |
||||||
|
height: 100rpx; |
||||||
|
color: #FFFFFF; |
||||||
|
border-top: solid 1upx #eee; |
||||||
|
background-color: #FFFFFF; |
||||||
|
z-index: 2; |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.reBtn { |
||||||
|
width: 120px; |
||||||
|
background-color: #089bf5; |
||||||
|
color: #FFFFFF; |
||||||
|
text-align: center; |
||||||
|
padding: 0; |
||||||
|
font-size: 16px; |
||||||
|
border-radius: 0px; |
||||||
|
height: 50px; |
||||||
|
line-height: 50px; |
||||||
|
position: absolute; |
||||||
|
right: 0px; |
||||||
|
} |
||||||
|
} |
||||||
</style> |
</style> |
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,488 +1,359 @@ |
|||||||
<template> |
<template> |
||||||
<view> |
<view> |
||||||
<view class="width100 backcorfff"> |
<view class="width100 backcorfff"> |
||||||
<image mode="widthFix" class=" flleft sear mart15" :src="imagewxUrl+imgadres"></image> |
<image mode="widthFix" class=" flleft sear mart15" :src="imagewxUrl+imgadres"></image> |
||||||
<uSearchBar @confirm="search" @input="input"></uSearchBar> |
<uSearchBar @confirm="search" @input="input"></uSearchBar> |
||||||
</view> |
</view> |
||||||
<!-- <slFilter :independence="true" :color="titleColor" :themeColor="themeColor" :menuList.sync="menuList" |
<!-- <slFilter :independence="true" :color="titleColor" :themeColor="themeColor" :menuList.sync="menuList" |
||||||
@result="result"></slFilter> --> |
@result="result"></slFilter> --> |
||||||
<view class="width100 height40 backcorfff"> |
<view class="width100 height40 backcorfff"> |
||||||
<view class="stuMenu flleft fotct" @click="showPopup(1)">{{distance}} |
<view class="width90"> |
||||||
<image mode="widthFix" class="stuimg margle" :src="imagewxUrl+imgadres2"></image> |
<view class="stuMenu flleft fotct" @click="showPopup(3)">{{onilName}} |
||||||
</view> |
<image mode="widthFix" class="stuimg margle" :src="imagewxUrl+imgadres2"></image> |
||||||
<view class="stuMenu flleft fotct" @click="showPopup(2)">{{distanceName}} |
</view> |
||||||
<image mode="widthFix" class="stuimg margle" :src="imagewxUrl+imgadres2"></image> |
<view class="stuMenu flleft fotct" @click="showPopup(1)">{{distance}} |
||||||
</view> |
<image mode="widthFix" class="stuimg margle" :src="imagewxUrl+imgadres2"></image> |
||||||
<view class="stuMenu flleft fotct" @click="showPopup(3)">{{onilName}} |
</view> |
||||||
<image mode="widthFix" class="stuimg margle" :src="imagewxUrl+imgadres2"></image> |
<!-- <view class="stuMenu flleft fotct" @click="showPopup(2)">{{distanceName}} |
||||||
</view> |
<image mode="widthFix" class="stuimg margle" :src="imagewxUrl+imgadres2"></image> |
||||||
</view> |
</view> --> |
||||||
|
|
||||||
<view v-if="refuelList == '' " class="mart60 fotct font14 fcor666"> |
</view> |
||||||
<image mode="widthFix" style="width: 70vw;" :src="imagewxUrl+imgadres3"></image> |
</view> |
||||||
</view> |
|
||||||
<view class="width96 height100p backcorfff border-r mart10" v-for="(item,index) in refuelList" :key="index"> |
<view v-if="refuelList == '' " class="mart60 fotct font14 fcor666"> |
||||||
<image mode="widthFix" :src="item.store_logo" class="recontleft flleft mart10 border-r" |
<image mode="widthFix" style="width: 70vw;" :src="imagewxUrl+imgadres3"></image> |
||||||
style="max-height: 80px;" @click="goDetails(item.store_key,item.id)"> |
</view> |
||||||
</image> |
<view class="width96 height100p backcorfff border-r mart10" v-for="(item,index) in refuelList" :key="index"> |
||||||
<view class="recontright"> |
<image mode="widthFix" :src="item.store_logo" class="recontleft flleft mart10 border-r" |
||||||
<view class="text1 width100 font18 fontwig6 paddtop10" @click="goDetails(item.store_key,item.id)"> |
style="max-height: 80px;" @click="goDetails(item.store_key,item.id)"> |
||||||
{{item.store_name}}</view> |
</image> |
||||||
<view class="width100 mart5 height22"> |
<view class="recontright"> |
||||||
<view class="width70 flleft text1 font13 fcor999" @click="goDetails(item.store_key,item.id)"> |
<view class="text1 width100 font18 fontwig6 paddtop10" @click="goDetails(item.store_key,item.id)"> |
||||||
{{item.address}} |
{{item.store_name}} |
||||||
</view> |
</view> |
||||||
<view class="width30 flright font13 fcor666 fotct" @click="seeloaction(item)"> |
<view class="width100 mart5 height22"> |
||||||
<image mode="widthFix" :src="imagewxUrl+imgadres1" style="width: 10px;"></image> |
<view class="width70 flleft text1 font13 fcor999" @click="goDetails(item.store_key,item.id)"> |
||||||
{{item.distance}}km |
{{item.address}} |
||||||
</view> |
</view> |
||||||
</view> |
<view class="width30 flright font13 fcor666 fotct" @click="seeloaction(item)"> |
||||||
<view class="font14 width100 fcoreb5 mart5 height22" @click="goDetails(item.store_key,item.id)"> |
<image mode="widthFix" :src="imagewxUrl+imgadres1" style="width: 10px;"></image> |
||||||
<text class="font18 fontwig6">{{item.price_vip}}</text>起<text |
{{item.distance}}km |
||||||
class="fcor999 margle">油站价¥{{item.price_gun}}</text> |
</view> |
||||||
</view> |
</view> |
||||||
</view> |
<view class="font14 width100 fcoreb5 mart5 height22" @click="goDetails(item.store_key,item.id)"> |
||||||
</view> |
<text class="font18 fontwig6">{{item.price_vip}}</text>起<text |
||||||
|
class="fcor999 margle">油站价¥{{item.price_gun}}</text> |
||||||
<wybPopup ref="popup" type="bottom" height="800" width="500" radius="6" :showCloseIcon="false"> |
</view> |
||||||
<view class="fotct font18 fontwig6 fcor333 mart10 height30" v-if="typeId == 1">筛选距离</view> |
</view> |
||||||
<view class="fotct font18 fontwig6 fcor333 mart10 height30" v-if="typeId == 2">优先条件</view> |
</view> |
||||||
<view class="fotct font18 fontwig6 fcor333 mart10 height30" v-if="typeId == 3">油号选择</view> |
|
||||||
<view class="mart15" v-if="typeId == 1"> |
<wybPopup ref="popup" type="bottom" height="800" width="500" radius="6" :showCloseIcon="false"> |
||||||
<view :class="item.name == distance?'activeRefuel':'refuel'" v-for="(item,index) in gunnumber" |
<view class="fotct font18 fontwig6 fcor333 mart10 height30" v-if="typeId == 1">筛选距离</view> |
||||||
:key="index" @click="changeValue(item)"> |
<!-- <view class="fotct font18 fontwig6 fcor333 mart10 height30" v-if="typeId == 2">优先条件</view> --> |
||||||
{{item.name}} |
<view class="fotct font18 fontwig6 fcor333 mart10 height30" v-if="typeId == 3">油号选择</view> |
||||||
</view> |
<view class="mart15" v-if="typeId == 1"> |
||||||
</view> |
<view :class="item.name == distance?'activeRefuel':'refuel'" v-for="(item,index) in gunnumber" |
||||||
|
:key="index" @click="changeValue(item)"> |
||||||
<view class="mart15" v-if="typeId == 2"> |
{{item.name}} |
||||||
<view :class="item.name == distanceName?'activeRefuel':'refuel'" v-for="(item,index) in detailList" |
</view> |
||||||
:key="index" @click="changeValue1(item)"> |
</view> |
||||||
{{item.name}} |
|
||||||
</view> |
<!-- <view class="mart15" v-if="typeId == 2"> |
||||||
</view> |
<view :class="item.name == distanceName?'activeRefuel':'refuel'" v-for="(item,index) in detailList" |
||||||
<view class="mart15" v-if="typeId == 3"> |
:key="index" @click="changeValue1(item)"> |
||||||
<view v-for="(item,index) in oilList" :key="index"> |
{{item.name}} |
||||||
<view class="font15 fcor666 width90 mart10 height22">{{item.name}}</view> |
</view> |
||||||
<view :class="items.name == onilName?'activeRefuel':'refuel'" |
</view> --> |
||||||
v-for="(items,indexs) in item.nillist" :key="indexs" @click="changeValue2(items)"> |
<view class="mart15" v-if="typeId == 3"> |
||||||
{{items.name}} |
<view class="font15 fcor666 width90 mart10 height22">油品</view> |
||||||
</view> |
<view :class="items.codeName == onilName?'activeRefuel':'refuel'" v-for="(items,indexs) in oilList" |
||||||
</view> |
:key="indexs" @click="changeValue2(items)"> |
||||||
</view> |
{{items.codeName}} |
||||||
</wybPopup> |
</view> |
||||||
<!-- <authorize></authorize> --> |
</view> |
||||||
</view> |
</wybPopup> |
||||||
</template> |
<!-- <authorize></authorize> --> |
||||||
|
|
||||||
<script> |
</view> |
||||||
import { |
</template> |
||||||
getGasStoreList |
|
||||||
} from '../../../Utils/Api.js'; |
<script> |
||||||
import slFilter from '@/components/sl-filter/sl-filter.vue'; |
import { |
||||||
import wybPopup from '../../../components/wyb-popup/wyb-popup.vue'; |
getGasStoreList, |
||||||
import uSearchBar from '../../../components/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'; |
getDictionaryByCodeType |
||||||
// import authorize from '../../../components/Authorize.vue' |
} from '../../../Utils/Api.js'; |
||||||
let app = getApp(); |
import slFilter from '@/components/sl-filter/sl-filter.vue'; |
||||||
export default { |
import wybPopup from '../../../components/wyb-popup/wyb-popup.vue'; |
||||||
components: { |
import uSearchBar from '../../../components/uni-search-bar/components/uni-search-bar/uni-search-bar.vue'; |
||||||
slFilter, |
// import authorize from '../../../components/Authorize.vue' |
||||||
// authorize, |
let app = getApp(); |
||||||
uSearchBar, |
export default { |
||||||
wybPopup |
components: { |
||||||
}, |
slFilter, |
||||||
data() { |
// authorize, |
||||||
return { |
uSearchBar, |
||||||
themeColor: '#089bf5', |
wybPopup |
||||||
titleColor: '#666666', |
}, |
||||||
filterResult: '', |
data() { |
||||||
imagewxUrl: app.globalData.imageWxImg, |
return { |
||||||
imgadres:'btjy.png', |
themeColor: '#089bf5', |
||||||
imgadres1:'dh.png', |
titleColor: '#666666', |
||||||
imgadres2:'xiala.png', |
filterResult: '', |
||||||
imgadres3:'noorder.png', |
imagewxUrl: app.globalData.imageWxImg, |
||||||
menuList: [ |
imgadres: 'btjy.png', |
||||||
{ |
imgadres1: 'dh.png', |
||||||
'title': '油号', |
imgadres2: 'xiala.png', |
||||||
'key': 'single2', |
imgadres3: 'noorder.png', |
||||||
'isMutiple': false, |
refuelList: [], |
||||||
'detailTitle': '', |
pageNum: 1, |
||||||
'reflexTitle': true, |
pageSize: 10, |
||||||
'defaultSelectedIndex': 0, |
isNoMoreData: false, |
||||||
'detailList': [{ |
searname: '', |
||||||
'title': '90#', |
gunnumber: [{ |
||||||
'value': '' |
id: 1, |
||||||
}, { |
name: '6km内', |
||||||
'title': '92#', |
value: 6 |
||||||
'value': '92#' |
}, |
||||||
}, { |
{ |
||||||
'title': '95#', |
id: 2, |
||||||
'value': '95#' |
name: '10km内', |
||||||
}, { |
value: 10 |
||||||
'title': '98#', |
}, |
||||||
'value': '98#' |
{ |
||||||
}, { |
id: 3, |
||||||
'title': '101#', |
name: '15km内', |
||||||
'value': '101#' |
value: 15 |
||||||
}, ] |
}, |
||||||
}, |
{ |
||||||
{ |
id: 4, |
||||||
'title': '距离', |
name: '20km内', |
||||||
'key': 'single3', |
value: 20 |
||||||
'isMutiple': false, |
}, |
||||||
'detailTitle': '', |
{ |
||||||
'reflexTitle': true, |
id: 5, |
||||||
'defaultSelectedIndex': 0, |
name: '50km内', |
||||||
'detailList': [{ |
value: 50 |
||||||
'title': '6km内', |
}, { |
||||||
'value': '' |
id: 6, |
||||||
}, |
name: '2000km内', |
||||||
{ |
value: 2000 |
||||||
'title': '10km内', |
} |
||||||
'value': '10km内' |
], |
||||||
}, |
distance: '50km内', |
||||||
{ |
distanceNum: '50', |
||||||
'title': '15km内', |
distanceName: '距离最近', |
||||||
'value': '15km内' |
detailList: [{ |
||||||
}, |
id: 1, |
||||||
{ |
name: '距离最近' |
||||||
'title': '20km内', |
}], |
||||||
'value': '20km内' |
typeId: '', |
||||||
}, |
oilList: [], |
||||||
{ |
onilName: '0#', |
||||||
'title': '50km内', |
latitudeful: '', |
||||||
'value': '50km内' |
longitudeful: '', |
||||||
}, { |
isTyAgent: false //是否是代理商 |
||||||
'title': '2000km内', |
} |
||||||
'value': '2000' |
}, |
||||||
} |
onLoad() { |
||||||
] |
let that = this; |
||||||
}, { |
that.getDictionaryByCodeType(); |
||||||
'title': '距离', |
if (app.globalData.accountId) { |
||||||
'key': 'single1', |
that.isTyAgent = true; |
||||||
'isMutiple': false, |
} |
||||||
'detailTitle': '', |
uni.getLocation({ |
||||||
'reflexTitle': true, |
type: 'wgs84', |
||||||
'defaultSelectedIndex': 0, |
success: function(res) { |
||||||
'detailList': [{ |
that.latitudeful = res.latitude; |
||||||
'title': '距离最近', |
that.longitudeful = res.longitude; |
||||||
'value': '' |
that.getGasStoreList(); |
||||||
}] |
} |
||||||
|
}) |
||||||
} |
}, |
||||||
], |
onReachBottom() { |
||||||
refuelList: [], |
this.getGasStoreList(); |
||||||
pageNum: 1, |
}, |
||||||
pageSize: 10, |
methods: { |
||||||
isNoMoreData: false, |
//查询油品 |
||||||
searname: '', |
getDictionaryByCodeType() { |
||||||
gunnumber: [{ |
let datas = { |
||||||
id: 1, |
codeType: 'GAS_OIL_TYPE' |
||||||
name: '6km内', |
} |
||||||
value: 6 |
getDictionaryByCodeType(datas).then(res => { |
||||||
}, |
if (res.return_code == '000000') { |
||||||
{ |
this.oilList = res.return_data; |
||||||
id: 2, |
} |
||||||
name: '10km内', |
}) |
||||||
value: 10 |
}, |
||||||
}, |
//筛选距离 |
||||||
{ |
changeValue(item) { |
||||||
id: 3, |
this.distance = item.name; |
||||||
name: '15km内', |
this.distanceNum = item.value; |
||||||
value: 15 |
this.pageNum = 1; |
||||||
}, |
this.isNoMoreData = false; |
||||||
{ |
this.refuelList = []; |
||||||
id: 4, |
this.getGasStoreList(); |
||||||
name: '20km内', |
this.$refs.popup.hide(); |
||||||
value: 20 |
}, |
||||||
}, |
|
||||||
{ |
seeloaction(item) { |
||||||
id: 5, |
uni.openLocation({ |
||||||
name: '50km内', |
latitude: Number(item.latitude), //目的地的定位 |
||||||
value: 50 |
longitude: Number(item.longitude), //目的地的定位 |
||||||
}, { |
name: item.store_name, |
||||||
id: 6, |
address: item.address |
||||||
name: '2000km内', |
}) |
||||||
value: 2000 |
}, |
||||||
} |
changeValue1(item) { |
||||||
], |
this.distanceName = item.name; |
||||||
distance: '50km内', |
this.pageNum = 1; |
||||||
distanceNum: '50', |
this.isNoMoreData = false; |
||||||
distanceName: '距离最近', |
this.refuelList = []; |
||||||
detailList: [{ |
this.getGasStoreList(); |
||||||
id: 1, |
this.$refs.popup.hide(); |
||||||
name: '距离最近' |
}, |
||||||
}], |
|
||||||
typeId: '', |
changeValue2(item) { |
||||||
oilList: [{ |
this.onilName = item.codeName; |
||||||
id: 1, |
this.pageNum = 1; |
||||||
name: '汽油', |
this.isNoMoreData = false; |
||||||
nillist: [{ |
this.refuelList = []; |
||||||
id: 1, |
this.getGasStoreList(); |
||||||
name: '90#' |
this.$refs.popup.hide(); |
||||||
}, |
}, |
||||||
{ |
//显示弹出 |
||||||
id: 2, |
showPopup(item) { |
||||||
name: '92#' |
this.typeId = item; |
||||||
}, |
this.$refs.popup.show(); |
||||||
{ |
}, |
||||||
id: 3, |
search(res) { |
||||||
name: '95#' |
uni.showToast({ |
||||||
}, |
title: '搜索:' + res.value, |
||||||
{ |
icon: 'none' |
||||||
id: 4, |
}) |
||||||
name: '98#' |
}, |
||||||
}, |
input(res) { |
||||||
{ |
this.searname = res; |
||||||
id: 5, |
this.pageNum = 1; |
||||||
name: '101#' |
this.isNoMoreData = false; |
||||||
}, |
this.refuelList = []; |
||||||
{ |
this.getGasStoreList(); |
||||||
id: 6, |
}, |
||||||
name: '95(甲醇)#' |
//查询列表 |
||||||
}, |
getGasStoreList() { |
||||||
{ |
uni.showLoading({ |
||||||
id: 7, |
title: '加载中...' |
||||||
name: '92(甲醇)#' |
}) |
||||||
} |
if (this.isNoMoreData) { |
||||||
] |
uni.hideLoading() |
||||||
}, |
return false; |
||||||
{ |
} |
||||||
id: 2, |
let pagenum = this.pageNum; |
||||||
name: '柴油', |
let params = { |
||||||
nillist: [{ |
storeName: this.searname, |
||||||
id: 1, |
distance: this.distanceNum, |
||||||
name: '-40#' |
regionId: app.globalData.cityId, |
||||||
}, |
oilNoName: this.onilName, |
||||||
{ |
latitude: this.latitudeful, |
||||||
id: 2, |
longitude: this.longitudeful, |
||||||
name: '-35#' |
pageNum: pagenum, |
||||||
}, |
pageSize: this.pageSize, |
||||||
{ |
isTyAgent: this.isTyAgent |
||||||
id: 3, |
} |
||||||
name: '-30#' |
getGasStoreList(params).then(res => { |
||||||
}, |
if (res.return_code == '000000') { |
||||||
{ |
uni.hideLoading(); |
||||||
id: 4, |
this.isNoMoreData = res.return_data.list.length == this.pageSize ? false : true; |
||||||
name: '-20#' |
if (res.return_data.total == (this.pageNum * this.pageSize)) { |
||||||
}, |
this.isNoMoreData = true; |
||||||
{ |
} |
||||||
id: 5, |
this.refuelList = this.refuelList.concat(res.return_data.list); |
||||||
name: '-10#' |
this.pageNum = res.return_data.list.length == this.pageSize ? ++pagenum : pagenum; |
||||||
}, |
} else { |
||||||
{ |
this.refuelList = []; |
||||||
id: 6, |
uni.hideLoading() |
||||||
name: '车队0#' |
} |
||||||
}, |
}) |
||||||
{ |
}, |
||||||
id: 7, |
//跳转详情 |
||||||
name: '0#' |
goDetails(items, itemId) { |
||||||
}, |
uni.navigateTo({ |
||||||
{ |
url: '../refuel-details/refuel-details?id=' + items + '&desId=' + itemId |
||||||
id: 8, |
}) |
||||||
name: '柴油#' |
}, |
||||||
}, |
result(val) { |
||||||
] |
console.log('filter_result:' + JSON.stringify(val)); |
||||||
}, |
this.filterResult = JSON.stringify(val, null, 2) |
||||||
{ |
} |
||||||
id: 3, |
} |
||||||
name: '天然气', |
} |
||||||
nillist: [{ |
</script> |
||||||
id: 1, |
|
||||||
name: 'CNG' |
<style lang="scss"> |
||||||
}, |
page { |
||||||
{ |
background-color: #f1f3f5; |
||||||
id: 2, |
} |
||||||
name: 'LNG' |
|
||||||
}, |
.refuel { |
||||||
{ |
padding: 6px 5px; |
||||||
id: 3, |
border-radius: 5px; |
||||||
name: 'LPG' |
background-color: #f6f6f6; |
||||||
} |
color: #666666; |
||||||
] |
margin-left: 10px; |
||||||
} |
margin-top: 15px; |
||||||
], |
display: inline-block; |
||||||
onilName: '92#' |
font-size: 13px; |
||||||
} |
width: 18%; |
||||||
}, |
text-align: center; |
||||||
onLoad() { |
} |
||||||
this.getGasStoreList(); |
|
||||||
}, |
.activeRefuel { |
||||||
onReachBottom() { |
padding: 6px 5px; |
||||||
this.getGasStoreList(); |
border-radius: 5px; |
||||||
}, |
border: 1px solid #089bf5; |
||||||
methods: { |
color: #089bf5; |
||||||
//筛选距离 |
margin-left: 10px; |
||||||
changeValue(item) { |
margin-top: 15px; |
||||||
this.distance = item.name; |
display: inline-block; |
||||||
this.distanceNum = item.value; |
font-size: 13px; |
||||||
this.pageNum = 1; |
width: 18%; |
||||||
this.isNoMoreData = false; |
text-align: center; |
||||||
this.refuelList = []; |
} |
||||||
this.getGasStoreList(); |
|
||||||
this.$refs.popup.hide(); |
.stuMenu { |
||||||
}, |
width: 33.3%; |
||||||
|
height: 30px; |
||||||
seeloaction(item) { |
line-height: 30px; |
||||||
uni.openLocation({ |
font-size: 14px; |
||||||
latitude: Number(item.latitude), //目的地的定位 |
color: #333333; |
||||||
longitude: Number(item.longitude), //目的地的定位 |
|
||||||
name: item.store_name, |
.stuimg { |
||||||
address: item.address |
width: 10px; |
||||||
}) |
vertical-align: middle; |
||||||
}, |
} |
||||||
changeValue1(item) { |
} |
||||||
this.distanceName = item.name; |
|
||||||
this.pageNum = 1; |
.sear { |
||||||
this.isNoMoreData = false; |
margin-left: 10px; |
||||||
this.refuelList = []; |
width: 50px; |
||||||
this.getGasStoreList(); |
} |
||||||
this.$refs.popup.hide(); |
|
||||||
}, |
.searImg { |
||||||
|
margin-left: 55px; |
||||||
changeValue2(item) { |
} |
||||||
this.onilName = item.name; |
|
||||||
this.pageNum = 1; |
.recontleft { |
||||||
this.isNoMoreData = false; |
width: 80px; |
||||||
this.refuelList = []; |
margin-left: 10px; |
||||||
this.getGasStoreList(); |
} |
||||||
this.$refs.popup.hide(); |
|
||||||
}, |
.recontright { |
||||||
//显示弹出 |
margin-left: 95px; |
||||||
showPopup(item) { |
} |
||||||
this.typeId = item; |
|
||||||
this.$refs.popup.show(); |
.text { |
||||||
}, |
margin-top: 50px; |
||||||
search(res) { |
margin-left: 20px; |
||||||
uni.showToast({ |
width: 100%; |
||||||
title: '搜索:' + res.value, |
} |
||||||
icon: 'none' |
|
||||||
}) |
|
||||||
}, |
|
||||||
input(res) { |
|
||||||
this.searname = res; |
|
||||||
this.pageNum = 1; |
|
||||||
this.isNoMoreData = false; |
|
||||||
this.refuelList = []; |
|
||||||
this.getGasStoreList(); |
|
||||||
}, |
|
||||||
//查询列表 |
|
||||||
getGasStoreList() { |
|
||||||
uni.showLoading({ |
|
||||||
title: '加载中...' |
|
||||||
}) |
|
||||||
if (this.isNoMoreData) { |
|
||||||
uni.hideLoading() |
|
||||||
return false; |
|
||||||
} |
|
||||||
let pagenum = this.pageNum; |
|
||||||
let params = { |
|
||||||
storeName: this.searname, |
|
||||||
distance: this.distanceNum, |
|
||||||
regionId: app.globalData.cityId, |
|
||||||
// regionId: '510000', |
|
||||||
oilNoName: this.onilName, |
|
||||||
latitude: app.globalData.latitude, |
|
||||||
longitude: app.globalData.longitude, |
|
||||||
// latitude: '30.83876', |
|
||||||
// longitude: '106.129505', |
|
||||||
pageNum: pagenum, |
|
||||||
pageSize: this.pageSize |
|
||||||
} |
|
||||||
getGasStoreList(params).then(res => { |
|
||||||
if (res.return_code == '000000') { |
|
||||||
uni.hideLoading(); |
|
||||||
this.isNoMoreData = res.return_data.list.length == this.pageSize ? false : true; |
|
||||||
if (res.return_data.total == (this.pageNum * this.pageSize)) { |
|
||||||
this.isNoMoreData = true; |
|
||||||
} |
|
||||||
this.refuelList = this.refuelList.concat(res.return_data.list); |
|
||||||
this.pageNum = res.return_data.list.length == this.pageSize ? ++pagenum : pagenum; |
|
||||||
} else { |
|
||||||
this.refuelList = []; |
|
||||||
uni.hideLoading() |
|
||||||
} |
|
||||||
}) |
|
||||||
}, |
|
||||||
//跳转详情 |
|
||||||
goDetails(items, itemId) { |
|
||||||
uni.navigateTo({ |
|
||||||
url: '../refuel-details/refuel-details?id=' + items + '&desId=' + itemId |
|
||||||
}) |
|
||||||
}, |
|
||||||
result(val) { |
|
||||||
console.log('filter_result:' + JSON.stringify(val)); |
|
||||||
this.filterResult = JSON.stringify(val, null, 2) |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="scss"> |
|
||||||
page { |
|
||||||
background-color: #f1f3f5; |
|
||||||
} |
|
||||||
|
|
||||||
.refuel { |
|
||||||
padding: 6px 5px; |
|
||||||
border-radius: 5px; |
|
||||||
background-color: #f6f6f6; |
|
||||||
color: #666666; |
|
||||||
margin-left: 10px; |
|
||||||
margin-top: 15px; |
|
||||||
display: inline-block; |
|
||||||
font-size: 13px; |
|
||||||
width: 18%; |
|
||||||
text-align: center; |
|
||||||
} |
|
||||||
|
|
||||||
.activeRefuel { |
|
||||||
padding: 6px 5px; |
|
||||||
border-radius: 5px; |
|
||||||
border: 1px solid #089bf5; |
|
||||||
color: #089bf5; |
|
||||||
margin-left: 10px; |
|
||||||
margin-top: 15px; |
|
||||||
display: inline-block; |
|
||||||
font-size: 13px; |
|
||||||
width: 18%; |
|
||||||
text-align: center; |
|
||||||
} |
|
||||||
|
|
||||||
.stuMenu { |
|
||||||
width: 33%; |
|
||||||
height: 30px; |
|
||||||
line-height: 30px; |
|
||||||
font-size: 14px; |
|
||||||
color: #333333; |
|
||||||
|
|
||||||
.stuimg { |
|
||||||
width: 10px; |
|
||||||
vertical-align: middle; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.sear { |
|
||||||
margin-left: 10px; |
|
||||||
width: 50px; |
|
||||||
} |
|
||||||
|
|
||||||
.searImg { |
|
||||||
margin-left: 55px; |
|
||||||
} |
|
||||||
|
|
||||||
.recontleft { |
|
||||||
width: 80px; |
|
||||||
margin-left: 10px; |
|
||||||
} |
|
||||||
|
|
||||||
.recontright { |
|
||||||
margin-left: 95px; |
|
||||||
} |
|
||||||
|
|
||||||
.text { |
|
||||||
margin-top: 50px; |
|
||||||
margin-left: 20px; |
|
||||||
width: 100%; |
|
||||||
} |
|
||||||
</style> |
</style> |
||||||
|
@ -1,246 +1,323 @@ |
|||||||
<template> |
<template> |
||||||
<view> |
<view> |
||||||
<view class="form re" style="top: 100rpx;"> |
<view class="form re" style="top: 100rpx;"> |
||||||
<view class="username paddtop10" v-if="UserCard"> |
|
||||||
<picker mode="selector" style="width: 90%;" :range="UserCard" range-key="cardNo" |
<view class="username paddtop10"> |
||||||
@change="bindUserCard"> |
<picker mode="selector" style="width: 90%;" :range="cardList" range-key="codeName" |
||||||
<view class="date text1">{{cardNoNumber}}</view> |
@change="changeUserCard"> |
||||||
</picker> |
<view class="date text1" style="padding: 0 25rpx;">{{typeName}}</view> |
||||||
<image class="flright" style="width: 15px;height: 15px;" src="../../../static/img/downj.png"></image> |
</picker> |
||||||
</view> |
<image class="flright" style="width: 15px;height: 15px;" src="../../../static/img/downj.png"></image> |
||||||
<view class="username" v-if="!UserCard"> |
</view> |
||||||
<input style="width: 100%;" :disabled="disStute" maxlength="19" placeholder="请输入工会卡号" v-model="cardNoNumber" |
|
||||||
placeholder-style="color: #333333;"/> |
<!-- <view class="username paddtop10" v-if="UserCard && type == 2"> |
||||||
</view> |
<picker mode="selector" style="width: 90%;" :range="UserCard" range-key="cardNo" @change="bindUserCard"> |
||||||
<view class="username" v-if="phoneNumber"> |
<view class="date text1">{{cardNoNumber}}</view> |
||||||
<view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()">{{getCodeText}}</view> |
</picker> |
||||||
<input disabled="true" v-model="phoneNumber" placeholder-style="color: #333333;" /> |
<image class="flright" style="width: 15px;height: 15px;" src="../../../static/img/downj.png"></image> |
||||||
</view> |
</view> --> |
||||||
<view class="code" v-if="phoneNumber"> |
|
||||||
<input placeholder="请输入验证码" v-model="code" placeholder-style="color: #333333;" /> |
|
||||||
</view> |
<view class="username"> |
||||||
<view class="btn mart50" @tap="bindHuiLianTongCard" v-if="phoneNumber">绑定卡号</view> |
<input style="width: 100%;" :disabled="disStute" maxlength="19" placeholder="请输入卡号" |
||||||
<view class="btn mart50" @tap="doCardNonum" v-else>获取预留手机号</view> |
v-model="cardNoNumber" placeholder-style="color: #333333;" /> |
||||||
</view> |
</view> |
||||||
<view class="width90 mart20 height120 backcorfff fotct" style="position: absolute;top: 390px;"> |
<view class="username" v-if="phoneNumber"> |
||||||
<view class="fontlet font20 fcor666 fontwig6 height45l " style="border-bottom: 1px solid #F4F4F4;">【温馨提示】</view> |
<view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()">{{getCodeText}}</view> |
||||||
<view class="fontlet font20 fcor666 fontwig6 height45l paddtop10">1元可抵扣100积分</view> |
<input disabled="true" v-model="phoneNumber" placeholder-style="color: #333333;" /> |
||||||
</view> |
</view> |
||||||
</view> |
<view class="code" v-if="phoneNumber"> |
||||||
</template> |
<input placeholder="请输入验证码" v-model="code" placeholder-style="color: #333333;" /> |
||||||
|
</view> |
||||||
<script> |
<view class="btn mart50" @tap="bindHuiLianTongCard" v-if="phoneNumber">绑定卡号</view> |
||||||
import md5 from "@/common/SDK/md5.min.js"; |
<view class="btn mart50" @tap="doCardNonum" v-else>获取预留手机号</view> |
||||||
|
</view> |
||||||
|
<view class="width90 mart20 height120 backcorfff fotct" style="position: absolute;top: 70%;" v-if="type == 1"> |
||||||
|
<view class="fontlet font20 fcor666 fontwig6 height45l " style="border-bottom: 1px solid #F4F4F4;">【温馨提示】 |
||||||
|
</view> |
||||||
|
<view class="fontlet font20 fcor666 fontwig6 height45l paddtop10">1元可抵扣100积分</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import md5 from "@/common/SDK/md5.min.js"; |
||||||
import { |
import { |
||||||
sendSmsCode, |
sendSmsCodeByHw, |
||||||
getHuiLianTongCardByCardNo, |
getHuiLianTongCardByCardNo, |
||||||
bindHuiLianTongCard, |
getDetailByCardNo, |
||||||
getUserCardList, |
bindHuiLianTongCard, |
||||||
getHuiLianTongCardByPhone |
getUserCardList, |
||||||
} from '../../../Utils/Api.js'; |
getHuiLianTongCardByPhone, |
||||||
let app = getApp(); |
getDictionaryByCodeType |
||||||
export default { |
} from '../../../Utils/Api.js'; |
||||||
data() { |
let app = getApp(); |
||||||
return { |
export default { |
||||||
cardNoNumber: "", |
data() { |
||||||
phoneNumber: "", |
return { |
||||||
code: '', |
cardNoNumber: "", |
||||||
getCodeText: '获取验证码', |
phoneNumber: "", |
||||||
getCodeBtnColor: "#0083f5", |
code: '', |
||||||
getCodeisWaiting: false, |
getCodeText: '获取验证码', |
||||||
disStute: false, |
getCodeBtnColor: "#0083f5", |
||||||
UserCard:'' |
getCodeisWaiting: false, |
||||||
} |
disStute: false, |
||||||
}, |
UserCard: '', |
||||||
onLoad(options) { |
cardList: [], // 卡列表 |
||||||
this.user = app.globalData.userInfo; |
typeName: '', // 卡名称 |
||||||
this.getHuiLianTongCardByPhone(); |
type: '' //区分类型 |
||||||
}, |
} |
||||||
|
}, |
||||||
methods: { |
onLoad(options) { |
||||||
Timer() {}, |
this.user = app.globalData.userInfo; |
||||||
//查询我的卡号列表 |
// this.getHuiLianTongCardByPhone(); |
||||||
getHuiLianTongCardByPhone() { |
this.getDictionaryByCodeType(); |
||||||
let params = { |
}, |
||||||
phone : this.user.phone |
|
||||||
} |
methods: { |
||||||
uni.showLoading(); |
Timer() {}, |
||||||
getHuiLianTongCardByPhone(params).then(res => { |
getDictionaryByCodeType() { |
||||||
uni.hideLoading(); |
let datas = { |
||||||
if (res.return_code == '000000' && res.return_data !='') { |
codeType: 'USER_CARD_TYPE' |
||||||
this.UserCard = res.return_data; |
} |
||||||
this.cardNoNumber = res.return_data[0].cardNo; |
getDictionaryByCodeType(datas).then(res => { |
||||||
return; |
if (res.return_code == '000000') { |
||||||
} |
this.cardList = res.return_data; |
||||||
this.UserCard = ''; |
this.type = res.return_data[0].codeValue; |
||||||
}); |
this.typeName = res.return_data[0].codeName; |
||||||
}, |
} |
||||||
//选择卡号 |
}) |
||||||
bindUserCard(e) { |
}, |
||||||
this.cardNoNumber = this.UserCard[e.target.value].cardNo; |
//查询我的卡号列表 |
||||||
}, |
getHuiLianTongCardByPhone() { |
||||||
getCode() { |
let params = { |
||||||
uni.hideKeyboard() |
phone: this.user.phone |
||||||
if (this.getCodeisWaiting) { |
} |
||||||
return; |
uni.showLoading(); |
||||||
} |
getHuiLianTongCardByPhone(params).then(res => { |
||||||
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { |
uni.hideLoading(); |
||||||
uni.showToast({ |
if (res.return_code == '000000' && res.return_data != '') { |
||||||
title: '请填写正确手机号码', |
this.UserCard = res.return_data; |
||||||
icon: "none" |
this.cardNoNumber = res.return_data[0].cardNo; |
||||||
}); |
return; |
||||||
return false; |
} |
||||||
} |
this.UserCard = ''; |
||||||
uni.showLoading({ |
}); |
||||||
title: '发送中...' |
}, |
||||||
}) |
//选择卡类型 |
||||||
let params = { |
changeUserCard(e) { |
||||||
phone: this.phoneNumber |
this.type = this.cardList[e.target.value].codeValue; |
||||||
} |
this.typeName = this.cardList[e.target.value].codeName; |
||||||
sendSmsCode(params).then(res => { |
this.cardNoNumber = ''; |
||||||
if (res.return_code == '000000') { |
this.phoneNumber = ''; |
||||||
this.getCodeisWaiting = true; |
this.disStute = false; |
||||||
this.getCodeBtnColor = "#999999" |
}, |
||||||
uni.showToast({ |
//选择卡号 |
||||||
title: '验证码已发送', |
bindUserCard(e) { |
||||||
icon: "none" |
this.cardNoNumber = this.UserCard[e.target.value].cardNo; |
||||||
}); |
}, |
||||||
this.setTimer(); |
getCode() { |
||||||
} else { |
uni.hideKeyboard() |
||||||
uni.hideLoading() |
if (this.getCodeisWaiting) { |
||||||
} |
return; |
||||||
}) |
} |
||||||
}, |
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { |
||||||
setTimer() { |
uni.showToast({ |
||||||
let holdTime = 60; |
title: '请填写正确手机号码', |
||||||
this.getCodeText = "重新获取(60)" |
icon: "none" |
||||||
this.Timer = setInterval(() => { |
}); |
||||||
if (holdTime <= 0) { |
return false; |
||||||
this.getCodeisWaiting = false; |
} |
||||||
this.getCodeBtnColor = "#333333"; |
uni.showLoading({ |
||||||
this.getCodeText = "获取验证码" |
title: '发送中...' |
||||||
clearInterval(this.Timer); |
}) |
||||||
return; |
let params = { |
||||||
} |
|
||||||
this.getCodeText = "重新获取(" + holdTime + ")" |
|
||||||
holdTime--; |
|
||||||
|
|
||||||
}, 1000) |
|
||||||
}, |
|
||||||
//获取预留手机号 |
|
||||||
doCardNonum() { |
|
||||||
if (!this.cardNoNumber) { |
|
||||||
uni.showToast({ |
|
||||||
title: '请填写卡号', |
|
||||||
icon: "none" |
|
||||||
}); |
|
||||||
return false; |
|
||||||
} |
|
||||||
if (this.cardNoNumber.length != 19) { |
|
||||||
uni.showToast({ |
|
||||||
title: '请填写正确的19位卡号', |
|
||||||
icon: "none" |
|
||||||
}); |
|
||||||
return false; |
|
||||||
} |
|
||||||
uni.showLoading({ |
|
||||||
title: '查询中...' |
|
||||||
}) |
|
||||||
let params = { |
|
||||||
cardNo: this.cardNoNumber |
|
||||||
} |
|
||||||
getHuiLianTongCardByCardNo(params).then(res => { |
|
||||||
uni.hideLoading() |
|
||||||
if (res.return_code == '000000') { |
|
||||||
this.phoneNumber = res.return_data.userMobile; |
|
||||||
// this.phoneNumber = 15583658692; |
|
||||||
this.disStute = true |
|
||||||
} else { |
|
||||||
uni.showToast({ |
|
||||||
title: res.return_msg, |
|
||||||
icon: "none" |
|
||||||
}); |
|
||||||
} |
|
||||||
}) |
|
||||||
}, |
|
||||||
//绑定卡号 |
|
||||||
bindHuiLianTongCard() { |
|
||||||
uni.hideKeyboard() |
|
||||||
//模板示例部分验证规则 |
|
||||||
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { |
|
||||||
uni.showToast({ |
|
||||||
title: '请填写正确手机号码', |
|
||||||
icon: "none" |
|
||||||
}); |
|
||||||
return false; |
|
||||||
} |
|
||||||
if (!this.code) { |
|
||||||
uni.showToast({ |
|
||||||
title: '请填写验证码', |
|
||||||
icon: "none" |
|
||||||
}); |
|
||||||
return false; |
|
||||||
} |
|
||||||
uni.showLoading({ |
|
||||||
title: '提交中...' |
|
||||||
}) |
|
||||||
let params = { |
|
||||||
cardNo: this.cardNoNumber, |
|
||||||
phone: this.phoneNumber, |
phone: this.phoneNumber, |
||||||
smsCode: this.code |
HWMSG:1 |
||||||
} |
} |
||||||
bindHuiLianTongCard(params).then(res => { |
sendSmsCodeByHw(params).then(res => { |
||||||
uni.hideLoading() |
if (res.return_code == '000000') { |
||||||
if (res.return_code == '000000') { |
this.getCodeisWaiting = true; |
||||||
app.globalData.userInfo = res.return_data |
this.getCodeBtnColor = "#999999" |
||||||
.object |
uni.showToast({ |
||||||
.highUser; |
title: '验证码已发送', |
||||||
app.globalData.token = res.return_data.uniqueCode; |
icon: "none" |
||||||
uni.setStorage({ |
}); |
||||||
key: "user", |
this.setTimer(); |
||||||
data: res.return_data |
} else { |
||||||
.object |
uni.hideLoading() |
||||||
.highUser |
} |
||||||
}) |
}) |
||||||
uni.showToast({ |
}, |
||||||
title: '绑定成功', |
setTimer() { |
||||||
icon: "success", |
let holdTime = 60; |
||||||
duration: 2000, |
this.getCodeText = "重新获取(60)" |
||||||
success() { |
this.Timer = setInterval(() => { |
||||||
setTimeout(() => { |
if (holdTime <= 0) { |
||||||
uni.navigateBack({ |
this.getCodeisWaiting = false; |
||||||
delta: 2 |
this.getCodeBtnColor = "#333333"; |
||||||
}) |
this.getCodeText = "获取验证码" |
||||||
}, 1000) |
clearInterval(this.Timer); |
||||||
} |
return; |
||||||
}); |
} |
||||||
} else { |
this.getCodeText = "重新获取(" + holdTime + ")" |
||||||
uni.showToast({ |
holdTime--; |
||||||
title: res.return_msg, |
|
||||||
icon: "none" |
}, 1000) |
||||||
}); |
}, |
||||||
} |
//获取预留手机号 |
||||||
}) |
doCardNonum() { |
||||||
|
if (!this.cardNoNumber) { |
||||||
}, |
uni.showToast({ |
||||||
} |
title: '请填写卡号', |
||||||
} |
icon: "none" |
||||||
</script> |
}); |
||||||
|
return; |
||||||
<style lang="scss"> |
} |
||||||
@import "../../../static/css/login.scss"; |
if (this.cardNoNumber.length != 19 && this.type == 1) { |
||||||
.wximg { |
uni.showToast({ |
||||||
width: 50px; |
title: '请填写正确的19位工会卡号', |
||||||
height: 50px; |
icon: "none" |
||||||
margin-left: 40%; |
}); |
||||||
margin-top: 250upx; |
return; |
||||||
} |
} |
||||||
.flex1 { |
if (this.cardNoNumber.length != 16 && this.type == 2) { |
||||||
flex: 1; |
uni.showToast({ |
||||||
text-align: right; |
title: '请填写正确的16位油卡号', |
||||||
width: 70%; |
icon: "none" |
||||||
padding-right: 25rpx; |
}); |
||||||
color: #999999; |
return; |
||||||
font-size: 32rpx; |
} |
||||||
} |
|
||||||
|
let params = { |
||||||
|
cardNo: this.cardNoNumber |
||||||
|
} |
||||||
|
if (this.type == 1) { |
||||||
|
this.getHuiLianTongCardByCardNo(params); |
||||||
|
} |
||||||
|
if (this.type == 2) { |
||||||
|
this.getDetailByCardNo(params); |
||||||
|
} |
||||||
|
|
||||||
|
}, |
||||||
|
//查询工会卡 |
||||||
|
getHuiLianTongCardByCardNo(items) { |
||||||
|
uni.showLoading({ |
||||||
|
title: '查询中...' |
||||||
|
}) |
||||||
|
getHuiLianTongCardByCardNo(items).then(res => { |
||||||
|
uni.hideLoading() |
||||||
|
if (res.return_code == '000000') { |
||||||
|
this.phoneNumber = res.return_data.userMobile; |
||||||
|
// this.phoneNumber = 15583658692; |
||||||
|
this.disStute = true |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
//查询油卡 |
||||||
|
getDetailByCardNo(items) { |
||||||
|
uni.showLoading({ |
||||||
|
title: '查询中...' |
||||||
|
}) |
||||||
|
getDetailByCardNo(items).then(res => { |
||||||
|
uni.hideLoading() |
||||||
|
if (res.return_code == '000000') { |
||||||
|
this.phoneNumber = res.return_data.contactPhone; |
||||||
|
// this.phoneNumber = 15583658692; |
||||||
|
this.disStute = true |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
//绑定卡号 |
||||||
|
bindHuiLianTongCard() { |
||||||
|
uni.hideKeyboard() |
||||||
|
//模板示例部分验证规则 |
||||||
|
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { |
||||||
|
uni.showToast({ |
||||||
|
title: '请填写正确手机号码', |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
return false; |
||||||
|
} |
||||||
|
if (!this.code) { |
||||||
|
uni.showToast({ |
||||||
|
title: '请填写验证码', |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
return false; |
||||||
|
} |
||||||
|
uni.showLoading({ |
||||||
|
title: '提交中...' |
||||||
|
}) |
||||||
|
let params = { |
||||||
|
type: this.type, |
||||||
|
cardNo: this.cardNoNumber, |
||||||
|
phone: this.phoneNumber, |
||||||
|
smsCode: this.code |
||||||
|
} |
||||||
|
bindHuiLianTongCard(params).then(res => { |
||||||
|
uni.hideLoading() |
||||||
|
if (res.return_code == '000000') { |
||||||
|
app.globalData.userInfo = res.return_data |
||||||
|
.object |
||||||
|
.highUser; |
||||||
|
app.globalData.token = res.return_data.uniqueCode; |
||||||
|
uni.setStorage({ |
||||||
|
key: "user", |
||||||
|
data: res.return_data |
||||||
|
.object |
||||||
|
.highUser |
||||||
|
}) |
||||||
|
uni.showToast({ |
||||||
|
title: '绑定成功', |
||||||
|
icon: "success", |
||||||
|
duration: 2000, |
||||||
|
success() { |
||||||
|
setTimeout(() => { |
||||||
|
uni.navigateBack({ |
||||||
|
}) |
||||||
|
}, 1000) |
||||||
|
} |
||||||
|
}); |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
} |
||||||
|
}) |
||||||
|
|
||||||
|
}, |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss"> |
||||||
|
@import "../../../static/css/login.scss"; |
||||||
|
|
||||||
|
.wximg { |
||||||
|
width: 50px; |
||||||
|
height: 50px; |
||||||
|
margin-left: 40%; |
||||||
|
margin-top: 250upx; |
||||||
|
} |
||||||
|
|
||||||
|
.flex1 { |
||||||
|
flex: 1; |
||||||
|
text-align: right; |
||||||
|
width: 70%; |
||||||
|
padding-right: 25rpx; |
||||||
|
color: #999999; |
||||||
|
font-size: 32rpx; |
||||||
|
} |
||||||
</style> |
</style> |
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 2.7 KiB |
@ -0,0 +1,407 @@ |
|||||||
|
<template> |
||||||
|
<view> |
||||||
|
<view class="backcorf06 height220 width100 fotct"> |
||||||
|
<image src="../static/unioncard.png" v-if="types == 1" mode="widthFix" style="width: 120rpx;"></image> |
||||||
|
<image src="../static/oilcard.png" v-if="types == 2" mode="widthFix" style="width: 120rpx;"></image> |
||||||
|
<view class="mart10 font18 fontwig6 fcorfff" v-if="types == 1">工会卡</view> |
||||||
|
<view class="mart10 font18 fontwig6 fcorfff" v-if="types == 2">油卡 |
||||||
|
<text class="fcor41c font14 margle" v-if="cardList.status == 1">(正常)</text> |
||||||
|
<text class="fcorred font14 margle" v-if="cardList.status == 2">(禁用)</text> |
||||||
|
</view> |
||||||
|
<view class="mart5 font18 fontwig6 fcorfff fontspec">余额: {{tongCardPrice}}</view> |
||||||
|
<view class="mart5 font18 fontwig6 fcorfff fontspec">{{cardNo}}</view> |
||||||
|
<view class="width40w height30 font16 fontlet fcorfff mart10 fotct border-r" |
||||||
|
style="background-color: #b2b2b2;" @click="delUserCard()">解绑</view> |
||||||
|
</view> |
||||||
|
<!-- <view class="width90 mart20 fcor666 font12"> |
||||||
|
支付限额 |
||||||
|
</view> |
||||||
|
<view class="width90 mart20 fcor666 font14 height25"> |
||||||
|
<view class="width50 font14 fcor333 flleft">单笔限额</view> |
||||||
|
<view class="width50 font14 fcor666 flright fotrt">¥20000</view> |
||||||
|
</view> |
||||||
|
<view class="width90 mart20 fcor666 font14 mart5 height25"> |
||||||
|
<view class="width50 font14 fcor333 flleft">每日限额</view> |
||||||
|
<view class="width50 font14 fcor666 flright fotrt">¥50000</view> |
||||||
|
</view> --> |
||||||
|
|
||||||
|
<view class="leave_cont"> |
||||||
|
<view class="ul"> |
||||||
|
<view class="li" v-if="types == 1"> |
||||||
|
<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> |
||||||
|
<view class="width90 mart30 fcor666 font12"> |
||||||
|
订单列表 |
||||||
|
</view> |
||||||
|
<view class="width90 mart20 alijusstart fcor666 font12"> |
||||||
|
<view class="width40">订单号</view> |
||||||
|
<view class="width10 fotct">类型</view> |
||||||
|
<view class="width20 fotct">金额</view> |
||||||
|
<view class="width30">时间</view> |
||||||
|
</view> |
||||||
|
<view class="width100" v-if="types == 1"> |
||||||
|
<view class="width90 mart5 alijusstart fcor666 font12" v-for="(item,index) in orderList" :key="index" |
||||||
|
@click="popupOrderNo(item.orderNo)"> |
||||||
|
<view class="width40 fcor333 text1">{{item.orderNo}}</view> |
||||||
|
<view class="width10 fotct">支出</view> |
||||||
|
<view class="width20 fotct">¥{{item.tranAmount}}</view> |
||||||
|
<view class="width30">{{item.tranTime}}</view> |
||||||
|
<!-- {{phoneorderdes.createTimed | timeFormat('yyyy-mm-dd')}} {{phoneorderdes.createTimed | timeFormat('hh:mm')}} --> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view class="width100" v-if="types == 2"> |
||||||
|
<view class="width90 mart5 alijusstart fcor666 font12" v-for="(item,index) in orderList" :key="index" |
||||||
|
@click="popupOrderNo(item.sourceOrderNo)"> |
||||||
|
<view class="width40 fcor333 text1">{{item.sourceOrderNo}}</view> |
||||||
|
<view class="width10 fotct fcor41c" v-if="item.type == 1">收入</view> |
||||||
|
<view class="width10 fotct fcoreb5" v-if="item.type == 2">支出</view> |
||||||
|
<view class="width20 fotct fcor41c" v-if="item.type == 1">+{{item.amount}}</view> |
||||||
|
<view class="width20 fotct fcoreb5" v-if="item.type == 2">-{{item.amount}}</view> |
||||||
|
<view class="width30"> |
||||||
|
<view class="width100">{{item.createTime | timeFormat('yyyy-mm-dd')}}</view> |
||||||
|
<view class="width100">{{item.createTime | timeFormat('hh:mm')}}</view> |
||||||
|
|
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import { |
||||||
|
delUserCard, |
||||||
|
getDetailByCardNo, |
||||||
|
getHuiLianTongCardBalance, |
||||||
|
getOilCardRecordList, |
||||||
|
getHuiLianTongCardConsume |
||||||
|
} from '../../Utils/Api.js'; |
||||||
|
export default { |
||||||
|
data() { |
||||||
|
const currentDate = this.getDate({ |
||||||
|
format: true |
||||||
|
}) |
||||||
|
return { |
||||||
|
types: '', //卡类型 |
||||||
|
orderList: [], //消费列表 |
||||||
|
cardNo: '', //卡号 |
||||||
|
tongCardPrice: 0, //账户余额 |
||||||
|
start_date: currentDate, //开始时间 |
||||||
|
end_date: currentDate, //结束时间 |
||||||
|
pageNum: 1, |
||||||
|
pageSize: 10, |
||||||
|
titleValue: 'sinopec_oil_code', //工会卡 |
||||||
|
titleName: '中石化加油券', |
||||||
|
title_list: [{ |
||||||
|
name: '中石化加油券', |
||||||
|
value: 'sinopec_oil_code' |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '其他商品或服务', |
||||||
|
value: 'hisen_consume' |
||||||
|
} |
||||||
|
], |
||||||
|
isNoMoreData: false, |
||||||
|
cardList: '' |
||||||
|
} |
||||||
|
}, |
||||||
|
|
||||||
|
onLoad(options) { |
||||||
|
let that = this; |
||||||
|
that.cardNo = options.cardNo; |
||||||
|
that.types = options.des; |
||||||
|
if (options.des == 1) { |
||||||
|
that.getHuiLianTongCardBalance(); |
||||||
|
that.getHuiLianTongCardConsume(); |
||||||
|
} |
||||||
|
if (options.des == 2) { |
||||||
|
that.getDetailByCardNo(); |
||||||
|
that.getOilCardRecordList(); |
||||||
|
} |
||||||
|
}, |
||||||
|
//上滑刷新 |
||||||
|
onReachBottom() { |
||||||
|
if (this.types == 1) { |
||||||
|
this.getHuiLianTongCardConsume(); |
||||||
|
} |
||||||
|
if (this.types == 2) { |
||||||
|
this.getOilCardRecordList(); |
||||||
|
} |
||||||
|
}, |
||||||
|
computed: { |
||||||
|
startDate() { |
||||||
|
return this.getDate('start'); |
||||||
|
}, |
||||||
|
endDate() { |
||||||
|
return this.getDate('end'); |
||||||
|
} |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
// 获取当前时间 |
||||||
|
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}`; |
||||||
|
}, |
||||||
|
//弹出二维码 |
||||||
|
popupOrderNo(item) { |
||||||
|
uni.showToast({ |
||||||
|
title: item, |
||||||
|
icon: 'none', |
||||||
|
duration: 2000 |
||||||
|
}) |
||||||
|
}, |
||||||
|
// 选择日期 |
||||||
|
bindDateChange: function(e) { |
||||||
|
this.start_date = e.target.value; |
||||||
|
this.pageNum = 1; |
||||||
|
this.isNoMoreData = false; |
||||||
|
this.orderList = []; |
||||||
|
if (this.types == 1) { |
||||||
|
this.getHuiLianTongCardConsume(); |
||||||
|
} |
||||||
|
if (this.types == 2) { |
||||||
|
this.getOilCardRecordList(); |
||||||
|
} |
||||||
|
}, |
||||||
|
bindDateChange2: function(e) { |
||||||
|
this.end_date = e.target.value; |
||||||
|
this.pageNum = 1; |
||||||
|
this.isNoMoreData = false; |
||||||
|
this.orderList = []; |
||||||
|
if (this.types == 1) { |
||||||
|
this.getHuiLianTongCardConsume(); |
||||||
|
} |
||||||
|
if (this.types == 2) { |
||||||
|
this.getOilCardRecordList(); |
||||||
|
} |
||||||
|
}, |
||||||
|
//选择类型 |
||||||
|
bindtitleList(e) { |
||||||
|
this.titleName = this.title_list[e.target.value].name; |
||||||
|
this.titleValue = this.title_list[e.target.value].value; |
||||||
|
this.pageNum = 1; |
||||||
|
this.isNoMoreData = false; |
||||||
|
this.orderList = []; |
||||||
|
this.getHuiLianTongCardConsume(); |
||||||
|
}, |
||||||
|
//解除绑定我的卡号列表 |
||||||
|
delUserCard() { |
||||||
|
let that = this; |
||||||
|
uni.showModal({ |
||||||
|
content: '是否确定解除当前绑定卡号?', |
||||||
|
success: (res) => { |
||||||
|
if (res.confirm) { |
||||||
|
let params = { |
||||||
|
cardNo: that.cardNo |
||||||
|
} |
||||||
|
delUserCard(params).then(res => { |
||||||
|
if (res.return_code == '000000') { |
||||||
|
uni.showToast({ |
||||||
|
title: '解除成功', |
||||||
|
duration: 2000, |
||||||
|
icon: 'success', |
||||||
|
success() { |
||||||
|
setTimeout(() => { |
||||||
|
uni.navigateBack({}) |
||||||
|
}, 1000) |
||||||
|
} |
||||||
|
}) |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
duration: 2000, |
||||||
|
icon: 'none' |
||||||
|
}) |
||||||
|
} |
||||||
|
}); |
||||||
|
} else if (res.cancel) { |
||||||
|
console.log('用户点击取消'); |
||||||
|
} |
||||||
|
} |
||||||
|
}); |
||||||
|
}, |
||||||
|
//查询油卡 |
||||||
|
getDetailByCardNo() { |
||||||
|
uni.showLoading({ |
||||||
|
title: '查询中...' |
||||||
|
}) |
||||||
|
let params = { |
||||||
|
cardNo: this.cardNo |
||||||
|
} |
||||||
|
getDetailByCardNo(params).then(res => { |
||||||
|
uni.hideLoading(); |
||||||
|
if (res.return_code == '000000') { |
||||||
|
this.tongCardPrice = res.return_data.amount; |
||||||
|
this.cardList = res.return_data; |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
//查询详情 |
||||||
|
getHuiLianTongCardBalance() { |
||||||
|
uni.showLoading({ |
||||||
|
title: '查询中...' |
||||||
|
}) |
||||||
|
let params = { |
||||||
|
cardNo: this.cardNo |
||||||
|
} |
||||||
|
getHuiLianTongCardBalance(params).then(res => { |
||||||
|
uni.hideLoading(); |
||||||
|
if (res.return_code == '000000') { |
||||||
|
this.tongCardPrice = res.return_data.balance; |
||||||
|
} else { |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: "none" |
||||||
|
}); |
||||||
|
} |
||||||
|
}); |
||||||
|
}, |
||||||
|
//查询油卡列表 |
||||||
|
getOilCardRecordList() { |
||||||
|
uni.showLoading({ |
||||||
|
title: '加载中...' |
||||||
|
}) |
||||||
|
if (this.isNoMoreData) { |
||||||
|
uni.hideLoading() |
||||||
|
return; |
||||||
|
} |
||||||
|
let pagenum = this.pageNum; |
||||||
|
let Time1 = new Date(this.start_date.split('-').join('/')); |
||||||
|
let timestemp1 = Time1.getTime(); |
||||||
|
let Time2 = new Date(this.end_date.split('-').join('/')); |
||||||
|
let timestemp2 = Time2.getTime() + 86399000; |
||||||
|
let params = { |
||||||
|
pageNum: pagenum, |
||||||
|
createTimeS: timestemp1, |
||||||
|
createTimeE: timestemp2, |
||||||
|
cardNo: this.cardNo, |
||||||
|
pageSize: this.pageSize |
||||||
|
} |
||||||
|
getOilCardRecordList(params).then(res => { |
||||||
|
if (res.return_code == '000000' && res.return_data.list != '') { |
||||||
|
uni.hideLoading(); |
||||||
|
this.isNoMoreData = res.return_data.list.length == this.pageSize ? false : true; |
||||||
|
this.orderList = this.orderList.concat(res.return_data.list); |
||||||
|
if (res.return_data.total == (this.pageNum * this.pageSize)) { |
||||||
|
this.isNoMoreData = true; |
||||||
|
} |
||||||
|
this.pageNum = res.return_data.list.length == this.pageSize ? ++pagenum : pagenum; |
||||||
|
} else { |
||||||
|
this.orderList = []; |
||||||
|
uni.hideLoading() |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
//查询消费记录 |
||||||
|
getHuiLianTongCardConsume() { |
||||||
|
uni.showLoading({ |
||||||
|
title: '加载中...' |
||||||
|
}) |
||||||
|
if (this.isNoMoreData) { |
||||||
|
return false; |
||||||
|
} |
||||||
|
let pagenum = this.pageNum; |
||||||
|
let Time1 = new Date(this.start_date.split('-').join('/')); |
||||||
|
let timestemp1 = Time1.getTime(); |
||||||
|
let Time2 = new Date(this.end_date.split('-').join('/')); |
||||||
|
let timestemp2 = Time2.getTime() + 86399000; |
||||||
|
let params = { |
||||||
|
businessType: this.titleValue, |
||||||
|
sdate: timestemp1, |
||||||
|
edate: timestemp2, |
||||||
|
cardNo: this.cardNo, |
||||||
|
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.orderList = this.orderList.concat(res.return_data.records); |
||||||
|
this.pageNum = res.return_data.records.length == this.pageSize ? ++pagenum : pagenum; |
||||||
|
} else { |
||||||
|
this.orderList = []; |
||||||
|
uni.hideLoading(); |
||||||
|
uni.showToast({ |
||||||
|
title: res.return_msg, |
||||||
|
icon: 'none', |
||||||
|
duration: 2000 |
||||||
|
}) |
||||||
|
this.isNoMoreData = true; |
||||||
|
} |
||||||
|
}); |
||||||
|
}, |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss"> |
||||||
|
.leave_cont { |
||||||
|
background: #FFFFFF; |
||||||
|
} |
||||||
|
|
||||||
|
.leave_cont .ul { |
||||||
|
width: 90%; |
||||||
|
margin-left: 5%; |
||||||
|
} |
||||||
|
|
||||||
|
.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; |
||||||
|
} |
||||||
|
</style> |
@ -0,0 +1,100 @@ |
|||||||
|
<template> |
||||||
|
<view> |
||||||
|
<view class="width100 mart20" v-for="(item,index) in cardList" :key="index"> |
||||||
|
<view class="width90 conts backcolorb9" v-if="item.type == 1"> |
||||||
|
<view class="width90 alijusstart"> |
||||||
|
<image src="../static/unioncard.png" mode="widthFix" style="width: 80rpx;"></image> |
||||||
|
<text class="font18 fontwig6 fcorfff">工会卡</text> |
||||||
|
</view> |
||||||
|
<view class="width90 font18 fontwig6 fcorfff"> |
||||||
|
卡号:<text class="margle">{{item.cardNo}}</text> |
||||||
|
</view> |
||||||
|
<!-- <view class="width90 font18 fontwig6 fcorfff"> |
||||||
|
余额:<text class="margle">122</text> |
||||||
|
</view> --> |
||||||
|
<view class="width90 mart10 alijusstart font14"> |
||||||
|
<view class="width30 height30 backcorfff colorb9 fotct border-r" |
||||||
|
@click="jumpDetails(item.cardNo,item.type)">查看详情</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="width90 conts backcolor32" v-if="item.type == 2"> |
||||||
|
<view class="width90 alijusstart"> |
||||||
|
<image src="../static/oilcard.png" mode="widthFix" style="width: 80rpx;"></image> |
||||||
|
<text class="font18 fontwig6 fcorfff">油卡</text> |
||||||
|
</view> |
||||||
|
<view class="width90 font18 fontwig6 fcorfff"> |
||||||
|
卡号:<text class="margle">{{item.cardNo}}</text> |
||||||
|
</view> |
||||||
|
<!-- <view class="width90 font18 fontwig6 fcorfff"> |
||||||
|
余额:<text class="margle">122</text> |
||||||
|
</view> --> |
||||||
|
<view class="width90 mart10 alijusstart font14"> |
||||||
|
<view class="width30 height30 backcorfff color32 fotct border-r" |
||||||
|
@click="jumpDetails(item.cardNo,item.type)">查看详情</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="width90 height70w border-r mart20 alijusstart backcorfff" @click="jumpBindCard()"> |
||||||
|
<image src="../static/addcards.png" mode="widthFix" class="margle10" style="width: 40rpx;"></image> |
||||||
|
<text class="margle font16 fcor333">添加新卡</text> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import { |
||||||
|
getUserCardList |
||||||
|
} from '../../Utils/Api.js'; |
||||||
|
let app = getApp(); |
||||||
|
export default { |
||||||
|
data() { |
||||||
|
return { |
||||||
|
cardList: [] //绑定卡列表 |
||||||
|
} |
||||||
|
}, |
||||||
|
onLoad() { |
||||||
|
this.user = app.globalData.userInfo; |
||||||
|
}, |
||||||
|
onShow() { |
||||||
|
this.getUserCardList(); |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
//查询卡列表 |
||||||
|
getUserCardList() { |
||||||
|
uni.showLoading({ |
||||||
|
title: '加载中...' |
||||||
|
}) |
||||||
|
getUserCardList().then(res => { |
||||||
|
uni.hideLoading(); |
||||||
|
if (res.return_code == '000000') { |
||||||
|
this.cardList = res.return_data; |
||||||
|
return; |
||||||
|
} |
||||||
|
}); |
||||||
|
}, |
||||||
|
//跳转详情 |
||||||
|
jumpDetails(item, item1) { |
||||||
|
uni.navigateTo({ |
||||||
|
url: '../cardsDetails/cardsDetails?cardNo=' + item + '&des=' + item1 |
||||||
|
}) |
||||||
|
}, |
||||||
|
//跳转绑定卡 |
||||||
|
jumpBindCard() { |
||||||
|
uni.navigateTo({ |
||||||
|
url: '../../pages/user/bindingCard/bindingCard' |
||||||
|
}) |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss"> |
||||||
|
page { |
||||||
|
background-color: #f8f8f8; |
||||||
|
} |
||||||
|
|
||||||
|
.conts { |
||||||
|
border-radius: 12rpx; |
||||||
|
padding: 12px 0; |
||||||
|
} |
||||||
|
</style> |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 36 KiB |
Loading…
Reference in new issue