@@ -46,6 +46,8 @@ | |||
"pages/orderquanma/index", | |||
"pages/passCar/couponList/couponList", | |||
"pages/passCar/couponDetail/couponDetail", | |||
"pages/passCar/showList/showList", | |||
"pages/passCar/showDetail/showDetail", | |||
"pages/managelicenseplate/managelicenseplate", | |||
"pages/payrule/payrule", | |||
"pages/grade/grade", | |||
@@ -180,6 +180,10 @@ var config = { | |||
* 联合登录 | |||
*/ | |||
carInit: "/car/init", | |||
/** | |||
* 停车支付订单列表 | |||
*/ | |||
carPayOrderList: "/car/payOrderList", | |||
/** | |||
* 绑车牌 | |||
*/ | |||
@@ -54,6 +54,7 @@ Page({ | |||
generalPayPath: '', | |||
generalExtraData: {}, | |||
goHomeUrl: "", | |||
supportPay: "" | |||
}, | |||
getMoreList(e) { | |||
let totalNum = this.data.ticketList.length; | |||
@@ -192,6 +193,33 @@ Page({ | |||
} | |||
}, | |||
callPay(data) { | |||
wx.requestPayment({ | |||
timeStamp: data.timeStamp, | |||
nonceStr: data.nonceStr, | |||
package: data.package, | |||
signType: data.signType ? data.signType : "MD5", | |||
paySign: res.data.paySign, | |||
success: res => { | |||
wx.showLoading({ | |||
title: '订单正在处理中...', | |||
}) | |||
this.showList() | |||
}, | |||
fail: res => { | |||
wx.hideLoading(); | |||
wx.showToast({ | |||
title: '支付失败', | |||
icon: 'error' | |||
}) | |||
/** | |||
* 支付失败,需要更新订单的状态 | |||
*/ | |||
}, | |||
complete: res => { } | |||
}); | |||
}, | |||
//停车费用为0 | |||
paySuccess: function () { | |||
wx.showModal({ | |||
@@ -201,6 +229,27 @@ Page({ | |||
}) | |||
}, | |||
// supportPay等于1时 | |||
goToPay() { | |||
Http.post({ | |||
url: '/car/createPayOrder', | |||
data: { | |||
carNumber: this.data.listCardNum, | |||
carFee: String(this.data.stopFees.remainingFee * 100) | |||
} | |||
}).then(res => { | |||
console.log(res, 'res'); | |||
const data = res.data | |||
this.callPay(data) | |||
}).catch(err => { | |||
wx.showToast({ | |||
title: err.message, | |||
icon: 'none', | |||
mask: true | |||
}) | |||
}) | |||
}, | |||
gotomange: function () { | |||
wx.navigateTo({ | |||
url: '/pages/managelicenseplate/managelicenseplate', | |||
@@ -236,6 +285,13 @@ Page({ | |||
url: '/pages/passCar/couponList/couponList', | |||
}) | |||
}, | |||
showList: function () { | |||
wx.navigateTo({ | |||
url: '/pages/passCar/showList/showList', | |||
}) | |||
}, | |||
gotodetail: function (e) { | |||
wx.showModal({ | |||
title: '缴费规则', | |||
@@ -631,6 +687,15 @@ Page({ | |||
if (res.data.token) { | |||
app.globalData.etcpToken = res.data.token; | |||
} | |||
if (res.data.supportPay && res.data.supportPay == 1) { | |||
that.setData({ | |||
supportPay: 1 | |||
}) | |||
} else { | |||
that.setData({ | |||
supportPay: 0 | |||
}) | |||
} | |||
/** | |||
* 获得停车费用 | |||
*/ | |||
@@ -912,7 +977,8 @@ Page({ | |||
}, | |||
timecha: res.data.duration | |||
}); | |||
} else { | |||
} else { // *#06# | |||
// var extraDataStr = { | |||
// params: { | |||
// token: app.globalData.etcpToken, | |||
@@ -934,8 +1000,7 @@ Page({ | |||
generalAppId: res.data.appId, | |||
generalPayPath: res.data.payPath, | |||
generalExtraData: res.data.extraData, | |||
extraDataFlag: JSON.stringify(res.data.extraData), | |||
extraDataFlag: JSON.stringify(res.data.extraData) | |||
}); | |||
console.log(that.data.extraDataFlag, "123456789") | |||
} | |||
@@ -60,28 +60,28 @@ | |||
系统提示: | |||
</view> --> | |||
<!-- 停车费用大于0 etcp --> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==1}}"> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==1&&supportPay!=1}}"> | |||
<navigator bindfail="bindfail" path="{{payPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{etcpAppId}}" extra-data='{{extraData}}' version="{{carMiniVersion}}"> | |||
立即支付 | |||
</navigator> | |||
<view wx:if="{{!canIUse}}" class='buy' data-flag="parkVendor1" bindtap='gotoCarMini'>立即支付</view> | |||
</view> | |||
<!-- 停车费用大于0 tjd --> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==2}}"> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==2&&supportPay!=1}}"> | |||
<navigator bindfail="bindfail" path="{{payPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{tjdAppId}}" extra-data='{{extraData}}' version="{{carMiniVersion}}"> | |||
立即支付 | |||
</navigator> | |||
<view wx:if="{{!canIUse}}" class='buy' data-flag="parkVendor1" bindtap='gotoCarMini'>立即支付</view> | |||
</view> | |||
<!-- 停车费用大于0 bolink --> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==5}}"> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==5&&supportPay!=1}}"> | |||
<navigator bindfail="bindfail" path="{{payPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{bolinkAppId}}" extra-data='{{extraData}}' version="{{carMiniVersion}}"> | |||
立即支付 | |||
</navigator> | |||
<view wx:if="{{!canIUse}}" class='buy' data-flag="parkVendor5" bindtap='gotoCarMini'>立即支付</view> | |||
</view> | |||
<!-- 通用停车 --> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor!=1&&parkVendor!=2&&parkVendor!=3&&parkVendor!=4&&parkVendor!=5&&extraDataFlag!='{}'}}"> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor!=1&&parkVendor!=2&&parkVendor!=3&&parkVendor!=4&&parkVendor!=5&&extraDataFlag!='{}'&&supportPay!=1}}"> | |||
<navigator bindfail="bindfail" path="{{generalPayPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{generalAppId}}" extra-data='{{generalExtraData}}' version="{{carMiniVersion}}"> | |||
立即支付 | |||
</navigator> | |||
@@ -89,7 +89,7 @@ | |||
</view> | |||
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor!=1&&parkVendor!=2&&parkVendor!=3&&parkVendor!=4&&parkVendor!=5&&extraDataFlag=='{}'}}"> | |||
<view class="buy-view" wx:if="{{stopFees.orderId && stopFees.remainingFee>0 && parkVendor!=1 && parkVendor!=2 && parkVendor!=3 && parkVendor!=4 && parkVendor!=5 && extraDataFlag=='{}' && supportPay!=1}}"> | |||
<navigator bindfail="bindfail" path="{{generalPayPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{generalAppId}}" version="{{carMiniVersion}}"> | |||
立即支付 | |||
</navigator> | |||
@@ -97,7 +97,9 @@ | |||
</view> | |||
<!-- 停车费用为0 --> | |||
<view wx:if="{{stopFees.remainingFee==0}}" class='buy' bindtap='paySuccess'>立即支付</view> | |||
<view wx:if="{{supportPay && supportPay==1 && stopFees.remainingFee>0}}" class='buy' bindtap='goToPay'>立即支付</view> | |||
<!-- <view wx:if="{{stopFees.remainingFee==0}}" class='buy' bindtap='paySuccess'>立即支付</view> --> | |||
</view> | |||
<!-- 没有车牌的时候显示 --> | |||
@@ -109,6 +111,14 @@ | |||
<text class='carNumber'>车辆入场后,才能绑车牌</text> | |||
</view> | |||
<view class='bottonBox'> | |||
<view class='textStyle' bindtap='showList'> | |||
<image src='{{tingcheHr}}'></image> | |||
我的支付订单 | |||
<view class='detail'> | |||
<image src='{{jianUrl}}'></image> | |||
</view> | |||
</view> | |||
<view class='textStyle' bindtap='showquan'> | |||
<image src='{{tingcheHr}}'></image> | |||
我的停车券 | |||
@@ -164,7 +164,8 @@ | |||
<text class='btnTxt'>首页</text> | |||
</button> | |||
<button form-type="submit" disabled='{{showbutton}}' hover-class='active' class='buy' wx:if="{{data.type!=11&&data.type!=8&&data.type!=50&&data.type!=51&&priceAndStockObj.salePrice/100!=0&&priceAndStockObj.remainInventory!=0&&endtime!='活动已结束'&&data.activityStatus!=0}}"> | |||
<text class='txt'>{{priceAndStockObj.salePrice/100}}元</text>马上购买</button> | |||
<text class='txt'>{{priceAndStockObj.salePrice/100}}元</text>马上购买 | |||
</button> | |||
<button wx:if="{{data.type==11&&priceAndStockObj.remainInventory!=0}}" bindtap="gohome" data-couponchannelid="{{couponChannelId}}" data-couponid="{{couponId}}" data-shippingtype="2" class="home">配送到家 | |||
</button> | |||
<button wx:if="{{data.type==11&&priceAndStockObj.remainInventory!=0}}" bindtap="gohome" data-couponchannelid="{{couponChannelId}}" data-couponid="{{couponId}}" data-shippingtype="1" class="arrive">到店自提 | |||
@@ -33,7 +33,8 @@ Page({ | |||
showErr: false, | |||
showTime: true, | |||
merchantVoList: [], | |||
mallList: [] | |||
mallList: [], | |||
nickName: '微信用户' | |||
}, | |||
/** | |||
@@ -62,7 +63,7 @@ Page({ | |||
orderGroupId: options.orderGroupId, | |||
orderId: options.orderId, | |||
avatarUrl: options.avatarUrl, | |||
nickName: options.nickName, | |||
nickName: options.nickName || '微信用户', | |||
}) | |||
if (options.orderGroupId) { | |||
this.checkUser(options); | |||
@@ -31,6 +31,7 @@ | |||
</view> | |||
</view> | |||
</view> | |||
<!-- 适用门店 --> | |||
<!-- <store wx:if="{{merchantVoList.length>0}}" merchantVoList="{{merchantVoList}}"></store> --> | |||
<shop wx:if="{{mallList.length>0}}" mallList="{{mallList}}"></shop> | |||
@@ -63,6 +63,10 @@ | |||
<text class='bianhao'>订单编号:</text> | |||
<text>{{order.orderNumber}}</text> | |||
</view> | |||
<view class='dhCode' wx:if="{{order.orderStatus==97}}"> | |||
<text class='bianhao'>支付状态:</text> | |||
<text style="color: red;">订单已取消,即将退款</text> | |||
</view> | |||
<view class='wuliu' wx:if="{{order.type==11}}"> | |||
<text class='left'>物流状态:</text> | |||
<text class="right">{{(order.shippingStatus==10||order.shippingStatus==14)?"待自提":order.shippingStatus==15?"已自提":order.shippingStatus==20?"待发货":order.shippingStatus==24?"待收货":order.shippingStatus==25?"已收货":""}}</text> | |||
@@ -13,12 +13,14 @@ page { | |||
width: 100%; | |||
padding-bottom: 160rpx; | |||
} | |||
.barnumImg{ | |||
.barnumImg { | |||
float: left; | |||
height: 40rpx; | |||
width: 40rpx; | |||
margin: 24rpx 20rpx; | |||
margin: 24rpx 20rpx; | |||
} | |||
.success { | |||
vertical-align: middle; | |||
width: 40rpx; | |||
@@ -130,14 +132,16 @@ page { | |||
font-size: 24rpx; | |||
} | |||
.info view:nth-child(2), .info view:nth-child(3) { | |||
.info view:nth-child(2), | |||
.info view:nth-child(3) { | |||
font-size: 24rpx; | |||
padding-left: 4%; | |||
color: #919191; | |||
letter-spacing: 0; | |||
} | |||
.info view:nth-child(2) text, .info view:nth-child(3) text { | |||
.info view:nth-child(2) text, | |||
.info view:nth-child(3) text { | |||
font-size: 22rpx; | |||
color: #b8b8b8; | |||
} | |||
@@ -209,7 +213,7 @@ page { | |||
.left { | |||
float: left; | |||
font-size: 26rpx; | |||
color: #a6a6a6; | |||
color: #a6a6a6; | |||
} | |||
.copeCode { | |||
@@ -220,7 +224,7 @@ page { | |||
line-height: 30rpx; | |||
border-radius: 8rpx; | |||
color: #df3502; | |||
border:1rpx #a6a6a6 solid; | |||
border: 1rpx #a6a6a6 solid; | |||
font-size: 28rpx; | |||
} | |||
@@ -231,7 +235,7 @@ page { | |||
padding: 10rpx; | |||
height: 30rpx; | |||
line-height: 30rpx; | |||
border:1rpx #a6a6a6 solid; | |||
border: 1rpx #a6a6a6 solid; | |||
border-radius: 8rpx; | |||
color: #3cc51f; | |||
font-size: 28rpx; | |||
@@ -260,7 +264,8 @@ page { | |||
line-height:94rpx; | |||
} */ | |||
.classif > view:nth-child(2), .classif > view:nth-child(3) { | |||
.classif>view:nth-child(2), | |||
.classif>view:nth-child(3) { | |||
position: relative; | |||
height: 94rpx; | |||
line-height: 94rpx; | |||
@@ -271,22 +276,22 @@ page { | |||
/* border-bottom: 1rpx solid #eee; */ | |||
} | |||
.classif > view text:nth-child(2) { | |||
.classif>view text:nth-child(2) { | |||
font-size: 28rpx; | |||
/* color: #3c3c3c; */ | |||
} | |||
.classif > view text:nth-child(1) { | |||
.classif>view text:nth-child(1) { | |||
font-size: 28rpx; | |||
color: #a6a6a6; | |||
float: left; | |||
} | |||
.classif > view:nth-child(1) { | |||
.classif>view:nth-child(1) { | |||
display: block; | |||
} | |||
.classif > view:nth-child(6) text:nth-child(2) { | |||
.classif>view:nth-child(6) text:nth-child(2) { | |||
color: #666; | |||
} | |||
@@ -342,7 +347,8 @@ page { | |||
.drawer_content { | |||
height: 210px; | |||
overflow-y: scroll; /*超出父盒子高度可滚动*/ | |||
overflow-y: scroll; | |||
/*超出父盒子高度可滚动*/ | |||
} | |||
.btn_ok { | |||
@@ -476,7 +482,7 @@ radio { | |||
color: #333; | |||
} | |||
.barcode > canvas { | |||
.barcode>canvas { | |||
width: 500rpx; | |||
height: 100rpx; | |||
} | |||
@@ -489,7 +495,7 @@ radio { | |||
align-items: center; | |||
} | |||
.qrcode > canvas { | |||
.qrcode>canvas { | |||
width: 350rpx; | |||
height: 350rpx; | |||
} | |||
@@ -710,4 +716,4 @@ radio { | |||
color: #919191; | |||
letter-spacing: 0; | |||
margin-left: 20rpx; | |||
} | |||
} |
@@ -32,6 +32,7 @@ | |||
<text class='sucess' wx:if="{{child.orderStatus==1&&child.salePrice==0&&child.type!=50&&child.type!=51}}">免费领取</text> | |||
<text class='sucess' wx:if="{{child.orderStatus==1&&child.salePrice==0&&(child.type==50||child.type==51)}}">积分兑换</text> | |||
<text class='sucess' wx:if="{{child.orderStatus==1&&child.salePrice!=0}}">付款成功</text> | |||
<text class='waiting' wx:if="{{child.orderStatus==97}}">订单已取消,即将退款</text> | |||
</view> | |||
<view class="itemImg"> | |||
@@ -93,7 +94,7 @@ | |||
<text>再忙,也要记得买点什么犒赏自己~</text> | |||
</view> | |||
</view> | |||
<view class="loading" wx:if="{{loading}}"> | |||
<image src="{{loadingUrl}}" mode="widthFix"></image>{{content}} | |||
</view> |
@@ -4,6 +4,7 @@ | |||
background: #F4F5F9; | |||
margin-top: 20rpx; | |||
} | |||
.tabs { | |||
position: fixed; | |||
width: 100% !important; | |||
@@ -21,10 +22,12 @@ | |||
width: 30% !important; | |||
display: inline-block; | |||
} | |||
.section{ | |||
.section { | |||
background: #FFFFFF; | |||
overflow: hidden; | |||
} | |||
.detail_msg { | |||
position: relative; | |||
width: 92%; | |||
@@ -35,7 +38,8 @@ | |||
padding-top: 20rpx; | |||
/* border-bottom: 1rpx solid #eee; */ | |||
} | |||
.sendImg{ | |||
.sendImg { | |||
position: absolute; | |||
width: 100rpx; | |||
top: 100rpx; | |||
@@ -56,13 +60,15 @@ | |||
height: 120rpx; | |||
border-radius: 20rpx; | |||
} | |||
.detail_top{ | |||
.detail_top { | |||
width: 100%; | |||
height: 40rpx; | |||
line-height: 40rpx; | |||
font-size: 30rpx; | |||
padding-top: 30rpx; | |||
} | |||
.detail_top view:nth-child(1) { | |||
display: flex; | |||
justify-content: space-between; | |||
@@ -96,20 +102,21 @@ | |||
white-space: nowrap; | |||
text-overflow: ellipsis; | |||
} | |||
.discount{ | |||
.discount { | |||
position: absolute; | |||
width: 100rpx; | |||
top:86rpx; | |||
right:2rpx; | |||
top: 86rpx; | |||
right: 2rpx; | |||
} | |||
.detail_top .sucess { | |||
display: inline-block; | |||
width: 123rpx !important; | |||
/* overflow: hidden; */ | |||
font-family:PingFangSC-Regular; | |||
font-family: PingFangSC-Regular; | |||
font-size: 28rpx; | |||
font-weight:400; | |||
font-weight: 400; | |||
color: #2C8DFF; | |||
letter-spacing: 0; | |||
text-align: right; | |||
@@ -118,13 +125,26 @@ | |||
.wait { | |||
display: inline-block; | |||
width: 123rpx !important; | |||
overflow: visible!important; | |||
width: 130rpx !important; | |||
overflow: visible !important; | |||
font-size: 28rpx; | |||
color: #FD832D; | |||
letter-spacing: 0; | |||
text-align: right; | |||
line-height: 28rpx!important; | |||
line-height: 28rpx !important; | |||
} | |||
.waiting { | |||
position: relative; | |||
top: 20rpx; | |||
display: inline-block; | |||
width: 280rpx !important; | |||
overflow: visible !important; | |||
font-size: 28rpx; | |||
color: red; | |||
letter-spacing: 0; | |||
text-align: right; | |||
line-height: 28rpx !important; | |||
} | |||
.close { | |||
@@ -165,9 +185,11 @@ | |||
.info view:nth-child(3) { | |||
margin-top: 16rpx; | |||
} | |||
.info view:nth-child(2) { | |||
margin-top: 16rpx; | |||
} | |||
.payment { | |||
position: relative; | |||
width: 92%; | |||
@@ -213,9 +235,10 @@ | |||
float: right; | |||
font-size: 26rpx; | |||
border-radius: 20rpx; | |||
background:linear-gradient(127deg,rgba(252,177,74,1) 0%,rgba(254,70,20,1) 100%); | |||
background: linear-gradient(127deg, rgba(252, 177, 74, 1) 0%, rgba(254, 70, 20, 1) 100%); | |||
} | |||
.btnZf{ | |||
.btnZf { | |||
position: absolute; | |||
bottom: 0; | |||
right: 0; | |||
@@ -227,9 +250,10 @@ | |||
float: right; | |||
font-size: 26rpx; | |||
border-radius: 20rpx; | |||
background:linear-gradient(130deg,rgba(50,177,252,1) 0%,rgba(47,108,255,1) 100%); | |||
background: linear-gradient(130deg, rgba(50, 177, 252, 1) 0%, rgba(47, 108, 255, 1) 100%); | |||
} | |||
.btnGm{ | |||
.btnGm { | |||
position: absolute; | |||
bottom: 0; | |||
right: 0; | |||
@@ -248,10 +272,12 @@ | |||
font-size: 26rpx; | |||
color: #FFFFFF; | |||
} | |||
.txGm{ | |||
font-size: 26rpx!important; | |||
color: #2C8DFF!important; | |||
.txGm { | |||
font-size: 26rpx !important; | |||
color: #2C8DFF !important; | |||
} | |||
.dingdan { | |||
margin-top: 33rpx; | |||
} | |||
@@ -293,20 +319,25 @@ | |||
vertical-align: middle; | |||
margin-right: 10rpx; | |||
} | |||
button::after{ border: none; } | |||
.goback{ | |||
button::after { | |||
border: none; | |||
} | |||
.goback { | |||
position: fixed; | |||
right: 50rpx; | |||
bottom: 60rpx; | |||
width:100rpx!important; | |||
height:100rpx; | |||
width: 100rpx !important; | |||
height: 100rpx; | |||
z-index: 100; | |||
background:rgba(255,255,255,1); | |||
background: rgba(255, 255, 255, 1); | |||
line-height: 95rpx; | |||
border:1rpx solid rgba(227,227,227,1); | |||
border-radius:50%; | |||
border: 1rpx solid rgba(227, 227, 227, 1); | |||
border-radius: 50%; | |||
} | |||
.goback image{ | |||
.goback image { | |||
position: absolute; | |||
width: 60rpx; | |||
left: 0; | |||
@@ -315,28 +346,32 @@ button::after{ border: none; } | |||
bottom: 0; | |||
margin: auto; | |||
} | |||
.itemBox{ | |||
.itemBox { | |||
overflow: hidden; | |||
margin: 0 60rpx 20rpx 60rpx; | |||
padding-bottom: 20rpx; | |||
position: relative; | |||
} | |||
.payStatus{ | |||
.payStatus { | |||
text-align: right; | |||
} | |||
.payStatus .sucess { | |||
display: inline-block; | |||
width: 123rpx !important; | |||
/* overflow: hidden; */ | |||
font-family:PingFangSC-Regular; | |||
font-family: PingFangSC-Regular; | |||
font-size: 28rpx; | |||
font-weight:400; | |||
font-weight: 400; | |||
color: #2C8DFF; | |||
letter-spacing: 0; | |||
text-align: right; | |||
line-height: 26px; | |||
} | |||
.itemImg{ | |||
.itemImg { | |||
float: left; | |||
display: block; | |||
width: 120rpx; | |||
@@ -344,31 +379,36 @@ button::after{ border: none; } | |||
border: 1px solid #f8f8f8; | |||
border-radius: 20rpx; | |||
} | |||
.itemImg image { | |||
display: block; | |||
width: 120rpx; | |||
height: 120rpx; | |||
border-radius: 20rpx; | |||
} | |||
.itemContent{ | |||
.itemContent { | |||
float: left; | |||
width: 70%; | |||
} | |||
.face{ | |||
.face { | |||
font-size: 24rpx; | |||
color: #999; | |||
letter-spacing: 0; | |||
padding-left: 4%; | |||
line-height: 33rpx; | |||
} | |||
.face text{ | |||
.face text { | |||
font-size: 24rpx; | |||
color: #333; | |||
letter-spacing: 0; | |||
line-height: 33rpx; | |||
} | |||
.date{ | |||
.date { | |||
/* margin-top: 16rpx; */ | |||
font-size: 24rpx; | |||
color: #999; | |||
@@ -377,7 +417,8 @@ button::after{ border: none; } | |||
line-height: 26rpx; | |||
} | |||
.yunfe{ | |||
.yunfe { | |||
font-size: 24rpx; | |||
color: #999; | |||
letter-spacing: 0; | |||
@@ -385,7 +426,8 @@ button::after{ border: none; } | |||
height: 33rpx; | |||
line-height: 33rpx; | |||
} | |||
.yunfeK{ | |||
.yunfeK { | |||
font-size: 24rpx; | |||
color: #999; | |||
letter-spacing: 0; | |||
@@ -0,0 +1,125 @@ | |||
const navigationBarHeight = (getApp().statusBarHeight + 44) + 'px' | |||
let config = require("../../../config/config.js"); | |||
let Http = require("../../../utils/HttpBasics"); | |||
const util = require("../../../utils/util"); | |||
let app = getApp(); | |||
const imgurl = require("../../../utils/imgurl"); | |||
Page({ | |||
/** | |||
* 页面的初始数据 | |||
*/ | |||
data: { | |||
navigationBarHeight, | |||
detail: {} | |||
}, | |||
/** | |||
* 生命周期函数--监听页面加载 | |||
*/ | |||
onLoad(options) { | |||
const detail = JSON.parse(options.item) | |||
detail.payTime = this.timestampToTime(detail.payTime) | |||
detail.createTime = this.timestampToTime(detail.createTime) | |||
detail.updateTime = this.timestampToTime(detail.updateTime) | |||
this.setData({ | |||
detail: detail | |||
}) | |||
}, | |||
/** | |||
* @description 根据时间戳获取时间 | |||
* @param {*} timestamp 必传,number类型,时间戳数据(10位及以下,10位至13位) | |||
* @param {*} format 选传,string类型,提供以下时间格式:YYYY-MM-DD hh:mm:ss、YYYY/MM/DD hh:mm:ss、YYYY.MM.DD hh:mm:ss、YYYY MM DD hh:mm:ss、YYYY年MM月DD日 hh:mm:ss、YYYY-MM-DD、YYYY/MM/DD、YYYY.MM.DD、YYYY MM DD、YYYY年MM月DD日;若不传,则默认为:YYYY-MM-DD | |||
* @returns 根据要求的时间格式 | |||
* @version V 1.0, Created by YWQ, 2022.10.20 | |||
*/ | |||
timestampToTime(timestamp, format) { | |||
//时间戳为10位需*1000,时间戳为13位不需乘1000 | |||
const length = timestamp.length | |||
if (length <= 10) { | |||
var date = new Date(timestamp * 1000) | |||
} else { | |||
var date = new Date(timestamp) | |||
} | |||
let Y = String(date.getFullYear()) | |||
let M = String(date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) | |||
let D = String(date.getDate() + 1 < 10 ? '0' + (date.getDate()) : date.getDate()) | |||
let h = String(date.getHours() + 1 < 10 ? '0' + (date.getHours()) : date.getHours()) | |||
let m = String(date.getMinutes() + 1 < 10 ? '0' + (date.getMinutes()) : date.getMinutes()) | |||
let s = String(date.getSeconds() + 1 < 10 ? '0' + (date.getSeconds()) : date.getSeconds()) | |||
// return Y + M + D + h + m + s | |||
if (format == "YYYY-MM-DD hh:mm:ss") { | |||
return Y + "-" + M + "-" + D + " " + h + ":" + m + ":" + s | |||
} else if (format == "YYYY/MM/DD hh:mm:ss") { | |||
return Y + "/" + M + "/" + D + " " + h + ":" + m + ":" + s | |||
} else if (format == "YYYY.MM.DD hh:mm:ss") { | |||
return Y + "." + M + "." + D + " " + h + ":" + m + ":" + s | |||
} else if (format == "YYYY MM DD hh:mm:ss") { | |||
return Y + " " + M + " " + D + " " + h + ":" + m + ":" + s | |||
} else if (format == "YYYY年MM月DD日 hh:mm:ss") { | |||
return Y + "年" + M + "月" + D + "日" + " " + h + ":" + m + ":" + s | |||
} else if (format == "YYYY-MM-DD") { | |||
return Y + "-" + M + "-" + D | |||
} else if (format == "YYYY/MM/DD") { | |||
return Y + "/" + M + "/" + D | |||
} else if (format == "YYYY.MM.DD") { | |||
return Y + "." + M + "." + D | |||
} else if (format == "YYYY MM DD") { | |||
return Y + " " + M + " " + D | |||
} else if (format == "YYYY年MM月DD日") { | |||
return Y + "年" + M + "月" + D + "日" | |||
} else { | |||
return Y + "-" + M + "-" + D | |||
} | |||
}, | |||
/** | |||
* 生命周期函数--监听页面初次渲染完成 | |||
*/ | |||
onReady() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面显示 | |||
*/ | |||
onShow() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面隐藏 | |||
*/ | |||
onHide() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面卸载 | |||
*/ | |||
onUnload() { | |||
}, | |||
/** | |||
* 页面相关事件处理函数--监听用户下拉动作 | |||
*/ | |||
onPullDownRefresh() { | |||
}, | |||
/** | |||
* 页面上拉触底事件的处理函数 | |||
*/ | |||
onReachBottom() { | |||
}, | |||
/** | |||
* 用户点击右上角分享 | |||
*/ | |||
onShareAppMessage() { | |||
} | |||
}) |
@@ -0,0 +1,9 @@ | |||
{ | |||
"usingComponents": { | |||
"i-tab": "../../../dist/tab/index", | |||
"i-tabs": "../../../dist/tabs/index", | |||
"navbar": "../../../components/navbar/navbar" | |||
}, | |||
"navigationBarTitleText": "支付订单详情", | |||
"navigationBarBackgroundColor": "#F4F5F9" | |||
} |
@@ -0,0 +1,43 @@ | |||
<navbar back home text="支付订单详情"></navbar> | |||
<view style="height:{{navigationBarHeight}} "></view> | |||
<view class="detail"> | |||
<view> | |||
车牌号:{{detail.carNumber}} | |||
</view> | |||
<view> | |||
支付金额:{{detail.payAmount}} | |||
</view> | |||
<view> | |||
支付时间:{{detail.payTime}} | |||
</view> | |||
<view> | |||
创建时间:{{detail.createTime}} | |||
</view> | |||
<view> | |||
更新时间:{{detail.updateTime}} | |||
</view> | |||
<view> | |||
微信生成的订单号:{{detail.transactionId}} | |||
</view> | |||
<view> | |||
车场订单号:{{detail.parkOrderNo}} | |||
</view> | |||
<view> | |||
商户收款账户:{{detail.merchantAccount}} | |||
</view> | |||
<view> | |||
商户编号:{{detail.merchantId}} | |||
</view> | |||
<view> | |||
商户名称:{{detail.merchantName}} | |||
</view> | |||
<view> | |||
是否已通知车场:{{detail.parkNotify == 1 ? '是' : '否'}} | |||
</view> | |||
<view> | |||
通知失败原因:{{detail.notifyFailReason}} | |||
</view> | |||
<view> | |||
通知重试次数:{{detail.notifyCount}} | |||
</view> | |||
</view> |
@@ -0,0 +1,8 @@ | |||
/* pages/passCar/showDetail/showDetail.wxss */ | |||
.detail { | |||
padding: 40rpx; | |||
} | |||
.detail view { | |||
margin-bottom: 50rpx; | |||
} |
@@ -0,0 +1,119 @@ | |||
const navigationBarHeight = (getApp().statusBarHeight + 44) + 'px' | |||
let config = require("../../../config/config.js"); | |||
let Http = require("../../../utils/HttpBasics"); | |||
const util = require("../../../utils/util"); | |||
let app = getApp(); | |||
const imgurl = require("../../../utils/imgurl"); | |||
Page({ | |||
/** | |||
* 页面的初始数据 | |||
*/ | |||
data: { | |||
navigationBarHeight, | |||
carPayOrderList: [], | |||
pageNum: '1' | |||
}, | |||
getList(pageNum) { | |||
const that = this | |||
Http.get({ | |||
url: config.api.carPayOrderList + `?pageNum=${pageNum}&pageSize=10`, | |||
}).then(res => { | |||
console.log(res, 'res'); | |||
if (pageNum == 1) { | |||
const tempArr = res.data.list | |||
tempArr.forEach(item => { | |||
item.payAmount = this.getPayNumber(item.payAmount) | |||
}) | |||
that.setData({ | |||
carPayOrderList: res.data.list | |||
}) | |||
} else { | |||
const tempArr = that.data.carPayOrderList | |||
res.data.list.forEach(item => { | |||
item.payAmount = this.getPayNumber(item.payAmount) | |||
tempArr.push(item) | |||
}) | |||
that.setData({ | |||
carPayOrderList: tempArr | |||
}) | |||
} | |||
}).catch(err => { | |||
}) | |||
}, | |||
getPayNumber(num) { | |||
return (num / 100).toFixed(2) + "元" | |||
}, | |||
goDetial(e) { | |||
const item = JSON.stringify(e.currentTarget.dataset.item) | |||
wx.navigateTo({ | |||
url: `/pages/passCar/showDetail/showDetail?item=${item}`, | |||
}) | |||
}, | |||
/** | |||
* 生命周期函数--监听页面加载 | |||
*/ | |||
onLoad(options) { | |||
this.getList(this.data.pageNum) | |||
}, | |||
/** | |||
* 生命周期函数--监听页面初次渲染完成 | |||
*/ | |||
onReady() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面显示 | |||
*/ | |||
onShow() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面隐藏 | |||
*/ | |||
onHide() { | |||
}, | |||
/** | |||
* 生命周期函数--监听页面卸载 | |||
*/ | |||
onUnload() { | |||
}, | |||
/** | |||
* 页面相关事件处理函数--监听用户下拉动作 | |||
*/ | |||
onPullDownRefresh() { | |||
}, | |||
/** | |||
* 页面上拉触底事件的处理函数 | |||
*/ | |||
onReachBottom() { | |||
const that = this; | |||
that.data.pageNum++; | |||
that.setData({ | |||
pageNum: that.data.pageNum | |||
}); | |||
that.getList(that.data.pageNum); | |||
}, | |||
/** | |||
* 用户点击右上角分享 | |||
*/ | |||
onShareAppMessage() { | |||
} | |||
}) |
@@ -0,0 +1,9 @@ | |||
{ | |||
"usingComponents": { | |||
"i-tab": "../../../dist/tab/index", | |||
"i-tabs": "../../../dist/tabs/index", | |||
"navbar": "../../../components/navbar/navbar" | |||
}, | |||
"navigationBarTitleText": "支付订单", | |||
"navigationBarBackgroundColor": "#F4F5F9" | |||
} |
@@ -0,0 +1,17 @@ | |||
<navbar back home text="支付订单"></navbar> | |||
<view style="height:{{navigationBarHeight}} "></view> | |||
<view class="list"> | |||
<view class="item" wx:for="{{carPayOrderList}}" wx:key="index"> | |||
<view data-item="{{item}}" bindtap="goDetial"> | |||
<view class="child">车牌号:{{item.carNumber}}</view> | |||
<view class="child">支付金额:{{item.payAmount}}</view> | |||
<view>支付时间:{{item.payTime}}</view> | |||
<view class="detail"> | |||
查看详情 | |||
</view> | |||
<view class="notice" wx:if="{{item.parkNotify!=1}}"> | |||
未通知停车场 | |||
</view> | |||
</view> | |||
</view> | |||
</view> |
@@ -0,0 +1,36 @@ | |||
/* pages/passCar/showList.wxss */ | |||
page { | |||
background-color: #dfdfdf; | |||
} | |||
.list { | |||
padding: 40rpx; | |||
} | |||
.list .item { | |||
position: relative; | |||
background-color: #fff; | |||
margin-bottom: 40rpx; | |||
border-radius: 20rpx; | |||
padding: 20rpx; | |||
} | |||
.list .item .child { | |||
margin-bottom: 20rpx; | |||
} | |||
.list .item .detail { | |||
position: absolute; | |||
right: 40rpx; | |||
top: 50%; | |||
transform: translateY(-50%); | |||
} | |||
.list .item .notice { | |||
position: absolute; | |||
right: 40rpx; | |||
top: 25rpx; | |||
transform: translateY(-50%); | |||
color: #ff0000; | |||
} |
@@ -38,13 +38,16 @@ | |||
<text class='timess' wx:if='{{limitCondition==1}}'>仅限新用户活动</text> | |||
<text class='timess' wx:if='{{limitCondition==2&&(minLimit||minLimit==0)&&maxLimit}}'>({{minLimit}}-{{maxLimit}}成长值)</text> | |||
<text class='timess' wx:if='{{limitCondition==2&&minLimit&&!maxLimit}}'>(大于{{minLimit}}成长值)</text> | |||
<view class='right-text'>剩余{{data.remainInventory}}张</view> | |||
<view class='right-text'> | |||
<text style="margin-right: 25rpx;" wx:if="{{data.selledCount||data.selledCount==0}}">已售{{data.selledCount}}张</text> | |||
<text>剩余{{data.remainInventory}}张</text> | |||
</view> | |||
</view> | |||
<view class='status' wx:if="{{spellData!=null}}"> | |||
<view class='status01 st'> | |||
<image src='{{spellData.avatarUrl}}'></image> | |||
</view> | |||
<view class='status02 st'>{{spellData.nickName}}的团还差<view class='r-p-num'>1人</view> | |||
<view class='status02 st'>{{spellData.nickName||'微信用户'}}的团还差<view class='r-p-num'>1人</view> | |||
</view> | |||
<view class='status03 st'> | |||
<view class='mm'>{{day}}</view><text class='day-box' style='font-size:32rpx;'> 天 </text> | |||
@@ -7,5 +7,5 @@ | |||
"preloadBackgroundData": false, | |||
"useIsolateContext": true | |||
}, | |||
"libVersion": "2.28.1" | |||
"libVersion": "2.29.1" | |||
} |