@@ -55,8 +55,12 @@ Page({ | |||||
}, | }, | ||||
onLoad: function () { | |||||
onLoad: function (options) { | |||||
console.log(options); | |||||
let that = this; | |||||
that.setData({ | |||||
flags:options.flags | |||||
}) | |||||
}, | }, | ||||
jumpTo: function () { | jumpTo: function () { | ||||
// 返回 | // 返回 | ||||
@@ -106,8 +110,6 @@ Page({ | |||||
} | } | ||||
}, | }, | ||||
chooseNum: function (e) { | chooseNum: function (e) { | ||||
//console.log(this.data.choose) | |||||
// console.log(e.target.dataset.msg); | |||||
if (e.target.dataset.msg == 'I') { | if (e.target.dataset.msg == 'I') { | ||||
return | return | ||||
} | } | ||||
@@ -234,10 +236,8 @@ Page({ | |||||
specShow: false | specShow: false | ||||
}) | }) | ||||
} | } | ||||
break; | break; | ||||
} | } | ||||
} else if (e.target.dataset.msg == 'DEL') { | } else if (e.target.dataset.msg == 'DEL') { | ||||
switch (this.data.choose) { | switch (this.data.choose) { | ||||
case "carData.title": | case "carData.title": | ||||
@@ -333,7 +333,6 @@ Page({ | |||||
this.buttonStatus(); | this.buttonStatus(); | ||||
}, | }, | ||||
submit: function () { | submit: function () { | ||||
if (this.data.title != "" && this.data.numFir != "" && this.data.numSco != "" && this.data.numThr != "" && this.data.numFor != "" && this.data.numFive != "" && this.data.numSix != "") { | if (this.data.title != "" && this.data.numFir != "" && this.data.numSco != "" && this.data.numThr != "" && this.data.numFor != "" && this.data.numFive != "" && this.data.numSix != "") { | ||||
var carNumber = '' | var carNumber = '' | ||||
@@ -345,11 +344,21 @@ Page({ | |||||
prevPage.setData({ | prevPage.setData({ | ||||
addCar: carNumber | addCar: carNumber | ||||
}) | }) | ||||
wx.navigateBack({ | |||||
url: '../passCar/passCar?addcar=' + carNumber, | |||||
}) | |||||
console.log(carNumber); | |||||
console.log("carNumber"); | |||||
if (this.data.flags =='managepalte'){ | |||||
wx.navigateBack({ | |||||
url: '/pages/managelicenseplate/managelicenseplate?addcar=' + carNumber, | |||||
}) | |||||
} | |||||
else{ | |||||
wx.navigateBack({ | |||||
url: '/pages/passCar/passCar?addcar=' + carNumber, | |||||
}) | |||||
} | |||||
} | } | ||||
}, | }, | ||||
buttonStatus: function () { | buttonStatus: function () { | ||||
if (this.data.title != "" && this.data.numFir != "" && this.data.numSco != "" && this.data.numThr != "" && this.data.numFor != "" && this.data.numFive != "" && this.data.numSix != "") { | if (this.data.title != "" && this.data.numFir != "" && this.data.numSco != "" && this.data.numThr != "" && this.data.numFor != "" && this.data.numFive != "" && this.data.numSix != "") { | ||||
this.setData({ | this.setData({ | ||||
@@ -60,6 +60,6 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<button class="{{buttonStatus?'addpark-button-submit':'addpark-button-gray'}}" bindtap='submit'> 完成绑定 </button> | |||||
<button class="{{buttonStatus?'addpark-button-submit':'addpark-button-gray'}}" bindtap='submit' hover-class='active'> 完成绑定 </button> | |||||
<label class="addpark-back" bindtap="jumpTo">返回</label> | <label class="addpark-back" bindtap="jumpTo">返回</label> | ||||
@@ -58,7 +58,8 @@ | |||||
border: 2rpx solid #12c67a; | border: 2rpx solid #12c67a; | ||||
border-radius: 10rpx; | border-radius: 10rpx; | ||||
} | } | ||||
.newsource{ | |||||
.newsource { | |||||
font-size: 16rpx; | font-size: 16rpx; | ||||
position: absolute; | position: absolute; | ||||
top: 100rpx; | top: 100rpx; | ||||
@@ -71,8 +72,8 @@ | |||||
border-radius: 14rpx; | border-radius: 14rpx; | ||||
text-align: center; | text-align: center; | ||||
line-height: 30rpx; | line-height: 30rpx; | ||||
} | } | ||||
.addpark-choose { | .addpark-choose { | ||||
width: 672rpx; | width: 672rpx; | ||||
margin: 34rpx auto; | margin: 34rpx auto; | ||||
@@ -96,17 +97,19 @@ | |||||
border: 1 px solid #f8f8f8; | border: 1 px solid #f8f8f8; | ||||
border-radius: 8rpx; | border-radius: 8rpx; | ||||
margin: 5rpx; | margin: 5rpx; | ||||
} | } | ||||
.addpark-choose-font p{ | |||||
.addpark-choose-font p { | |||||
display: block; | display: block; | ||||
} | } | ||||
.addpark-choose-font p image{ | |||||
width:5vmin; | |||||
height:3.5vmin; | |||||
.addpark-choose-font p image { | |||||
width: 5vmin; | |||||
height: 3.5vmin; | |||||
margin-top: -0.8vmin; | margin-top: -0.8vmin; | ||||
vertical-align: middle; | |||||
vertical-align: middle; | |||||
} | } | ||||
.addpark-choose-num { | .addpark-choose-num { | ||||
width: 672rpx; | width: 672rpx; | ||||
margin: 34rpx auto; | margin: 34rpx auto; | ||||
@@ -117,41 +120,43 @@ | |||||
} | } | ||||
.choose { | .choose { | ||||
color:#58abfa; | |||||
color: #58abfa; | |||||
} | } | ||||
.choose-title{ | |||||
border:6rpx solid #ffd255; | |||||
.choose-title { | |||||
border: 6rpx solid #ffd255; | |||||
} | } | ||||
.addpark-button-submit{ | |||||
width: 710rpx; | |||||
height: 80rpx; | |||||
.addpark-button-submit { | |||||
width: 670rpx; | |||||
height: 94rpx; | |||||
margin: 0 auto; | margin: 0 auto; | ||||
background: #60b4fc; | background: #60b4fc; | ||||
color: #ffffff; | |||||
border-radius: 10rpx; | |||||
line-height: 80rpx; | |||||
color: #fff; | |||||
border-radius: 60rpx; | |||||
line-height: 94rpx; | |||||
} | } | ||||
.addpark-button-gray{ | |||||
.active{ | |||||
opacity: .6; | |||||
} | |||||
.addpark-button-gray { | |||||
width: 670rpx; | width: 670rpx; | ||||
height: 94rpx; | height: 94rpx; | ||||
margin: 0 auto; | margin: 0 auto; | ||||
background: #cbcccd; | background: #cbcccd; | ||||
color: #ffffff; | |||||
color: #fff; | |||||
border-radius: 60rpx; | border-radius: 60rpx; | ||||
line-height: 94rpx; | line-height: 94rpx; | ||||
} | } | ||||
.addpark-back{ | |||||
.addpark-back { | |||||
font-size: 30rpx; | font-size: 30rpx; | ||||
color: #5aadfb; | color: #5aadfb; | ||||
float: right; | float: right; | ||||
margin: 25rpx 25rpx; | margin: 25rpx 25rpx; | ||||
} | } | ||||
.plaza-parking-info { | .plaza-parking-info { | ||||
box-sizing: border-box; | box-sizing: border-box; | ||||
height: 235rpx; | height: 235rpx; | ||||
@@ -493,4 +498,3 @@ | |||||
.car-outting .car-name { | .car-outting .car-name { | ||||
color: #fff; | color: #fff; | ||||
} | } | ||||
@@ -1,10 +1,120 @@ | |||||
var app = getApp(); | |||||
let config = require("../../config/config.js"); | |||||
let Http = require("../../utils/HttpBasics"); | |||||
let app = getApp(); | |||||
Page({ | Page({ | ||||
/** | /** | ||||
* 页面的初始数据 | * 页面的初始数据 | ||||
*/ | */ | ||||
data: { | data: { | ||||
carList: [] | |||||
}, | |||||
initUsrCarList: function() { | |||||
var that = this; | |||||
// 绑定车获取 | |||||
Http.get({ | |||||
url: config.api.getUserCarList, | |||||
data: {} | |||||
}).then(res => { | |||||
that.setData({ | |||||
carList: res.data | |||||
}); | |||||
}) | |||||
}, | |||||
unbindCarBtn: function(e) { | |||||
console.log(e); | |||||
var that = this; | |||||
var carNum = e.currentTarget.dataset.car; | |||||
that.unbindCar(carNum); | |||||
}, | }, | ||||
unbindCar: function(carNum) { | |||||
var that = this; | |||||
var postData = | |||||
app.globalData.parkVendor == 1 ? { | |||||
etcpToken: app.globalData.etcpToken, | |||||
carNumber: carNum | |||||
} : { | |||||
carNumber: carNum | |||||
}; | |||||
Http.post({ | |||||
url: config.api.unbindCar, | |||||
data: postData | |||||
}) | |||||
.then(res => { | |||||
console.log(res); | |||||
that.initUsrCarList(); | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: "解绑车牌成功!", | |||||
success: function() {} | |||||
}); | |||||
}) | |||||
.catch(error => { | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: "解绑车牌失败!", | |||||
}); | |||||
}); | |||||
}, | |||||
bindCar: function(carNum) { | |||||
var that = this; | |||||
// ETCP | |||||
var etcpData = { | |||||
etcpToken: app.globalData.etcpToken, | |||||
carNumber: carNum | |||||
}; | |||||
var tjdData = { | |||||
carNumber: carNum | |||||
}; | |||||
var postData = app.globalData.parkVendor == 1 ? etcpData : tjdData; | |||||
Http.post({ | |||||
url: config.api.bindCar, | |||||
data: postData | |||||
}) | |||||
.then(res => { | |||||
console.log(res); | |||||
that.setData({ | |||||
addCar: null | |||||
}); | |||||
that.initUsrCarList(); | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: "绑车牌成功!", | |||||
success: function() {} | |||||
}); | |||||
}) | |||||
.catch(error => { | |||||
console.log(error); | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: error.data.message, | |||||
success: function() {} | |||||
}); | |||||
}); | |||||
}, | |||||
jumpToAdd: function() { | |||||
wx.navigateTo({ | |||||
url: `/pages/addPark/addPark?flags=managepalte` | |||||
}); | |||||
}, | |||||
onShow: function(options) { | |||||
var that = this; | |||||
that.initUsrCarList(); | |||||
if (that.data.addCar) { | |||||
// 绑车牌 | |||||
if (app.globalData.carLogin) { | |||||
that.bindCar(that.data.addCar); | |||||
} else { | |||||
that.bindCar(that.data.addCar); | |||||
} | |||||
that.setData({ | |||||
addCar: null | |||||
}); | |||||
} | |||||
}, | |||||
}) | }) |
@@ -1,3 +1,3 @@ | |||||
{ | { | ||||
"navigationBarTitleText": "管理车牌" | |||||
"navigationBarTitleText": "车辆管理" | |||||
} | } |
@@ -0,0 +1,23 @@ | |||||
<view class='title'>30天内最多绑定4辆不同的车</view> | |||||
<!-- 车牌 --> | |||||
<!-- 有车牌的时候显示 --> | |||||
<view class='passUp'> | |||||
<view class='addicense_active'> | |||||
<block wx:for="{{carList}}" wx:key="unique"> | |||||
<view class="swiper-item" data-memberKeyword='{{item.carNumber}}'> | |||||
<view class='clearfix'> | |||||
<text class='txt01'>{{item.carNumber}}</text> | |||||
<view class='tche' hover-class='button_active' bindtap='gotopay'> | |||||
<button class='btn001' bindtap='unbindCarBtn' data-car='{{item.carNumber}}'>解绑</button> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</block> | |||||
</view> | |||||
</view> | |||||
<!-- 没有车牌的时候显示 --> | |||||
<view class='borderUp' hover-class='active' bindtap='jumpToAdd' bindtap='jumpToAdd' wx:if="{{carList.length>=0&&3>=carList.length}}"> | |||||
<view class="myCars"> | |||||
<image src='./../../assets/img/add.png' mode="widthFix"></image>我的爱车</view> | |||||
<text class='carNumber'>车辆入场后,才能绑车牌</text> | |||||
</view> |
@@ -0,0 +1,565 @@ | |||||
@import "../../app.wxss"; | |||||
.title { | |||||
font-size: 26rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
height: 88rpx; | |||||
line-height: 88rpx; | |||||
width: 690rpx; | |||||
border-bottom:1rpx solid #eee; | |||||
margin-bottom: 40rpx; | |||||
margin: 0 auto; | |||||
} | |||||
.title text { | |||||
font-size: 26rpx; | |||||
color: #02c0ff; | |||||
letter-spacing: 0; | |||||
line-height: 26rpx; | |||||
} | |||||
page { | |||||
background-color: #fff; | |||||
} | |||||
.headBox { | |||||
margin-top: 13rpx; | |||||
width: 750rpx; | |||||
height: 210rpx; | |||||
box-sizing: border-box; | |||||
padding: 30rpx 40rpx; | |||||
display: flex; | |||||
background-color: white; | |||||
} | |||||
.headBox image { | |||||
width: 150rpx; | |||||
height: 150rpx; | |||||
margin: 10rpx 30rpx 0 0; | |||||
border-radius: 16rpx; | |||||
} | |||||
.numberBox { | |||||
width: 400rpx; | |||||
height: 150rpx; | |||||
} | |||||
.titleName { | |||||
line-height: 60rpx; | |||||
height: 60rpx; | |||||
color: #666; | |||||
font-size: 32rpx; | |||||
width: 400rpx; | |||||
word-break: break-all; | |||||
text-align: justify; | |||||
margin-bottom: 10rpx; | |||||
} | |||||
::-webkit-scrollbar { | |||||
width: 0; | |||||
height: 0; | |||||
color: transparent; | |||||
} | |||||
.carLocation, .locationNumber { | |||||
width: 400rpx; | |||||
height: 40rpx; | |||||
color: #666; | |||||
font-size: 24rpx; | |||||
line-height: 30rpx; | |||||
} | |||||
.price { | |||||
font-size: 28rpx; | |||||
} | |||||
.borderBox { | |||||
width: 750rpx; | |||||
margin-top: 26rpx; | |||||
} | |||||
.borderUp { | |||||
width: 680rpx; | |||||
margin: 0 auto; | |||||
font-size: 36rpx; | |||||
border: 2rpx dashed #979797; | |||||
border-radius: 16rpx; | |||||
padding-bottom: 40rpx; | |||||
height: 202rpx; | |||||
} | |||||
.active{ | |||||
background: #eee; | |||||
} | |||||
.addicense_active { | |||||
width: 690rpx; | |||||
/* box-shadow: 0 4rpx 20rpx 0 rgba(153, 153, 153, 0.35); */ | |||||
border-radius: 12rpx; | |||||
/* background: #02c0ff; *//* padding-bottom: 40rpx; */ | |||||
margin: 0 auto; | |||||
} | |||||
.myCar { | |||||
display: block; | |||||
text-align: center; | |||||
font-size: 34rpx; | |||||
color: #02c0ff; | |||||
letter-spacing: 0; | |||||
} | |||||
.carNumber { | |||||
display: block; | |||||
height: 50rpx; | |||||
line-height: 50rpx; | |||||
text-align: center; | |||||
font-size: 26rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
margin-top: 10rpx; | |||||
} | |||||
.addBox { | |||||
width: 750rpx; | |||||
position: relative; | |||||
background-color: white; | |||||
} | |||||
.add { | |||||
position: absolute; | |||||
left: 50%; | |||||
top: 50%; | |||||
transform: translate(-50%, -50%); | |||||
font-size: 34rpx; | |||||
color: #666; | |||||
border: 2px dashed #eee; | |||||
padding: 30rpx 50rpx; | |||||
border-radius: 16rpx; | |||||
} | |||||
.add text { | |||||
font-size: 40rpx; | |||||
} | |||||
.bottonBox { | |||||
width: 750rpx; | |||||
margin-top: 30rpx; | |||||
} | |||||
.textStyle { | |||||
background-color: white; | |||||
height: 88rpx; | |||||
line-height: 88rpx; | |||||
padding-left: 92rpx; | |||||
border-bottom: 1px #f8f8f8 solid; | |||||
position: relative; | |||||
font-size: 30rpx; | |||||
color: #333; | |||||
letter-spacing: 1.16rpx; | |||||
} | |||||
.textStyle image { | |||||
width: 50rpx; | |||||
height: 50rpx; | |||||
top: 20rpx; | |||||
left: 27rpx; | |||||
position: absolute; | |||||
} | |||||
.swiper { | |||||
position: relative; | |||||
} | |||||
.swiper-item { | |||||
font-size: 75rpx; | |||||
margin: 0 auto; | |||||
width: 690rpx; | |||||
font-weight: 400; | |||||
text-align: center; | |||||
color: rgba(255, 255, 255, 1); | |||||
margin-bottom: 40rpx; | |||||
} | |||||
.swiper-item > view { | |||||
background: #bbe6ff; | |||||
border-radius: 12rpx; | |||||
padding: 6rpx; | |||||
} | |||||
.tche { | |||||
width: 157rpx; | |||||
height: 180rpx; | |||||
line-height: 180rpx; | |||||
margin: 0 auto; | |||||
float: right; | |||||
border-radius: 12rpx; | |||||
background: #56bdf8; | |||||
border: 3px solid #fff; | |||||
position: relative; | |||||
} | |||||
.txt01 { | |||||
width: 497rpx; | |||||
height: 180rpx; | |||||
line-height: 180rpx; | |||||
float: left; | |||||
background: #56bdf8; | |||||
border-radius: 12rpx; | |||||
border: 3px solid #fff; | |||||
text-align: center; | |||||
} | |||||
.passNumberBox { | |||||
position: relative; | |||||
background-color: white; | |||||
/* border-bottom: 1rpx #f8f8f8 solid; */ | |||||
margin-top: 30rpx; | |||||
} | |||||
.passNumber { | |||||
width: 400rpx; | |||||
height: 100rpx; | |||||
font-size: 32rpx; | |||||
font-weight: 600; | |||||
line-height: 100rpx; | |||||
left: 55rpx; | |||||
position: absolute; | |||||
} | |||||
.nopay { | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-weight: 400; | |||||
} | |||||
.number { | |||||
font-size: 48rpx; | |||||
color: #1f2d3d; | |||||
letter-spacing: 0; | |||||
line-height: 52rpx; | |||||
font-weight: 400; | |||||
} | |||||
.manage_plate { | |||||
width: 65%; | |||||
border-radius: 80rpx; | |||||
margin: 40rpx auto 0; | |||||
background: #02c0ff; | |||||
color: #fff; | |||||
text-align: center; | |||||
font-size: 30rpx; | |||||
} | |||||
.button_active { | |||||
opacity: 0.6; | |||||
} | |||||
.btn001 { | |||||
margin: 0 auto; | |||||
width: 120rpx; | |||||
height: 180rpx; | |||||
line-height: 180rpx; | |||||
font-size: 32rpx; | |||||
font-weight: 400; | |||||
color: rgba(255, 255, 255, 1); | |||||
background: none; | |||||
} | |||||
.parkPrice { | |||||
font-size: 30rpx; | |||||
font-weight: 500; | |||||
} | |||||
.deleteButton { | |||||
font-size: 28rpx; | |||||
line-height: 50rpx; | |||||
height: 50rpx; | |||||
top: 50%; | |||||
right: 30rpx; | |||||
position: absolute; | |||||
transform: translate(0, -50%); | |||||
color: white; | |||||
background-color: #00c0ff !important; | |||||
} | |||||
.deleteButton button { | |||||
background-color: #00c0ff !important; | |||||
} | |||||
.detail { | |||||
width: 32rpx; | |||||
height: 32rpx; | |||||
right: 34rpx; | |||||
top: 32rpx; | |||||
position: absolute; | |||||
} | |||||
.detail image { | |||||
width: 44rpx; | |||||
height: 44rpx; | |||||
position: absolute; | |||||
left: 0; | |||||
top: 0; | |||||
} | |||||
.voucher { | |||||
width: 90%; | |||||
padding: 0 5%; | |||||
background-color: #fff; | |||||
/* background-color: #cbcbcb; */ | |||||
height: 80rpx; | |||||
position: relative; | |||||
margin: 0 0 12rpx 0; | |||||
border-bottom: 2rpx #fff solid; | |||||
display: flex; | |||||
justify-content: space-between;; | |||||
} | |||||
.textV1, .textV2 { | |||||
height: 58rpx; | |||||
width: 100rpx; | |||||
padding-top: 26rpx; | |||||
text-align: center; | |||||
line-height: 80rxp; | |||||
font-size: 24rpx; | |||||
color: #333; | |||||
} | |||||
.textV2 { | |||||
margin-top: 0rpx; | |||||
padding: 0; | |||||
/* background-color: rgb(0, 192, 255); */ | |||||
border-radius: 10rpx; | |||||
width: 300rpx; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-size: 20rpx; | |||||
border: 4rpx #fff solid; | |||||
margin-bottom: 20rpx; | |||||
} | |||||
.textV3 { | |||||
width: 225rpx; | |||||
} | |||||
/* .textV1{ | |||||
position: absolute; | |||||
left: 10rpx; | |||||
top: 22rpx; | |||||
} */ | |||||
/* .textV2{ | |||||
position: absolute; | |||||
top: 22rpx; | |||||
right: 80rpx; | |||||
} */ | |||||
.choice { | |||||
width: 80rpx; | |||||
height: 80rpx; | |||||
position: relative; | |||||
} | |||||
.choice image { | |||||
position: absolute; | |||||
left: 50%; | |||||
top: 50%; | |||||
transform: translate(-50%, -50%); | |||||
width: 30rpx; | |||||
height: 30rpx; | |||||
} | |||||
.buy-view { | |||||
background: #fff; | |||||
position: relative; | |||||
padding-top: 10rpx; | |||||
height: 98rpx; | |||||
bottom: 0rpx; | |||||
margin-top: 50rpx; | |||||
/* left: 0; | |||||
right: 0; */ | |||||
} | |||||
.buy { | |||||
background: #00c0ff; | |||||
height: 88rpx; | |||||
width: 98%; | |||||
margin: 0 auto; | |||||
color: #fff; | |||||
font-size: 36rpx; | |||||
line-height: 88rpx; | |||||
border-radius: 6rpx; | |||||
position: relative; | |||||
z-index: 100; | |||||
} | |||||
.borderBox { | |||||
width: 690rpx; | |||||
margin: 20rpx auto 0; | |||||
} | |||||
.carmanage { | |||||
position: relative; | |||||
width: 690rpx; | |||||
margin: 0 auto; | |||||
height: 88rpx; | |||||
line-height: 88rpx; | |||||
border-bottom: 1rpx solid #eee; | |||||
} | |||||
.carmanage .fr { | |||||
font-size: 28rpx; | |||||
color: #888; | |||||
letter-spacing: 1.16rpx; | |||||
text-align: right; | |||||
margin-right: 40rpx; | |||||
} | |||||
.fl { | |||||
float: left; | |||||
} | |||||
.fr { | |||||
float: right; | |||||
} | |||||
.carmanage .fl { | |||||
width: 400rpx; | |||||
} | |||||
.carmanage .fr image { | |||||
position: absolute; | |||||
top: 0; | |||||
right: 0; | |||||
bottom: 0; | |||||
margin: auto; | |||||
width: 44rpx; | |||||
height: 44rpx; | |||||
} | |||||
.carmanage image { | |||||
width: 40rpx; | |||||
vertical-align: middle; | |||||
} | |||||
.mycar { | |||||
display: inline-block; | |||||
margin-left: 20rpx; | |||||
font-size: 30rpx; | |||||
color: #333; | |||||
letter-spacing: 1.16rpx; | |||||
} | |||||
.num { | |||||
display: inline-block; | |||||
font-size: 26rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
margin-left: 20rpx; | |||||
} | |||||
.orderBox { | |||||
width: 100%; | |||||
height: 100rpx; | |||||
border-top: 1rpx #f8f8f8 solid; | |||||
position: relative; | |||||
display: flex; | |||||
} | |||||
.priceBox { | |||||
width: 420rpx; | |||||
} | |||||
.priceBox text { | |||||
margin-top: 35rpx; | |||||
color: #333; | |||||
font-size: 24rpx; | |||||
margin-left: 50rpx; | |||||
display: block; | |||||
} | |||||
.payBox { | |||||
width: 250rpxpx; | |||||
} | |||||
.payBox button { | |||||
width: 230rpx; | |||||
border: 0; | |||||
font-size: 32rpx; | |||||
margin-top: 13rpx; | |||||
margin-right: 20rpx; | |||||
background-color: lightgreen; | |||||
color: white; | |||||
} | |||||
input { | |||||
outline: none; | |||||
border: none; | |||||
list-style: none; | |||||
} | |||||
button::after { | |||||
border: none; | |||||
} | |||||
.right { | |||||
width: 328rpx; | |||||
} | |||||
.textRight { | |||||
margin-left: 0; | |||||
margin-right: 25rpx; | |||||
text-align: right; | |||||
font-size: 30rpx !important; | |||||
color: red !important; | |||||
} | |||||
.buyBox { | |||||
width: 750rpx; | |||||
height: 88rpx; | |||||
position: absolute; | |||||
left: 0; | |||||
top: 0; | |||||
z-index: 100000000; | |||||
} | |||||
.myCars image { | |||||
width: 44rpx; | |||||
height: 44rpx; | |||||
vertical-align: middle; | |||||
margin-right: 14rpx; | |||||
} | |||||
.myCars { | |||||
font-size: 34rpx; | |||||
color: #02c0ff; | |||||
letter-spacing: 0; | |||||
text-align: center; | |||||
padding-top: 58rpx; | |||||
} | |||||
.dots { | |||||
position: absolute; | |||||
left: 0; | |||||
right: 0; | |||||
bottom: 19rpx; | |||||
display: flex; | |||||
justify-content: center; | |||||
height: 19rpx; | |||||
background: #fff; | |||||
} | |||||
.dots .dot { | |||||
margin: 0 8rpx; | |||||
width: 32rpx; | |||||
height: 14rpx; | |||||
background: #fff; | |||||
border-radius: 8rpx; | |||||
transition: all 0.6s; | |||||
} | |||||
.dots .dot.active { | |||||
width: 49rpx; | |||||
height: 4rpx; | |||||
background: rgba(86, 189, 248, 1); | |||||
border-radius: 6rpx; | |||||
} |
@@ -3,41 +3,42 @@ | |||||
<i-tabs class='tabs' current="{{ current_scroll }}" scroll bindchange="handleChangeScroll"> | <i-tabs class='tabs' current="{{ current_scroll }}" scroll bindchange="handleChangeScroll"> | ||||
<i-tab class='i-tab' wx:for="{{tabs}}" wx:key="unique" key="{{item.key}}" title="{{item.name}}"></i-tab> | <i-tab class='i-tab' wx:for="{{tabs}}" wx:key="unique" key="{{item.key}}" title="{{item.name}}"></i-tab> | ||||
</i-tabs> | </i-tabs> | ||||
<view> | |||||
<view style='padding-top:120rpx;'> | |||||
<view class="nocoupon" wx:if="{{list.length==0}}"> | <view class="nocoupon" wx:if="{{list.length==0}}"> | ||||
<!-- <image src="./../../../assets/img/cou.png" mode="widthFix" /> --> | |||||
<text>暂无优惠券可用</text> | |||||
<navigator url="/pages/index/index" open-type="switchTab" hover-class="other-navigator-hover"> | |||||
<button>去领券</button> | |||||
<image src="./../../../assets/img/coupon.png" mode="widthFix" /> | |||||
<text class="txt001">请您敬请期待</text> | |||||
<text class='txt002'>我们正在筹备一大波优惠活动</text> | |||||
<navigator class='nav' url="/pages/index/index" open-type="switchTab" hover-class="other-navigator-hover"> | |||||
<button hover-class='active'>前往首页看看</button> | |||||
</navigator> | </navigator> | ||||
</view> | </view> | ||||
<view class='section' wx:for='{{list}}' wx:key='{{index}}' bindtap="gotouse" data-quancode="{{item.id}}" > | |||||
<view class='detail_msg'> | |||||
<view class='logo'> | |||||
<image src='{{item.coverImg}}'></image> | |||||
</view> | |||||
<view class='info'> | |||||
<view> | |||||
<text>{{item.title}}</text> | |||||
<view class='section' wx:for='{{list}}' wx:key='{{index}}' bindtap="gotouse" data-quancode="{{item.id}}" data-couponorderstatus="{{item.couponOrderStatus}}"> | |||||
<view class='mms'> | |||||
<view class='detail_msg'> | |||||
<view class='logo'> | |||||
<image mode="aspectFill" src='{{item.coverImg}}'></image> | |||||
</view> | </view> | ||||
<view> | |||||
<text class="txt1">有效期至:</text> | |||||
<text class="txt2">{{item.expiredTime}}</text> | |||||
<view class='info'> | |||||
<view class='title'> | |||||
<text>{{item.title}}</text> | |||||
</view> | |||||
<view class='subtitle'> | |||||
<text>{{item.subTitle}}</text> | |||||
</view> | |||||
<view hover-class='active' wx:if="{{item.couponOrderStatus==0}}" class="btns">去使用</view> | |||||
<view hover-class='active' wx:elif="{{item.couponOrderStatus==1||item.couponOrderStatus==2||item.couponOrderStatus==3}}" class="btns">查看</view> | |||||
</view> | </view> | ||||
<view wx:if="{{item.couponOrderStatus==0}}" class="btns" bindtap="gotouse" data-quancode="{{item.id}}">查看详情</view> | |||||
<view wx:elif="{{item.couponOrderStatus==1||item.couponOrderStatus==2||item.couponOrderStatus==3}}" class="btns">查看</view> | |||||
</view> | |||||
<image class="liness" src='./../../../assets/img/liness.png' mode="widthFix"></image> | |||||
<view class='expiretime'> | |||||
<text class="txt1">有效期至:</text> | |||||
<text class="txt2">{{item.expiredTime}}</text> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<!-- <view class='imageBox'> | |||||
<image src="../../../assets/img/parkCoupon.png"></image> | |||||
<text class='text2'>2小时免费停车券</text> | |||||
<text class='text5'>京A88888</text> | |||||
<text class='text3'>2018-08-30</text> | |||||
<text class='text6'>至</text> | |||||
<text class='text4'>2018-09-30</text> | |||||
<text class='text1'>朝阳大悦城</text> | |||||
</view> --> | |||||
<view class="loading" wx:if="{{loading}}"> | |||||
<image src="./../../../assets/img/loading.gif" mode="widthFix"></image>{{content}} | |||||
</view> | |||||
</view> | </view> | ||||
</view> | </view> |
@@ -1,12 +1,18 @@ | |||||
.market { | .market { | ||||
width: 100%; | width: 100%; | ||||
height: 100%; | height: 100%; | ||||
/* background: #f5f5f5; */ | |||||
} | } | ||||
.tabs { | .tabs { | ||||
width: 100% !important; | width: 100% !important; | ||||
height: 88rpx; | height: 88rpx; | ||||
text-align: center; | text-align: center; | ||||
position: fixed; | |||||
top: 0; | |||||
left: 0; | |||||
right: 0; | |||||
z-index: 100000; | |||||
} | } | ||||
.i-tab { | .i-tab { | ||||
@@ -15,37 +21,61 @@ | |||||
} | } | ||||
.section { | .section { | ||||
margin-top: 2%; | |||||
position: relative; | |||||
} | } | ||||
.section:nth-of-type(1) { | |||||
margin-top: 30rpx; | |||||
.mms { | |||||
width: 690rpx; | |||||
height: 170rpx !important; | |||||
background: #fff; | |||||
padding: 30rpx 0 0; | |||||
margin: 0 auto 40rpx; | |||||
border-radius: 16rpx; | |||||
border-top: 8rpx solid #02b7ff; | |||||
box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.10); | |||||
} | } | ||||
.detail_msg { | .detail_msg { | ||||
width: 92%; | |||||
height: 202rpx !important; | |||||
background: #fff; | |||||
display: flex; | display: flex; | ||||
padding: 0 4%; | |||||
margin-top: 2%; | |||||
border-bottom: 1px solid #ededed; | |||||
padding-bottom: 26rpx; | |||||
} | |||||
.expiretime { | |||||
display: block; | |||||
width: 100%; | |||||
text-align: left; | |||||
text-indent: 1em; | |||||
height: 40rpx; | |||||
line-height: 36rpx; | |||||
font-size: 22rpx; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
} | |||||
.liness { | |||||
display: block; | |||||
width: 100%; | |||||
} | } | ||||
.logo { | .logo { | ||||
width: 348rpx; | |||||
height: 184rpx; | |||||
width: 60rpx; | |||||
height: 60rpx; | |||||
border: 1px solid #f8f8f8; | |||||
border-radius: 50rpx; | |||||
display: block; | |||||
margin-left: 20rpx; | |||||
} | } | ||||
.logo image { | .logo image { | ||||
width: 100%; | |||||
height: 100%; | |||||
border-radius: 15rpx; | |||||
width: 60rpx; | |||||
height: 60rpx; | |||||
border-radius: 50%; | |||||
} | } | ||||
.info view:nth-child(1) { | .info view:nth-child(1) { | ||||
display: flex; | display: flex; | ||||
justify-content: space-between; | justify-content: space-between; | ||||
padding: 0 4%; | |||||
padding: 0 2%; | |||||
} | } | ||||
.info { | .info { | ||||
@@ -53,16 +83,29 @@ | |||||
} | } | ||||
.info view:nth-child(1) text { | .info view:nth-child(1) text { | ||||
font-size: 30rpx; | |||||
margin-top: 10rpx; | |||||
color: #666; | |||||
font-size: 32rpx; | |||||
line-height: 32rpx; | |||||
height: 32rpx; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
width: 400rpx; | |||||
display: inline-block; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; | |||||
overflow: hidden; | |||||
} | } | ||||
.info view:nth-child(2) { | .info view:nth-child(2) { | ||||
color: #ff3434; | |||||
font-size: 24rpx; | |||||
padding-left: 4%; | |||||
margin-top: 1%; | |||||
padding-left: 2%; | |||||
font-size: 22rpx; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
margin-top: 6rpx; | |||||
display: inline-block; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; | |||||
overflow: hidden; | |||||
width: 400rpx; | |||||
} | } | ||||
.info view:nth-child(3) { | .info view:nth-child(3) { | ||||
@@ -70,96 +113,93 @@ | |||||
} | } | ||||
.btns { | .btns { | ||||
width: 200rpx; | |||||
height: 60rpx; | |||||
line-height: 60rpx; | |||||
position: absolute; | |||||
right: 57rpx; | |||||
top: 38rpx; | |||||
width: 120rpx; | |||||
height: 48rpx; | |||||
line-height: 48rpx; | |||||
text-align: center; | text-align: center; | ||||
background: #00c0ff; | |||||
color: #fff; | |||||
float: right; | |||||
border-radius: 15rpx; | |||||
border: 2rpx solid #02c0ff; | |||||
border-radius: 60rpx; | |||||
color: #02c0ff; | |||||
font-size: 28rpx; | font-size: 28rpx; | ||||
margin-top: 20rpx; | |||||
} | |||||
.active { | |||||
color: #fff; | |||||
background: #02c0ff; | |||||
} | } | ||||
.txt1 { | .txt1 { | ||||
font-size: 22rpx; | font-size: 22rpx; | ||||
color: #999; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
} | } | ||||
.txt2 { | |||||
font-size: 22rpx; | |||||
color: #f96563; | |||||
.nocoupon image { | |||||
width: 300rpx; | |||||
display: block; | |||||
margin: 3% auto 0; | |||||
} | } | ||||
.nocoupon image{ | |||||
width: 203rpx; | |||||
.txt001 { | |||||
display: block; | display: block; | ||||
margin: 200rpx auto 0; | |||||
line-height: 48rpx; | |||||
font-size: 34rpx; | |||||
color: #333; | |||||
letter-spacing: 0; | |||||
text-align: center; | |||||
} | } | ||||
.nocoupon text{ | |||||
.txt002 { | |||||
display: block; | display: block; | ||||
margin-top: 1%; | |||||
font-size: 28rpx; | |||||
color: #999; | |||||
letter-spacing: 0; | |||||
line-height: 40rpx; | |||||
text-align: center; | text-align: center; | ||||
font-size:30rpx; | |||||
color: #00C0FF; | |||||
} | } | ||||
.nocoupon button{ | |||||
background: #00C0FF; | |||||
.nocoupon button { | |||||
background: #00c0ff; | |||||
color: #fff; | color: #fff; | ||||
font-style: 30rpx; | font-style: 30rpx; | ||||
width: 70%; | |||||
margin: 30rpx auto 0; | |||||
} | |||||
.imageBox,imageBox image{ | |||||
width: 100%; | |||||
height: 250rpx; | |||||
margin-top: 30rpx; | |||||
position: relative; | |||||
} | |||||
image{ | |||||
width: 100%; | width: 100%; | ||||
height: 100%; | |||||
} | |||||
.text1{ | |||||
color: white; | |||||
font-size: 28rpx; | |||||
position: absolute; | |||||
top: 32rpx; | |||||
left: 50rpx; | |||||
border-radius: 60rpx; | |||||
} | } | ||||
.text2{ | |||||
color: white; | |||||
font-size: 40rpx; | |||||
position: absolute; | |||||
top: 90rpx; | |||||
left: 50rpx; | |||||
.loading { | |||||
text-align: center; | |||||
height: 80rpx; | |||||
line-height: 80rpx; | |||||
font-size: 26rpx; | |||||
color: #999; | |||||
} | } | ||||
.text3{ | |||||
color: white; | |||||
font-size: 32rpx; | |||||
position: absolute; | |||||
top: 60rpx; | |||||
right: 50rpx; | |||||
.loading image { | |||||
width: 60rpx; | |||||
height: 60rpx; | |||||
vertical-align: middle; | |||||
margin-right: 10rpx; | |||||
} | } | ||||
.text4{ | |||||
color: white; | |||||
font-size: 32rpx; | |||||
position: absolute; | |||||
top: 150rpx; | |||||
right: 50rpx; | |||||
.active { | |||||
opacity: 0.6; | |||||
} | } | ||||
.text5{ | |||||
color: white; | |||||
font-size: 28rpx; | |||||
.nav { | |||||
position: absolute; | position: absolute; | ||||
bottom: 32rpx; | |||||
left: 50rpx; | |||||
bottom: 3.3%; | |||||
left: 0; | |||||
right: 0; | |||||
margin: auto; | |||||
width: 670rpx; | |||||
border-radius: 60rpx; | |||||
background: #02c0ff; | |||||
font-size: 32px; | |||||
color: #fff; | |||||
text-align: center; | |||||
line-height: 32px; | |||||
} | } | ||||
.text6{ | |||||
color: white; | |||||
font-size: 24rpx; | |||||
position: absolute; | |||||
top: 110rpx; | |||||
right: 120rpx; | |||||
font-weight: 600; | |||||
} |
@@ -11,19 +11,19 @@ Page({ | |||||
tcq: 2, | tcq: 2, | ||||
flag: "", | flag: "", | ||||
extraData: {}, | extraData: {}, | ||||
desc:'', | |||||
title:'', | |||||
desc: '', | |||||
title: '', | |||||
indicatorDots: true, | indicatorDots: true, | ||||
autoplay: false, | autoplay: false, | ||||
interval: 5000, | interval: 5000, | ||||
duration: 1000, | duration: 1000, | ||||
current: 0, | current: 0, | ||||
list:[] | |||||
list: [] | |||||
}, | }, | ||||
/** | /** | ||||
* 轮播图 | |||||
*/ | |||||
onSlideChangeEnd: function (e) { | |||||
* 轮播图 | |||||
*/ | |||||
onSlideChangeEnd: function(e) { | |||||
var that = this; | var that = this; | ||||
console.log(e); | console.log(e); | ||||
console.log(e.detail.current); | console.log(e.detail.current); | ||||
@@ -34,7 +34,7 @@ Page({ | |||||
}) | }) | ||||
console.log(that.data.listCardNum); | console.log(that.data.listCardNum); | ||||
}, | }, | ||||
gotomange:function(){ | |||||
gotomange: function() { | |||||
wx.navigateTo({ | wx.navigateTo({ | ||||
url: '/pages/managelicenseplate/managelicenseplate', | url: '/pages/managelicenseplate/managelicenseplate', | ||||
}) | }) | ||||
@@ -54,11 +54,11 @@ Page({ | |||||
var that = this; | var that = this; | ||||
that.getList(); | that.getList(); | ||||
Http.get({ | Http.get({ | ||||
url: config.api.getWeapNote, | |||||
data: { | |||||
appId: config.weapp.AppId, | |||||
} | |||||
}) | |||||
url: config.api.getWeapNote, | |||||
data: { | |||||
appId: config.weapp.AppId, | |||||
} | |||||
}) | |||||
.then(res => { | .then(res => { | ||||
console.log(res.data.weapNote); | console.log(res.data.weapNote); | ||||
let weapNote = JSON.parse(res.data.weapNote); | let weapNote = JSON.parse(res.data.weapNote); | ||||
@@ -72,7 +72,6 @@ Page({ | |||||
onShow: function(options) { | onShow: function(options) { | ||||
var that = this; | var that = this; | ||||
console.log("车牌号"); | |||||
if (that.data.addCar) { | if (that.data.addCar) { | ||||
// 绑车牌 | // 绑车牌 | ||||
if (app.globalData.carLogin) { | if (app.globalData.carLogin) { | ||||
@@ -111,9 +110,10 @@ Page({ | |||||
//券绑定车牌 | //券绑定车牌 | ||||
bindCoupon: function(e) { | bindCoupon: function(e) { | ||||
var that = this; | var that = this; | ||||
wx.showLoading({ | |||||
title: '加载中...', | |||||
}); | |||||
if (that.data.couponList.length > 0) { | if (that.data.couponList.length > 0) { | ||||
console.log("00000000000000"); | |||||
console.log(e.currentTarget.dataset.checkbind); | |||||
/** | /** | ||||
* 如果1 已经绑定 | * 如果1 已经绑定 | ||||
* 0 没有绑定 | * 0 没有绑定 | ||||
@@ -125,9 +125,9 @@ Page({ | |||||
} | } | ||||
var etcpData = { | var etcpData = { | ||||
etcpToken: app.globalData.etcpToken, | etcpToken: app.globalData.etcpToken, | ||||
carNumber: that.data.payList[0].carNumber | |||||
? that.data.payList[0].carNumber | |||||
: "", | |||||
carNumber: that.data.payList[0].carNumber ? | |||||
that.data.payList[0].carNumber : | |||||
"", | |||||
couponOrderId: that.data.couponList[0].id | couponOrderId: that.data.couponList[0].id | ||||
}; | }; | ||||
console.log(etcpData); | console.log(etcpData); | ||||
@@ -138,20 +138,16 @@ Page({ | |||||
var postCouponData = app.globalData.parkVendor == 1 ? etcpData : tjdData; | var postCouponData = app.globalData.parkVendor == 1 ? etcpData : tjdData; | ||||
Http.post({ | Http.post({ | ||||
url: config.api.getCarCoupon, | |||||
data: postCouponData | |||||
}) | |||||
url: config.api.getCarCoupon, | |||||
data: postCouponData | |||||
}) | |||||
.then(res => { | .then(res => { | ||||
that.setData({ | that.setData({ | ||||
flag: "1" | flag: "1" | ||||
}); | }); | ||||
// that.initUsrCarList() | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: "车牌绑定优免券成功!", | |||||
success: function(res) {} | |||||
}); | |||||
that.initUsrCarList(); | |||||
console.log("loading") | |||||
wx.hideLoading(); | |||||
}) | }) | ||||
.catch(error => { | .catch(error => { | ||||
console.log(error); | console.log(error); | ||||
@@ -162,11 +158,10 @@ Page({ | |||||
} | } | ||||
}); | }); | ||||
} else { | } else { | ||||
console.log("1111111111111111111"); | |||||
wx.hideLoading(); | |||||
that.setData({ | that.setData({ | ||||
flags: "alreadybind" | flags: "alreadybind" | ||||
}); | }); | ||||
console.log(that.data.flags); | |||||
} | } | ||||
}, | }, | ||||
@@ -203,9 +198,9 @@ Page({ | |||||
}; | }; | ||||
var postData = app.globalData.parkVendor == 1 ? etcpData : tjdData; | var postData = app.globalData.parkVendor == 1 ? etcpData : tjdData; | ||||
Http.post({ | Http.post({ | ||||
url: config.api.bindCar, | |||||
data: postData | |||||
}) | |||||
url: config.api.bindCar, | |||||
data: postData | |||||
}) | |||||
.then(res => { | .then(res => { | ||||
console.log(res); | console.log(res); | ||||
that.setData({ | that.setData({ | ||||
@@ -229,79 +224,82 @@ Page({ | |||||
}); | }); | ||||
}); | }); | ||||
}, | }, | ||||
unbindCar: function(carNum) { | |||||
var that = this; | |||||
var postData = | |||||
app.globalData.parkVendor == 1 | |||||
? { | |||||
etcpToken: app.globalData.etcpToken, | |||||
carNumber: carNum | |||||
} | |||||
: { | |||||
carNumber: carNum | |||||
}; | |||||
Http.post({ | |||||
url: config.api.unbindCar, | |||||
data: postData | |||||
}) | |||||
.then(res => { | |||||
console.log(res); | |||||
that.initUsrCarList(); | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: "解绑车牌成功!", | |||||
success: function() {} | |||||
}); | |||||
}) | |||||
.catch(error => { | |||||
wx.showModal({ | |||||
title: "提示", | |||||
showCancel: false, | |||||
content: "解绑车牌失败!", | |||||
success: function() {} | |||||
}); | |||||
}); | |||||
}, | |||||
unbindCarBtn: function(e) { | |||||
console.log(e); | |||||
var that = this; | |||||
var carNum = e.currentTarget.dataset.car; | |||||
that.unbindCar(carNum); | |||||
}, | |||||
// unbindCar: function(carNum) { | |||||
// var that = this; | |||||
// var postData = | |||||
// app.globalData.parkVendor == 1 | |||||
// ? { | |||||
// etcpToken: app.globalData.etcpToken, | |||||
// carNumber: carNum | |||||
// } | |||||
// : { | |||||
// carNumber: carNum | |||||
// }; | |||||
// Http.post({ | |||||
// url: config.api.unbindCar, | |||||
// data: postData | |||||
// }) | |||||
// .then(res => { | |||||
// console.log(res); | |||||
// that.initUsrCarList(); | |||||
// wx.showModal({ | |||||
// title: "提示", | |||||
// showCancel: false, | |||||
// content: "解绑车牌成功!", | |||||
// success: function() {} | |||||
// }); | |||||
// }) | |||||
// .catch(error => { | |||||
// wx.showModal({ | |||||
// title: "提示", | |||||
// showCancel: false, | |||||
// content: "解绑车牌失败!", | |||||
// success: function() {} | |||||
// }); | |||||
// }); | |||||
// }, | |||||
// unbindCarBtn: function(e) { | |||||
// console.log(e); | |||||
// var that = this; | |||||
// var carNum = e.currentTarget.dataset.car; | |||||
// that.unbindCar(carNum); | |||||
// }, | |||||
getStopFeeItem: function(carItem, i) { | getStopFeeItem: function(carItem, i) { | ||||
var that = this; | var that = this; | ||||
var postData = | var postData = | ||||
app.globalData.parkVendor == 1 | |||||
? { | |||||
etcpToken: app.globalData.etcpToken, | |||||
carNumber: carItem.carNumber | |||||
} | |||||
: { | |||||
carNumber: carItem.carNumber, | |||||
outCarId: carItem.outCarId | |||||
}; | |||||
app.globalData.parkVendor == 1 ? | |||||
{ | |||||
etcpToken: app.globalData.etcpToken, | |||||
carNumber: carItem.carNumber | |||||
} : | |||||
{ | |||||
carNumber: carItem.carNumber, | |||||
outCarId: carItem.outCarId | |||||
}; | |||||
var stopFee = "carList[" + i + "].stopFee"; | var stopFee = "carList[" + i + "].stopFee"; | ||||
var extraData = "carList[" + i + "].extraData"; | var extraData = "carList[" + i + "].extraData"; | ||||
console.log(extraData); | console.log(extraData); | ||||
var extraDataStr = { params: { CarNumber: carItem.carNumber } }; | |||||
var extraDataStr = { | |||||
params: { | |||||
CarNumber: carItem.carNumber | |||||
} | |||||
}; | |||||
that.setData({ | that.setData({ | ||||
extraData: extraDataStr | extraData: extraDataStr | ||||
}); | }); | ||||
Http.post({ | Http.post({ | ||||
url: config.api.getCarStopFee, | |||||
data: postData | |||||
}) | |||||
url: config.api.getCarStopFee, | |||||
data: postData | |||||
}) | |||||
.then(res => { | .then(res => { | ||||
/** | /** | ||||
* 停车费用 | * 停车费用 | ||||
*/ | */ | ||||
that.setData({ | that.setData({ | ||||
[stopFee]: res.data, | |||||
[extraData]: extraDataStr, | |||||
buttonBox: res.data.parkingFee | |||||
}), | |||||
console.log("res>>>" + JSON.stringify(that.data.buttonBox)); | |||||
[stopFee]: res.data, | |||||
[extraData]: extraDataStr, | |||||
buttonBox: res.data.parkingFee | |||||
}) | |||||
}) | }) | ||||
.catch(error => { | .catch(error => { | ||||
console.log(error); | console.log(error); | ||||
@@ -313,7 +311,6 @@ Page({ | |||||
for (var i = 0; i < that.data.carList.length; i++) { | for (var i = 0; i < that.data.carList.length; i++) { | ||||
that.getStopFeeItem(that.data.carList[i], i); | that.getStopFeeItem(that.data.carList[i], i); | ||||
} | } | ||||
// console.log(JSON.stringify(getStopFeeItem)) | |||||
}, | }, | ||||
initPark: function() { | initPark: function() { | ||||
@@ -323,6 +320,7 @@ Page({ | |||||
url: config.api.getParkInfo, | url: config.api.getParkInfo, | ||||
data: {} | data: {} | ||||
}).then(res => { | }).then(res => { | ||||
console.log(res); | |||||
that.setData({ | that.setData({ | ||||
park: res.data | park: res.data | ||||
}); | }); | ||||
@@ -338,12 +336,10 @@ Page({ | |||||
that.setData({ | that.setData({ | ||||
carList: res.data | carList: res.data | ||||
}); | }); | ||||
console.log("aaaa" + JSON.stringify(that.data.carList)); | |||||
}); | }); | ||||
}, | }, | ||||
init: function() { | init: function() { | ||||
var that = this; | var that = this; | ||||
app.parkInitCallback = token => { | app.parkInitCallback = token => { | ||||
that.initPark(); | that.initPark(); | ||||
that.initUsrCarList(); | that.initUsrCarList(); | ||||
@@ -371,17 +367,17 @@ Page({ | |||||
} | } | ||||
}, | }, | ||||
// 用户点击右上角分享 | // 用户点击右上角分享 | ||||
onShareAppMessage: function () { | |||||
onShareAppMessage: function() { | |||||
return { | return { | ||||
title: this.data.title, | title: this.data.title, | ||||
desc: this.data.desc, | desc: this.data.desc, | ||||
success: function (res) { | |||||
success: function(res) { | |||||
wx.showToast({ | wx.showToast({ | ||||
title: "分享成功", | title: "分享成功", | ||||
duration: 1000, | duration: 1000, | ||||
icon: "success" | icon: "success" | ||||
}); | }); | ||||
} | } | ||||
}} | |||||
}); | |||||
} | |||||
} | |||||
}); |
@@ -10,40 +10,29 @@ | |||||
<image src='./../../assets/img/jian.png' mode='widthFix'></image> | <image src='./../../assets/img/jian.png' mode='widthFix'></image> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<!-- <view class='headBox'> | |||||
<image src='../../assets/img/timg.jpg'></image> | |||||
<view class='headBox'> | |||||
<view class='numberBox'> | <view class='numberBox'> | ||||
<view class='titleName'>{{park.addr}}</view> | |||||
<view class='carLocation price'>停车费: | |||||
<label class='locationNumber'>{{park.stopFee}}</label> | |||||
<view class='titleName clearfix'>{{park.addr}}</view> | |||||
<view class='price clearfix'> | |||||
<text class='fl'>总车位:</text> | |||||
<label class='locationNumber fr'>{{park.number}}个</label> | |||||
</view> | </view> | ||||
<view class='carLocation'>总车位: | |||||
<label class='locationNumber'> {{park.number}}个</label> | |||||
<view class='price clearfix'> | |||||
<text class='fl'>停车费:</text> | |||||
<label class='locationNumber fr'>{{park.stopFee}}</label> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> --> | |||||
</view> | |||||
<view class='borderBox'> | <view class='borderBox'> | ||||
<view class='passNumberBox' wx:for='{{carList}}' wx:key='{{index}}'> | <view class='passNumberBox' wx:for='{{carList}}' wx:key='{{index}}'> | ||||
<!-- <view class='passUp'> | |||||
<view class='passNumber' bindtap='orderPay'> | |||||
<text class='number'>{{item.carNumber}}</text> | |||||
</view> | |||||
<button class='deleteButton' bindtap='unbindCarBtn' data-car='{{item.carNumber}}'>解绑</button> | |||||
</view> --> | |||||
<!-- 有车牌的时候显示 --> | <!-- 有车牌的时候显示 --> | ||||
<view class='passUp'> | <view class='passUp'> | ||||
<view class='addicense_active'> | <view class='addicense_active'> | ||||
<swiper current="{{current}}" bindchange='onSlideChangeEnd' class='swiper' circular='true' indicator-dots='{{indicatorDots}}' autoplay='{{autoplay}}' interval='2000' duration='2000'> | <swiper current="{{current}}" bindchange='onSlideChangeEnd' class='swiper' circular='true' indicator-dots='{{indicatorDots}}' autoplay='{{autoplay}}' interval='2000' duration='2000'> | ||||
<block wx:for="{{carList}}" wx:key="unique"> | <block wx:for="{{carList}}" wx:key="unique"> | ||||
<swiper-item class="swiper-item" data-memberKeyword='{{item.carNumber}}'> | <swiper-item class="swiper-item" data-memberKeyword='{{item.carNumber}}'> | ||||
<view class='clearfix'> | |||||
<view class='clearfix clearfix1'> | |||||
<text class='txt01'>{{item.carNumber}}</text> | <text class='txt01'>{{item.carNumber}}</text> | ||||
<view class='tche' hover-class='button_active' bindtap='gotopay'> | |||||
<button class='btn001'>停车缴费</button> | |||||
</view> | |||||
</view> | </view> | ||||
</swiper-item> | </swiper-item> | ||||
</block> | </block> | ||||
@@ -55,23 +44,37 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<!-- 没有车牌的时候显示 --> | |||||
<view class='borderUp' bindtap='jumpToAdd' wx:if="{{carList.length==0}}"> | |||||
<view class="myCars"> | |||||
<image src='./../../assets/img/add.png' mode="widthFix"></image>我的爱车</view> | |||||
<text class='carNumber'>车辆入场后,才能绑车牌</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class='orderBox' wx:if='{{item.stopFee.parkingFee}}'> | |||||
<view class='priceBox'> | |||||
<text>入场时间:{{item.stopFee.entranceTime}}</text> | |||||
</view> | |||||
<view class='priceBox right'> | |||||
<text class="textRight">停车费用:¥{{item.stopFee.parkingFee}}</text> | |||||
</view> | |||||
</view> | |||||
<!-- <view class='orderBox clearfix' wx:if='{{item.stopFee.parkingFee}}'> --> | |||||
<view class='orderBox' wx:key="{{index}}" wx:for="{{carList}}" wx:if="{{carList.length>0&&3>=carList.length}}"> | |||||
<view class='clearfix'> | |||||
<text class="fl">入场时间:</text> | |||||
<text class='fr time'>{{item.stopFee.entranceTime}}</text> | |||||
</view> | |||||
<view class='coupon clearfix'> | |||||
<text class='fl'><text class='jians'>惠</text>优免券:</text> | |||||
<text class='fr'>2小时优免券</text> | |||||
</view> | |||||
<view class="clearfix"> | |||||
<text class="fl">待缴费用:</text> | |||||
<text class='fr'>{{item.stopFee.parkingFee}}<text class='yuan'>元</text></text> | |||||
</view> | |||||
<view bindtap='bindCoupon' class="buy-view" wx:if="{{buttonBox&&carList.length>0&&3>=carList.length}}"> | |||||
<navigator class='buyBox' target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data='{{extraData}}' version="release"> | |||||
</navigator> | |||||
<button class='buy' hover-class='active'>立即支付</button> | |||||
</view> | </view> | ||||
</view> | </view> | ||||
<!-- 没有车牌的时候显示 --> | |||||
<view class='borderUp' bindtap='jumpToAdd' wx:if="{{carList.length==0}}"> | |||||
<view class="myCars"> | |||||
<image src='./../../assets/img/add.png' mode="widthFix"></image>我的爱车</view> | |||||
<text class='carNumber'>车辆入场后,才能绑车牌</text> | |||||
</view> | |||||
<view class='bottonBox'> | <view class='bottonBox'> | ||||
<navigator url="/pages/passCar/couponList/couponList"> | <navigator url="/pages/passCar/couponList/couponList"> | ||||
<view class='textStyle' bindtap='showquan'> | <view class='textStyle' bindtap='showquan'> | ||||
@@ -82,16 +85,7 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</navigator> | </navigator> | ||||
<!-- <view class='passNumberBox' wx:for='{{couponList}}' wx:key='{{index}}'> | |||||
<view class='voucher' wx:if="!{{tcq==1}}"> | |||||
<text class='textV1 textV3'>{{item.title}}</text> | |||||
<text class='textV2'>{{item.merchantName}}</text> | |||||
<text class='textV1'>{{'- '+item.price/100+'小时'}}</text> | |||||
<view class='choice'> | |||||
<image src='../../assets/img/choiced.png'></image> | |||||
</view> | |||||
</view> | |||||
</view> --> | |||||
<view class='textStyle' bindtap='passc'> | <view class='textStyle' bindtap='passc'> | ||||
<image src='../../assets/img/wenti.png'></image> | <image src='../../assets/img/wenti.png'></image> | ||||
常见问题 | 常见问题 | ||||
@@ -100,9 +94,19 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view bindtap='bindCoupon' class="buy-view app-border-top" wx:if="{{buttonBox}}"> | |||||
<view class='passNumberBox' wx:for='{{couponList}}' wx:key='{{index}}'> | |||||
<view class='voucher' wx:if="!{{tcq==1}}"> | |||||
<text class='textV1 textV3'>{{item.title}}</text> | |||||
<text class='textV2'>{{item.merchantName}}</text> | |||||
<text class='textV1'>{{'- '+item.price/100+'小时'}}</text> | |||||
<view class='choice'> | |||||
<image src='../../assets/img/choiced.png'></image> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<!-- <view bindtap='bindCoupon' class="buy-view app-border-top" wx:if="{{buttonBox}}"> | |||||
<navigator wx:if="{{flag==1||flags=='alreadybind'}}" class='buyBox' target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data='{{extraData}}' version="trial"> | <navigator wx:if="{{flag==1||flags=='alreadybind'}}" class='buyBox' target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data='{{extraData}}' version="trial"> | ||||
</navigator> | </navigator> | ||||
<button class='buy'>立即支付</button> | <button class='buy'>立即支付</button> | ||||
</view> | |||||
</view> --> | |||||
</view> | </view> |
@@ -5,11 +5,9 @@ page { | |||||
} | } | ||||
.headBox { | .headBox { | ||||
margin-top: 13rpx; | |||||
width: 750rpx; | |||||
height: 210rpx; | |||||
width: 690rpx; | |||||
margin: 30rpx auto 0; | |||||
box-sizing: border-box; | box-sizing: border-box; | ||||
padding: 30rpx 40rpx; | |||||
display: flex; | display: flex; | ||||
background-color: white; | background-color: white; | ||||
} | } | ||||
@@ -21,20 +19,15 @@ page { | |||||
border-radius: 16rpx; | border-radius: 16rpx; | ||||
} | } | ||||
.numberBox { | |||||
width: 400rpx; | |||||
height: 150rpx; | |||||
} | |||||
.titleName { | .titleName { | ||||
line-height: 60rpx; | |||||
height: 60rpx; | |||||
width: 100%; | |||||
line-height: 35rpx; | |||||
height: 35rpx; | |||||
color: #666; | color: #666; | ||||
font-size: 32rpx; | font-size: 32rpx; | ||||
width: 400rpx; | |||||
word-break: break-all; | word-break: break-all; | ||||
text-align: justify; | text-align: justify; | ||||
margin-bottom: 10rpx; | |||||
font-weight:bold; | |||||
} | } | ||||
::-webkit-scrollbar { | ::-webkit-scrollbar { | ||||
@@ -44,17 +37,48 @@ page { | |||||
} | } | ||||
.carLocation, .locationNumber { | .carLocation, .locationNumber { | ||||
width: 400rpx; | |||||
display: inline-block; | |||||
height: 40rpx; | height: 40rpx; | ||||
color: #666; | |||||
color: #999; | |||||
font-size: 24rpx; | font-size: 24rpx; | ||||
line-height: 30rpx; | line-height: 30rpx; | ||||
} | } | ||||
.price { | |||||
.carLocation { | |||||
width: 206rpx; | |||||
font-size: 28rpx; | font-size: 28rpx; | ||||
} | } | ||||
.yuan { | |||||
display: inline-block; | |||||
margin-left: 6rpx; | |||||
color: #333; | |||||
} | |||||
.price { | |||||
font-size: 28rpx; | |||||
color: #999; | |||||
width: 100%; | |||||
margin-top: 10rpx; | |||||
line-height: 40rpx; | |||||
} | |||||
.time{ | |||||
color: #999!important; | |||||
} | |||||
.price .fl{ | |||||
width: 15%; | |||||
color: #666; | |||||
} | |||||
.price .fr{ | |||||
width: 85%; | |||||
color: #999; | |||||
line-height: 40rpx; | |||||
font-size: 26rpx; | |||||
} | |||||
.titleName .fr{ | |||||
color: #999; | |||||
font-size: 27rpx; | |||||
} | |||||
.borderBox { | .borderBox { | ||||
width: 750rpx; | width: 750rpx; | ||||
margin-top: 26rpx; | margin-top: 26rpx; | ||||
@@ -68,6 +92,7 @@ page { | |||||
border-radius: 16rpx; | border-radius: 16rpx; | ||||
padding-bottom: 40rpx; | padding-bottom: 40rpx; | ||||
height: 202rpx; | height: 202rpx; | ||||
margin-top: 47rpx; | |||||
} | } | ||||
.addicense_active { | .addicense_active { | ||||
@@ -136,9 +161,9 @@ page { | |||||
} | } | ||||
.textStyle image { | .textStyle image { | ||||
width: 50rpx; | |||||
height: 50rpx; | |||||
top: 20rpx; | |||||
width: 40rpx; | |||||
height: 40rpx; | |||||
top: 27rpx; | |||||
left: 27rpx; | left: 27rpx; | ||||
position: absolute; | position: absolute; | ||||
} | } | ||||
@@ -146,6 +171,7 @@ page { | |||||
.swiper { | .swiper { | ||||
position: relative; | position: relative; | ||||
margin: 0 auto; | margin: 0 auto; | ||||
height: 262rpx; | |||||
} | } | ||||
.swiper-item { | .swiper-item { | ||||
@@ -156,41 +182,44 @@ page { | |||||
color: rgba(255, 255, 255, 1); | color: rgba(255, 255, 255, 1); | ||||
} | } | ||||
.swiper-item > view { | |||||
.swiper-item .clearfix1 { | |||||
background: #bbe6ff; | background: #bbe6ff; | ||||
border-radius: 12rpx; | border-radius: 12rpx; | ||||
padding: 6rpx; | padding: 6rpx; | ||||
} | } | ||||
.tche { | .tche { | ||||
width: 157rpx; | |||||
height: 211rpx; | |||||
width: 685rpx; | |||||
height: 88rpx; | |||||
line-height: 88rpx; | |||||
margin: 0 auto; | margin: 0 auto; | ||||
float: right; | |||||
border-radius: 12rpx; | |||||
background: #56bdf8; | background: #56bdf8; | ||||
border: 3px solid #fff; | |||||
border-radius: 60rpx; | |||||
position: relative; | position: relative; | ||||
margin-top: 30rpx; | |||||
} | } | ||||
.txt01 { | .txt01 { | ||||
width: 497rpx; | |||||
height: 211rpx; | |||||
line-height: 211rpx; | |||||
width: 667rpx; | |||||
height: 180rpx; | |||||
line-height: 180rpx; | |||||
float: left; | float: left; | ||||
background: #56bdf8; | background: #56bdf8; | ||||
border-radius: 12rpx; | border-radius: 12rpx; | ||||
border: 3px solid #fff; | border: 3px solid #fff; | ||||
text-align: center; | text-align: center; | ||||
font-size: 60rpx; | |||||
} | } | ||||
.passNumberBox { | .passNumberBox { | ||||
position: relative; | position: relative; | ||||
background-color: white; | background-color: white; | ||||
/* border-bottom: 1rpx #f8f8f8 solid; */ | /* border-bottom: 1rpx #f8f8f8 solid; */ | ||||
margin-top: 30rpx; | |||||
margin-top: 60rpx; | |||||
} | |||||
.numberBox{ | |||||
width: 100%; | |||||
} | } | ||||
.passNumber { | .passNumber { | ||||
width: 400rpx; | width: 400rpx; | ||||
height: 100rpx; | height: 100rpx; | ||||
@@ -226,19 +255,17 @@ page { | |||||
} | } | ||||
.button_active { | .button_active { | ||||
opacity: .6; | |||||
opacity: 0.6; | |||||
} | } | ||||
.btn001 { | .btn001 { | ||||
height: 88rpx; | |||||
line-height: 88rpx; | |||||
margin: 0 auto; | margin: 0 auto; | ||||
width: 120rpx; | |||||
height: 75rpx; | |||||
font-size: 32rpx; | |||||
font-size: 30rpx; | |||||
font-weight: 400; | font-weight: 400; | ||||
color: rgba(255, 255, 255, 1); | |||||
line-height: 38rpx; | |||||
color: #fff; | |||||
background: none; | background: none; | ||||
margin-top: 67rpx; | |||||
} | } | ||||
.parkPrice { | .parkPrice { | ||||
@@ -348,30 +375,40 @@ page { | |||||
.buy-view { | .buy-view { | ||||
background: #fff; | background: #fff; | ||||
position: relative; | position: relative; | ||||
padding-top: 10rpx; | |||||
height: 98rpx; | |||||
bottom: 0rpx; | |||||
height: 88rpx; | |||||
margin-top: 50rpx; | margin-top: 50rpx; | ||||
/* left: 0; | |||||
right: 0; */ | |||||
} | } | ||||
.buy { | .buy { | ||||
background: #00c0ff; | |||||
background: #56bdf8; | |||||
height: 88rpx; | height: 88rpx; | ||||
width: 98%; | width: 98%; | ||||
margin: 0 auto; | margin: 0 auto; | ||||
color: #fff; | color: #fff; | ||||
font-size: 36rpx; | font-size: 36rpx; | ||||
line-height: 88rpx; | line-height: 88rpx; | ||||
border-radius: 6rpx; | |||||
border-radius: 60rpx; | |||||
position: relative; | position: relative; | ||||
z-index: 100; | z-index: 100; | ||||
} | } | ||||
.buyBox { | |||||
height: 88rpx; | |||||
width: 98%; | |||||
position: absolute; | |||||
left: 0; | |||||
top: 0; | |||||
z-index: 100000000; | |||||
border-radius:60rpx; | |||||
} | |||||
.active { | |||||
opacity: 0.6; | |||||
} | |||||
.borderBox { | .borderBox { | ||||
width: 690rpx; | width: 690rpx; | ||||
margin: 20rpx auto 0; | |||||
margin: 50rpx auto 0; | |||||
} | } | ||||
.carmanage { | .carmanage { | ||||
@@ -435,23 +472,20 @@ page { | |||||
} | } | ||||
.orderBox { | .orderBox { | ||||
width: 100%; | |||||
height: 100rpx; | |||||
border-top: 1rpx #f8f8f8 solid; | |||||
padding: 0 20rpx; | |||||
position: relative; | position: relative; | ||||
display: flex; | |||||
} | } | ||||
.priceBox { | .priceBox { | ||||
width: 420rpx; | |||||
display: inline-block; | |||||
width: 355rpx; | |||||
} | } | ||||
.priceBox text { | .priceBox text { | ||||
margin-top: 35rpx; | |||||
color: #333; | color: #333; | ||||
font-size: 24rpx; | |||||
margin-left: 50rpx; | |||||
font-size: 28rpx; | |||||
display: block; | display: block; | ||||
text-align: left; | |||||
} | } | ||||
.payBox { | .payBox { | ||||
@@ -479,24 +513,16 @@ button::after { | |||||
} | } | ||||
.right { | .right { | ||||
display: inline-block; | |||||
width: 328rpx; | width: 328rpx; | ||||
} | } | ||||
.textRight { | .textRight { | ||||
margin-left: 0; | margin-left: 0; | ||||
margin-right: 25rpx; | margin-right: 25rpx; | ||||
text-align: right; | |||||
text-align: left; | |||||
font-size: 30rpx !important; | font-size: 30rpx !important; | ||||
color: red !important; | |||||
} | |||||
.buyBox { | |||||
width: 750rpx; | |||||
height: 88rpx; | |||||
position: absolute; | |||||
left: 0; | |||||
top: 0; | |||||
z-index: 100000000; | |||||
color: #333 !important; | |||||
} | } | ||||
.myCars image { | .myCars image { | ||||
@@ -540,3 +566,33 @@ button::after { | |||||
background: rgba(86, 189, 248, 1); | background: rgba(86, 189, 248, 1); | ||||
border-radius: 6rpx; | border-radius: 6rpx; | ||||
} | } | ||||
.coupon { | |||||
font-size: 28rpx; | |||||
color: #666; | |||||
} | |||||
.orderBox .fl { | |||||
line-height: 60rpx; | |||||
font-size: 28rpx; | |||||
color: #333; | |||||
} | |||||
.orderBox .fr { | |||||
line-height: 60rpx; | |||||
font-size: 28rpx; | |||||
color: #FF4949; | |||||
} | |||||
.jians { | |||||
font-size: 22rpx; | |||||
display: inline-block; | |||||
width: 34rpx; | |||||
height: 34rpx; | |||||
text-align: center; | |||||
background: orange; | |||||
line-height: 34rpx; | |||||
color: #fff; | |||||
border-radius: 6rpx; | |||||
margin-right: 6rpx; | |||||
} |
@@ -98,10 +98,10 @@ class HttpBasics { | |||||
resolve(res.data); | resolve(res.data); | ||||
} else { | } else { | ||||
// wx.hideLoading(); | // wx.hideLoading(); | ||||
wx.showToast({ | |||||
title: res.data.message, | |||||
image:'./../../assets/img/fail.png' | |||||
}); | |||||
// wx.showToast({ | |||||
// title: res.data.message, | |||||
// image:'./../../assets/img/fail.png' | |||||
// }); | |||||
reject(res.data); | reject(res.data); | ||||
} | } | ||||
} | } | ||||