| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
742528d35f | edit | 7 years ago |
|
|
3f675a4d77 | edit | 7 years ago |
|
|
bb46090eda | edit | 7 years ago |
|
|
58f065d023 | edit | 7 years ago |
| @@ -1,6 +1,7 @@ | |||||
| { | { | ||||
| "pages": [ | "pages": [ | ||||
| "pages/index/index", | "pages/index/index", | ||||
| "pages/passCar/choiceCar/choiceCar", | |||||
| "pages/bannerdetail/index", | "pages/bannerdetail/index", | ||||
| "pages/getuserinfo/index", | "pages/getuserinfo/index", | ||||
| "pages/phoneinput/phoneinput", | "pages/phoneinput/phoneinput", | ||||
| @@ -20,7 +21,8 @@ | |||||
| "pages/passCar/passCar", | "pages/passCar/passCar", | ||||
| "pages/getphoneInfo/index", | "pages/getphoneInfo/index", | ||||
| "pages/addPark/addPark", | "pages/addPark/addPark", | ||||
| "pages/orderquanma/index" | |||||
| "pages/orderquanma/index", | |||||
| "pages/passCar/couponList/couponList" | |||||
| ], | ], | ||||
| "tabBar": { | "tabBar": { | ||||
| "color": "#9F9F9F", | "color": "#9F9F9F", | ||||
| @@ -57,4 +59,4 @@ | |||||
| "downloadFile": 10000 | "downloadFile": 10000 | ||||
| }, | }, | ||||
| "debug": false | "debug": false | ||||
| } | |||||
| } | |||||
| @@ -129,6 +129,7 @@ var config = { | |||||
| */ | */ | ||||
| getStatus:"/couponOrder/getStatus" | getStatus:"/couponOrder/getStatus" | ||||
| }, | }, | ||||
| weapp: { | weapp: { | ||||
| AppId: "wxb11603577a84a86d" | AppId: "wxb11603577a84a86d" | ||||
| }, | }, | ||||
| @@ -5,6 +5,7 @@ const util = require("../../../utils/util"); | |||||
| Page({ | Page({ | ||||
| data: { | data: { | ||||
| data: {}, | data: {}, | ||||
| carList: [], | |||||
| couponChannelId: null, | couponChannelId: null, | ||||
| couponId: null, | couponId: null, | ||||
| orderId: "", | orderId: "", | ||||
| @@ -91,6 +92,73 @@ Page({ | |||||
| console.log("payOrderUpdate catch", err); | console.log("payOrderUpdate catch", err); | ||||
| }); | }); | ||||
| }, | }, | ||||
| /** | |||||
| * 拉取车牌列表 | |||||
| */ | |||||
| init: function () { | |||||
| var that = this | |||||
| app.parkInitCallback = token => { | |||||
| that.initPark() | |||||
| that.initUsrCarList() | |||||
| if (!app.globalData.carLogin) { | |||||
| // 共同登录 | |||||
| Http.post({ | |||||
| url: config.api.carInit, | |||||
| data: { | |||||
| phone: app.globalData.phone | |||||
| } | |||||
| }).then(res => { | |||||
| app.globalData.carLogin = true | |||||
| app.globalData.parkVendor = res.data.vendor | |||||
| if (res.data.token != "undefined") { | |||||
| app.globalData.etcpToken = res.data.token | |||||
| console.log("etcpToken", app.globalData.etcpToken) | |||||
| } | |||||
| // 获取 停车费 | |||||
| that.getStopFee() | |||||
| }) | |||||
| } | |||||
| } | |||||
| if (app.globalData.token && app.globalData.token != null) { | |||||
| app.parkInitCallback(app.globalData.token) | |||||
| } | |||||
| }, | |||||
| getStopFee: function () { | |||||
| var that = this | |||||
| // carLogin | |||||
| for (var i = 0; i < that.data.carList.length; i++) { | |||||
| that.getStopFeeItem(that.data.carList[i], i) | |||||
| } | |||||
| // console.log(JSON.stringify(getStopFeeItem)) | |||||
| }, | |||||
| initPark: function () { | |||||
| var that = this | |||||
| // 车场信息获取 | |||||
| Http.get({ | |||||
| url: config.api.getParkInfo, | |||||
| data: {} | |||||
| }) | |||||
| .then(res => { | |||||
| console.log(res) | |||||
| that.setData({ | |||||
| park: res.data, | |||||
| }) | |||||
| }) | |||||
| }, | |||||
| initUsrCarList: function () { | |||||
| var that = this | |||||
| // 绑定车获取 | |||||
| Http.get({ | |||||
| url: config.api.getUserCarList, | |||||
| data: {} | |||||
| }).then(res => { | |||||
| console.log('>>>>>>>>>>>>>>>>>1' + JSON.stringify(res)); | |||||
| that.setData({ | |||||
| carList: res.data | |||||
| }) | |||||
| }) | |||||
| }, | |||||
| /** | /** | ||||
| * 发起支付 | * 发起支付 | ||||
| */ | */ | ||||
| @@ -99,9 +167,12 @@ Page({ | |||||
| wx.showLoading({ | wx.showLoading({ | ||||
| title: "加载中..." | title: "加载中..." | ||||
| }); | }); | ||||
| if (that.data.type == 5) { | |||||
| if (that.data.data.type == 6) { | |||||
| this.initUsrCarList() | |||||
| // 领取 5.停车券 | // 领取 5.停车券 | ||||
| // TODO 选取用户下的车牌 | // TODO 选取用户下的车牌 | ||||
| console.log(1111111111111) | |||||
| } else { | } else { | ||||
| Http.post({ | Http.post({ | ||||
| url: config.api.checkPhoneStatus, | url: config.api.checkPhoneStatus, | ||||
| @@ -279,6 +350,16 @@ Page({ | |||||
| console.log(res); | console.log(res); | ||||
| console.log("支付完成"); | console.log("支付完成"); | ||||
| if (res.errMsg == "requestPayment:ok") { | if (res.errMsg == "requestPayment:ok") { | ||||
| if (that.data.data.type == 5) { | |||||
| setTimeout(() => { | |||||
| wx.switchTab({ | |||||
| url: '/pages/passCar/passCar' | |||||
| }); | |||||
| }, 1600); | |||||
| // this.initUsrCarList() | |||||
| // 领取 5.停车券 | |||||
| // TODO 选取用户下的车牌 | |||||
| } | |||||
| } else { | } else { | ||||
| wx.showToast({ | wx.showToast({ | ||||
| title: "支付失败", | title: "支付失败", | ||||
| @@ -300,11 +381,21 @@ Page({ | |||||
| } else { | } else { | ||||
| // 免费券 | // 免费券 | ||||
| that.payOrderUpdate(orderId, "0", 1); | that.payOrderUpdate(orderId, "0", 1); | ||||
| wx.showToast({ | wx.showToast({ | ||||
| title: "领取成功", | title: "领取成功", | ||||
| duration: 3000, | duration: 3000, | ||||
| image: "./../../../assets/img/success.png" | image: "./../../../assets/img/success.png" | ||||
| }); | }); | ||||
| //////////////////////////停车券 | |||||
| console.log(that.data.data.type) | |||||
| if (that.data.data.type == 5) { | |||||
| setTimeout(() => { | |||||
| wx.switchTab({ | |||||
| url: '/pages/passCar/passCar' | |||||
| }); | |||||
| }, 1600); | |||||
| } | |||||
| } | } | ||||
| } | } | ||||
| }) | }) | ||||
| @@ -44,12 +44,12 @@ Page({ | |||||
| }, | }, | ||||
| getList(key, pageNum) { | getList(key, pageNum) { | ||||
| var that = this; | var that = this; | ||||
| console.log(key); | |||||
| console.log(pageNum); | |||||
| // console.log(key); | |||||
| // console.log(pageNum); | |||||
| if (that.data.allow_load) { | if (that.data.allow_load) { | ||||
| that.setData({ | that.setData({ | ||||
| loading: true, | loading: true, | ||||
| content: "小主,我在玩命加载中..." | |||||
| content: "小主,我在玩命加载中...", | |||||
| }); | }); | ||||
| Http.get({ | Http.get({ | ||||
| url: config.api.couponOrderList, | url: config.api.couponOrderList, | ||||
| @@ -0,0 +1,273 @@ | |||||
| // pages/passCar/passCar.js | |||||
| let config = require('../../../config/config.js') | |||||
| let Http = require('../../../utils/HttpBasics') | |||||
| const app = getApp(); | |||||
| Page({ | |||||
| data: { | |||||
| park: null, | |||||
| carList: [], | |||||
| addCar: null, | |||||
| tcq: 2 | |||||
| }, | |||||
| // ready() { | |||||
| // app.couponChannelListCallback = token => { | |||||
| // Http.setToken(token); | |||||
| // Http.get({ | |||||
| // url: config.api.couponChannelList, | |||||
| // data: { | |||||
| // pageNum: 1, | |||||
| // pageSize: 2, | |||||
| // targetAd: 2 | |||||
| // } | |||||
| // }).then(res => { | |||||
| // console.log(res); | |||||
| // this.setData({ | |||||
| // list: res.data.list | |||||
| // }); | |||||
| // }); | |||||
| // }; | |||||
| // }, | |||||
| /*车牌动态样式 */ | |||||
| changeStyle: function () { | |||||
| var height = this.data.dataHeight == '150rpx' ? '80rpx' : '150rpx'; | |||||
| var lineHeight = this.data.dataHeight == '150rpx' ? '80rpx' : '150rpx'; | |||||
| var fontWeight = this.data.fontWeight == '600' ? '500' : '600'; | |||||
| this.setData({ | |||||
| dataHeight: height, | |||||
| dataLineHeight: lineHeight, | |||||
| dataFontWeight: fontWeight | |||||
| }); | |||||
| }, | |||||
| onLoad: function (options) { | |||||
| var that = this | |||||
| that.init(); | |||||
| }, | |||||
| onShow: function (options) { | |||||
| var that = this | |||||
| if (options) | |||||
| console.log(options) | |||||
| if (that.data.addCar) { | |||||
| console.log(JSON.stringify(that.data.addCar)) | |||||
| // 绑车牌 | |||||
| if (app.globalData.carLogin) { | |||||
| that.bindCar(that.data.addCar) | |||||
| } else { | |||||
| that.bindCar(that.data.addCar) | |||||
| } | |||||
| that.setData({ | |||||
| addCar: null | |||||
| }) | |||||
| } | |||||
| }, | |||||
| //我的停车券的显示与消失 | |||||
| showquan: function () { | |||||
| let that = this; | |||||
| if (that.data.tcq == 1) { | |||||
| that.setData({ | |||||
| tcq: 2 | |||||
| }) | |||||
| } | |||||
| else if (that.data.tcq == 2) { | |||||
| that.setData({ | |||||
| tcq: 1 | |||||
| }) | |||||
| } | |||||
| }, | |||||
| jumpToAdd: function () { | |||||
| wx.navigateTo({ | |||||
| url: '/pages/addPark/addPark', | |||||
| }); | |||||
| }, | |||||
| jumpToPay: function () { | |||||
| console.log("停车支付去") | |||||
| //wx.redirectTo({ | |||||
| // url: '/pages/pay/pay', | |||||
| //}) | |||||
| }, | |||||
| passb: function () { | |||||
| wx.showToast({ | |||||
| title: '货物在路上~', | |||||
| }) | |||||
| }, | |||||
| passc: function () { | |||||
| wx.showToast({ | |||||
| title: '宝宝最可爱~', | |||||
| }) | |||||
| }, | |||||
| orderPay: function () { | |||||
| wx.redirectTo({ | |||||
| url: '/pages/pay/pay' | |||||
| }); | |||||
| }, | |||||
| 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 () { } | |||||
| }) | |||||
| }) | |||||
| }, | |||||
| 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) { | |||||
| var that = this | |||||
| var postData = | |||||
| (app.globalData.parkVendor == 1) ? { | |||||
| etcpToken: app.globalData.etcpToken, | |||||
| carNumber: carItem.carNumber, | |||||
| } : { | |||||
| carNumber: carItem.carNumber, | |||||
| outCarId: carItem.outCarId, | |||||
| } | |||||
| var stopFee = 'carList[' + i + '].stopFee' | |||||
| var extraData = 'carList[' + i + '].extraData' | |||||
| var extraDataStr = { params: { CarNumber: carItem.carNumber } } | |||||
| console.log(postData) | |||||
| Http.post({ | |||||
| url: config.api.getCarStopFee, | |||||
| data: postData | |||||
| }) | |||||
| .then(res => { | |||||
| console.log(res) | |||||
| console.log(stopFee) | |||||
| that.setData({ | |||||
| [stopFee]: res.data, | |||||
| [extraData]: extraDataStr | |||||
| }) | |||||
| }) | |||||
| .catch(error => { | |||||
| console.log(error) | |||||
| }) | |||||
| }, | |||||
| getStopFee: function () { | |||||
| var that = this | |||||
| // carLogin | |||||
| for (var i = 0; i < that.data.carList.length; i++) { | |||||
| that.getStopFeeItem(that.data.carList[i], i) | |||||
| } | |||||
| // console.log(JSON.stringify(getStopFeeItem)) | |||||
| }, | |||||
| initPark: function () { | |||||
| var that = this | |||||
| // 车场信息获取 | |||||
| Http.get({ | |||||
| url: config.api.getParkInfo, | |||||
| data: {} | |||||
| }) | |||||
| .then(res => { | |||||
| console.log(res) | |||||
| that.setData({ | |||||
| park: res.data, | |||||
| }) | |||||
| }) | |||||
| }, | |||||
| initUsrCarList: function () { | |||||
| var that = this | |||||
| // 绑定车获取 | |||||
| Http.get({ | |||||
| url: config.api.getUserCarList, | |||||
| data: {} | |||||
| }).then(res => { | |||||
| console.log(res); | |||||
| that.setData({ | |||||
| carList: res.data | |||||
| }) | |||||
| }) | |||||
| }, | |||||
| init: function () { | |||||
| var that = this | |||||
| app.parkInitCallback = token => { | |||||
| that.initPark() | |||||
| that.initUsrCarList() | |||||
| if (!app.globalData.carLogin) { | |||||
| // 共同登录 | |||||
| Http.post({ | |||||
| url: config.api.carInit, | |||||
| data: { | |||||
| phone: app.globalData.phone | |||||
| } | |||||
| }).then(res => { | |||||
| app.globalData.carLogin = true | |||||
| app.globalData.parkVendor = res.data.vendor | |||||
| if (res.data.token != "undefined") { | |||||
| app.globalData.etcpToken = res.data.token | |||||
| console.log("etcpToken", app.globalData.etcpToken) | |||||
| } | |||||
| // 获取 停车费 | |||||
| that.getStopFee() | |||||
| }) | |||||
| } | |||||
| } | |||||
| if (app.globalData.token && app.globalData.token != null) { | |||||
| app.parkInitCallback(app.globalData.token) | |||||
| } | |||||
| } | |||||
| }) | |||||
| @@ -0,0 +1,3 @@ | |||||
| { | |||||
| "navigationBarTitleText": "券绑车牌" | |||||
| } | |||||
| @@ -0,0 +1,29 @@ | |||||
| <view class='container'> | |||||
| <view class='borderBox'> | |||||
| <view class='borderUp'>我的爱车 | |||||
| <label class='carNumber'></label> | |||||
| </view> | |||||
| <view class='passNumberBox' wx:for='{{carList}}' wx:key='{{index}}'> | |||||
| <view class='passUp'> | |||||
| <view class='passNumber' bindtap='orderPay' style='height:{{dataHeight}};font-weight:{{dataWeight}};line-height:{{dataLineHeight}}'> | |||||
| <text class='number'>{{item.carNumber}}</text> | |||||
| </view> | |||||
| <button class='deleteButton' bindtap='unbindCarBtn' data-car='{{item.carNumber}}'>解绑</button> | |||||
| </view> | |||||
| <view class='orderBox' wx:if='{{item.remainingFee}}'> | |||||
| <view class='priceBox'> | |||||
| <text>{{'待支付金额:¥'+item.remainingFee}}</text> | |||||
| </view> | |||||
| <view class='payBox'> | |||||
| <navigator target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data="{{item.extraData}}" version="release"> | |||||
| <button>去支付</button> | |||||
| </navigator> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| <view class='addBox' wx:if='{{carList.length<3}}'> | |||||
| <view class='add' bindtap="jumpToAdd"> | |||||
| <text>+</text>添加爱车</view> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| @@ -0,0 +1,291 @@ | |||||
| /**passCar.wxss**/ | |||||
| page{ | |||||
| background-color: #f8f8f8; | |||||
| } | |||||
| .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{ | |||||
| padding: 50rpx; | |||||
| width: 650rpx; | |||||
| height: 50rpx; | |||||
| line-height: 50rpx; | |||||
| font-size: 36rpx; | |||||
| color: #333; | |||||
| border-bottom: 1rpx #f8f8f8 solid; | |||||
| background-color: white; | |||||
| } | |||||
| .carNumber{ | |||||
| padding: 50rpx; | |||||
| height: 50rpx; | |||||
| line-height: 50rpx; | |||||
| font-size: 28rpx; | |||||
| color: #cbcbcb; | |||||
| background-color: white; | |||||
| } | |||||
| .addBox{ | |||||
| width: 750rpx; | |||||
| height: 220rpx; | |||||
| 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: 75rpx; | |||||
| } | |||||
| .textStyle{ | |||||
| background-color: white; | |||||
| height: 90rpx; | |||||
| line-height: 90rpx; | |||||
| padding-left: 130rpx; | |||||
| color: #333; | |||||
| font-size: 28rpx; | |||||
| letter-spacing: 1rpx; | |||||
| border-bottom: 1rpx #f8f8f8 solid; | |||||
| position: relative; | |||||
| } | |||||
| .textStyle image{ | |||||
| width: 50rpx; | |||||
| height: 50rpx; | |||||
| top: 20rpx; | |||||
| left: 50rpx; | |||||
| position: absolute; | |||||
| } | |||||
| .passNumberBox{ | |||||
| width: 750rpx; | |||||
| position: relative; | |||||
| background-color: white; | |||||
| border-bottom: 1rpx #f8f8f8 solid ; | |||||
| } | |||||
| .passNumber{ | |||||
| width: 400rpx; | |||||
| height: 150rpx; | |||||
| font-size: 32rpx; | |||||
| font-weight: 600; | |||||
| line-height: 150rpx; | |||||
| left: 55rpx; | |||||
| position: absolute; | |||||
| } | |||||
| .nopay{ | |||||
| height: 80rpx; | |||||
| line-height: 80rpx; | |||||
| font-weight: 400; | |||||
| } | |||||
| .number{ | |||||
| font-size: 32rpx; | |||||
| } | |||||
| .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%); | |||||
| } | |||||
| .detail{ | |||||
| width: 32rpx; | |||||
| height: 32rpx; | |||||
| right: 50rpx; | |||||
| top: 32rpx; | |||||
| position: absolute; | |||||
| } | |||||
| .detail image{ | |||||
| width: 32rpx; | |||||
| height: 32rpx; | |||||
| position: absolute; | |||||
| left: 0; | |||||
| top: 0; | |||||
| } | |||||
| .voucher{ | |||||
| width: 90%; | |||||
| padding: 0 5%; | |||||
| background-color: rgb(255, 178, 50); | |||||
| /* background-color: #cbcbcb; */ | |||||
| height: 80rpx; | |||||
| position: relative; | |||||
| margin: 24rpx 0; | |||||
| border-bottom: 2rpx #fff solid; | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| } | |||||
| .textV1,.textV2{ | |||||
| height: 58rpx; | |||||
| width: 225rpx; | |||||
| padding-top: 22rpx; | |||||
| text-align: center; | |||||
| line-height: 80rxp; | |||||
| font-size: 28rpx; | |||||
| color: #fff; | |||||
| } | |||||
| .textV2{ | |||||
| margin-top: -1rpx; | |||||
| padding: 0; | |||||
| /* background-color: rgb(0, 192, 255); */ | |||||
| border-radius: 10rpx; | |||||
| width: 221rpx; | |||||
| height: 80rpx; | |||||
| line-height: 80rpx; | |||||
| font-size: 36rpx; | |||||
| border: 4rpx #fff solid; | |||||
| margin-bottom: 22rpx; | |||||
| } | |||||
| /* .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: 30rpx auto; | |||||
| color: #fff; | |||||
| font-size: 36rpx; | |||||
| line-height: 88rpx; | |||||
| border-radius: 6rpx; | |||||
| } | |||||
| .borderBox{ | |||||
| width: 750rpx; | |||||
| margin-top: 26rpx; | |||||
| } | |||||
| .orderBox { | |||||
| width: 100%; | |||||
| height: 100rpx; | |||||
| border-top: 1rpx #f8f8f8 solid; | |||||
| position: relative; | |||||
| display: flex; | |||||
| } | |||||
| .passUp { | |||||
| width: 100%; | |||||
| height: 150rpx; | |||||
| position: relative; | |||||
| } | |||||
| .priceBox{ | |||||
| width: 500rpx; | |||||
| } | |||||
| .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; | |||||
| } | |||||
| @@ -0,0 +1,129 @@ | |||||
| const format = require("../../../utils/util.js"); | |||||
| const config = require("../../../config/config.js"); | |||||
| const app = getApp(); | |||||
| const Http = require("../../../utils/HttpBasics"); | |||||
| Page({ | |||||
| data: { | |||||
| tabs: [ | |||||
| { | |||||
| key: 0, | |||||
| name: "未使用" | |||||
| }, | |||||
| { | |||||
| key: 1, | |||||
| name: "已使用" | |||||
| }, | |||||
| { | |||||
| key: 2, | |||||
| name: "已过期" | |||||
| }, | |||||
| { | |||||
| key: 3, | |||||
| name: "已退款" | |||||
| } | |||||
| ], | |||||
| list: [], | |||||
| current: "0", | |||||
| current_scroll: "0", | |||||
| page: 1, | |||||
| allow_load: true | |||||
| }, | |||||
| onLoad() { | |||||
| this.getList(0, 0); | |||||
| }, | |||||
| //点击跳转到券详情页面 | |||||
| gotouse: function (e) { | |||||
| console.log(e.currentTarget.dataset.quancode); | |||||
| console.log("点击跳转到券详情"); | |||||
| wx.navigateTo({ | |||||
| url: `/pages/couponorder/detail/index?quancode=${ | |||||
| e.currentTarget.dataset.quancode | |||||
| }`, | |||||
| success: function (res) { | |||||
| // success | |||||
| console.log("点击跳转到券详情页面"); | |||||
| }, | |||||
| fail: function () { | |||||
| // fail | |||||
| }, | |||||
| complete: function () { | |||||
| // complete | |||||
| } | |||||
| }); | |||||
| }, | |||||
| getList(key, pageNum) { | |||||
| var that = this; | |||||
| console.log(key); | |||||
| console.log(pageNum); | |||||
| if (that.data.allow_load) { | |||||
| wx.showLoading({ | |||||
| title: "加载中" | |||||
| }); | |||||
| Http.get({ | |||||
| url: config.api.couponOrderList + "?type=5", | |||||
| data: { | |||||
| pageNum: pageNum, | |||||
| pageSize: 8, | |||||
| couponOrderStatus: key | |||||
| } | |||||
| }).then(res => { | |||||
| console.log(res); | |||||
| res.data.list.map(file => { | |||||
| file.expiredTime = format.formatTime( | |||||
| file.expiredTime, | |||||
| "yyyy-MM-dddd hh:mm:ss" | |||||
| ); | |||||
| }); | |||||
| console.log("姐姐的订单列表"); | |||||
| setTimeout(function () { | |||||
| wx.hideLoading(); | |||||
| }, 1200); | |||||
| if (pageNum >= res.data.pages) { | |||||
| that.setData({ | |||||
| allow_load: false | |||||
| }); | |||||
| } | |||||
| /** | |||||
| * 先赋值后渲染页面 | |||||
| * concat 不会改变原数组值 | |||||
| * push 会改变原数组值,但不会一条一条插入,而是整个数组插入 | |||||
| */ | |||||
| that.data.list = that.data.list.concat(res.data.list); | |||||
| that.setData({ | |||||
| list: that.data.list | |||||
| }); | |||||
| }); | |||||
| } else { | |||||
| console.log("加载完成allow_load设置成false"); | |||||
| } | |||||
| }, | |||||
| handleChange({ detail }) { | |||||
| console.log(detail); | |||||
| this.setData({ | |||||
| current: detail.key | |||||
| }); | |||||
| }, | |||||
| handleChangeScroll({ detail }) { | |||||
| this.setData({ | |||||
| list: [], | |||||
| allow_load: true, | |||||
| current_scroll: detail.key | |||||
| }); | |||||
| this.getList(detail.key, 1); | |||||
| this.setData({ | |||||
| current_scroll: detail.key | |||||
| }); | |||||
| }, | |||||
| onReachBottom: function () { | |||||
| var that = this; | |||||
| console.log(that.data.page); | |||||
| that.data.page++; | |||||
| console.log(that.data.page); | |||||
| that.setData({ | |||||
| page: that.data.page | |||||
| }); | |||||
| console.info("after++ " + that.data.page); | |||||
| that.getList(that.data.current_scroll, that.data.page); | |||||
| } | |||||
| }); | |||||
| @@ -0,0 +1,7 @@ | |||||
| { | |||||
| "usingComponents": { | |||||
| "i-tab": "../../../dist/tab/index", | |||||
| "i-tabs": "../../../dist/tabs/index" | |||||
| }, | |||||
| "navigationBarTitleText": "我的优惠劵" | |||||
| } | |||||
| @@ -0,0 +1,43 @@ | |||||
| <view class="market"> | |||||
| <!-- 券包 我的优惠券 --> | |||||
| <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-tabs> | |||||
| <view> | |||||
| <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> | |||||
| </navigator> | |||||
| </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> | |||||
| <view> | |||||
| <text class="txt1">有效期至:</text> | |||||
| <text class="txt2">{{item.expiredTime}}</text> | |||||
| </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> | |||||
| </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> | |||||
| </view> | |||||
| @@ -0,0 +1,165 @@ | |||||
| .market { | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| } | |||||
| .tabs { | |||||
| width: 100% !important; | |||||
| height: 88rpx; | |||||
| text-align: center; | |||||
| } | |||||
| .i-tab { | |||||
| width: 25% !important; | |||||
| display: inline-block; | |||||
| } | |||||
| .section { | |||||
| margin-top: 2%; | |||||
| } | |||||
| .section:nth-of-type(1) { | |||||
| margin-top: 30rpx; | |||||
| } | |||||
| .detail_msg { | |||||
| width: 92%; | |||||
| height: 202rpx !important; | |||||
| background: #fff; | |||||
| display: flex; | |||||
| padding: 0 4%; | |||||
| margin-top: 2%; | |||||
| border-bottom: 1px solid #ededed; | |||||
| } | |||||
| .logo { | |||||
| width: 348rpx; | |||||
| height: 184rpx; | |||||
| } | |||||
| .logo image { | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| border-radius: 15rpx; | |||||
| } | |||||
| .info view:nth-child(1) { | |||||
| display: flex; | |||||
| justify-content: space-between; | |||||
| padding: 0 4%; | |||||
| } | |||||
| .info { | |||||
| width: 100%; | |||||
| } | |||||
| .info view:nth-child(1) text { | |||||
| font-size: 30rpx; | |||||
| margin-top: 10rpx; | |||||
| color: #666; | |||||
| } | |||||
| .info view:nth-child(2) { | |||||
| color: #ff3434; | |||||
| font-size: 24rpx; | |||||
| padding-left: 4%; | |||||
| margin-top: 1%; | |||||
| } | |||||
| .info view:nth-child(3) { | |||||
| margin-left: 20rpx; | |||||
| } | |||||
| .btns { | |||||
| width: 200rpx; | |||||
| height: 60rpx; | |||||
| line-height: 60rpx; | |||||
| text-align: center; | |||||
| background: #00c0ff; | |||||
| color: #fff; | |||||
| float: right; | |||||
| border-radius: 15rpx; | |||||
| font-size: 28rpx; | |||||
| margin-top: 20rpx; | |||||
| } | |||||
| .txt1 { | |||||
| font-size: 22rpx; | |||||
| color: #999; | |||||
| } | |||||
| .txt2 { | |||||
| font-size: 22rpx; | |||||
| color: #f96563; | |||||
| } | |||||
| .nocoupon image{ | |||||
| width: 203rpx; | |||||
| display: block; | |||||
| margin: 200rpx auto 0; | |||||
| } | |||||
| .nocoupon text{ | |||||
| display: block; | |||||
| text-align: center; | |||||
| font-size:30rpx; | |||||
| color: #00C0FF; | |||||
| } | |||||
| .nocoupon button{ | |||||
| background: #00C0FF; | |||||
| color: #fff; | |||||
| font-style: 30rpx; | |||||
| width: 70%; | |||||
| margin: 30rpx auto 0; | |||||
| } | |||||
| .imageBox,imageBox image{ | |||||
| width: 100%; | |||||
| height: 250rpx; | |||||
| margin-top: 30rpx; | |||||
| position: relative; | |||||
| } | |||||
| image{ | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| } | |||||
| .text1{ | |||||
| color: white; | |||||
| font-size: 28rpx; | |||||
| position: absolute; | |||||
| top: 32rpx; | |||||
| left: 50rpx; | |||||
| } | |||||
| .text2{ | |||||
| color: white; | |||||
| font-size: 40rpx; | |||||
| position: absolute; | |||||
| top: 90rpx; | |||||
| left: 50rpx; | |||||
| } | |||||
| .text3{ | |||||
| color: white; | |||||
| font-size: 32rpx; | |||||
| position: absolute; | |||||
| top: 60rpx; | |||||
| right: 50rpx; | |||||
| } | |||||
| .text4{ | |||||
| color: white; | |||||
| font-size: 32rpx; | |||||
| position: absolute; | |||||
| top: 150rpx; | |||||
| right: 50rpx; | |||||
| } | |||||
| .text5{ | |||||
| color: white; | |||||
| font-size: 28rpx; | |||||
| position: absolute; | |||||
| bottom: 32rpx; | |||||
| left: 50rpx; | |||||
| } | |||||
| .text6{ | |||||
| color: white; | |||||
| font-size: 24rpx; | |||||
| position: absolute; | |||||
| top: 110rpx; | |||||
| right: 120rpx; | |||||
| font-weight: 600; | |||||
| } | |||||
| @@ -6,8 +6,10 @@ Page({ | |||||
| data: { | data: { | ||||
| park: null, | park: null, | ||||
| carList: [], | carList: [], | ||||
| payList:[], | |||||
| addCar: null, | addCar: null, | ||||
| tcq: 2 | |||||
| tcq: 2, | |||||
| flag:'' | |||||
| }, | }, | ||||
| // ready() { | // ready() { | ||||
| // app.couponChannelListCallback = token => { | // app.couponChannelListCallback = token => { | ||||
| @@ -41,12 +43,14 @@ Page({ | |||||
| onLoad: function (options) { | onLoad: function (options) { | ||||
| var that = this | var that = this | ||||
| that.init(); | that.init(); | ||||
| this.getList(); | |||||
| }, | }, | ||||
| onShow: function (options) { | onShow: function (options) { | ||||
| var that = this | var that = this | ||||
| if (options) | if (options) | ||||
| console.log(options) | console.log(options) | ||||
| if (that.data.addCar) { | if (that.data.addCar) { | ||||
| console.log(JSON.stringify(that.data.addCar)) | |||||
| // 绑车牌 | // 绑车牌 | ||||
| if (app.globalData.carLogin) { | if (app.globalData.carLogin) { | ||||
| that.bindCar(that.data.addCar) | that.bindCar(that.data.addCar) | ||||
| @@ -77,27 +81,130 @@ Page({ | |||||
| url: '/pages/addPark/addPark', | url: '/pages/addPark/addPark', | ||||
| }); | }); | ||||
| }, | }, | ||||
| jumpToPay: function () { | |||||
| console.log("停车支付去") | |||||
| //wx.redirectTo({ | |||||
| // url: '/pages/pay/pay', | |||||
| //}) | |||||
| }, | |||||
| passb: function () { | |||||
| wx.showToast({ | |||||
| title: '货物在路上~', | |||||
| }) | |||||
| }, | |||||
| passc: function () { | passc: function () { | ||||
| wx.showToast({ | wx.showToast({ | ||||
| title: '宝宝最可爱~', | title: '宝宝最可爱~', | ||||
| }) | }) | ||||
| }, | }, | ||||
| orderPay: function () { | |||||
| wx.redirectTo({ | |||||
| url: '/pages/pay/pay' | |||||
| }); | |||||
| // orderPay: function () { | |||||
| // wx.redirectTo({ | |||||
| // url: '/pages/pay/pay' | |||||
| // }); | |||||
| // }, | |||||
| //券绑定卡 | |||||
| bindCoupon: function () { | |||||
| var that = this | |||||
| // ETCP | |||||
| for(let car of that.data.carList){ | |||||
| if (car.stopFee.remainingFee){ | |||||
| that.data.payList.push(car) | |||||
| console.log(car) | |||||
| } | |||||
| } | |||||
| // if (that.data.payList.length==0){ | |||||
| // wx.showModal({ | |||||
| // title: '提示', | |||||
| // showCancel: false, | |||||
| // content: "您还没有在场车辆!", | |||||
| // }) | |||||
| // return | |||||
| // } | |||||
| var etcpData = { | |||||
| etcpToken: app.globalData.etcpToken, | |||||
| carNumber: that.data.payList[0].carNumber ? that.data.payList[0].carNumber:'', | |||||
| couponFreeId:5655, | |||||
| merchantId: 5655, | |||||
| } | |||||
| console.log('--->>>'+JSON.stringify(etcpData)) | |||||
| // 停简单 | |||||
| var tjdData = { | |||||
| carNumber: that.data.payList[0].carNumber, | |||||
| } | |||||
| var postCouponData = (app.globalData.parkVendor == 1) ? etcpData : tjdData | |||||
| // that.setData({ | |||||
| // loading: true, | |||||
| // content: "正在进行车牌绑定券,请稍后...", | |||||
| // }); | |||||
| // wx.showToast({ | |||||
| // title: '00000', | |||||
| // }) | |||||
| Http.post({ | |||||
| url: config.api.getCoupon, | |||||
| data: postCouponData, | |||||
| }) | |||||
| .then(res => { | |||||
| that.initUsrCarList() | |||||
| wx.showModal({ | |||||
| title: '提示', | |||||
| showCancel: false, | |||||
| content: "车牌绑定优免券成功!", | |||||
| success: function (res) { | |||||
| console.log(res); | |||||
| that.setData({ | |||||
| // flag:res.data. | |||||
| }) | |||||
| } | |||||
| }) | |||||
| }) | |||||
| .catch(error => { | |||||
| console.log(error) | |||||
| wx.showModal({ | |||||
| title: '提示', | |||||
| showCancel: false, | |||||
| content: error.message, | |||||
| success: function () { } | |||||
| }) | |||||
| }) | |||||
| }, | |||||
| //获取名下停车券列表 | |||||
| getList() { | |||||
| var that = this; | |||||
| console.log('1111111111111111111111.......'); | |||||
| // console.log(key); | |||||
| // console.log(pageNum); | |||||
| if (1) { | |||||
| // wx.showLoading({ | |||||
| // title: "加载中" | |||||
| // }); | |||||
| Http.get({ | |||||
| url: config.api.couponOrderList + "?type=5", | |||||
| data: { | |||||
| pageNum: 1, | |||||
| pageSize: 8, | |||||
| couponOrderStatus: 0 | |||||
| } | |||||
| }).then(res => { | |||||
| console.log('>>>>>>>>>>>>>>Res'+JSON.stringify(res)) | |||||
| that.setData({ | |||||
| couponList: res.data.list | |||||
| }) | |||||
| console.log("姐姐的订单列表"); | |||||
| setTimeout(function () { | |||||
| wx.hideLoading(); | |||||
| }, 1200); | |||||
| // if (pageNum >= res.data.pages) { | |||||
| // that.setData({ | |||||
| // allow_load: false | |||||
| // }); | |||||
| // } | |||||
| /** | |||||
| * 先赋值后渲染页面 | |||||
| * concat 不会改变原数组值 | |||||
| * push 会改变原数组值,但不会一条一条插入,而是整个数组插入 | |||||
| */ | |||||
| // that.data.list = that.data.list.concat(res.data.list); | |||||
| // that.setData({ | |||||
| // list: that.data.list | |||||
| // }); | |||||
| }); | |||||
| } else { | |||||
| console.log("加载完成allow_load设置成false"); | |||||
| } | |||||
| }, | }, | ||||
| bindCar: function (carNum) { | bindCar: function (carNum) { | ||||
| var that = this | var that = this | ||||
| // ETCP | // ETCP | ||||
| @@ -9,16 +9,15 @@ | |||||
| <view class='carLocation'>总车位: | <view class='carLocation'>总车位: | ||||
| <label class='locationNumber'> {{park.number}}个</label> | <label class='locationNumber'> {{park.number}}个</label> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <view class='borderBox'> | <view class='borderBox'> | ||||
| <view class='borderUp'>我的爱车 | <view class='borderUp'>我的爱车 | ||||
| <label class='carNumber'></label> | |||||
| <label class='carNumber' bindtap="jumpToAdd" wx:if='{{carList.length<3}}'>+</label> | |||||
| </view> | </view> | ||||
| <view class='passNumberBox' wx:for='{{carList}}' wx:key='{{index}}'> | <view class='passNumberBox' wx:for='{{carList}}' wx:key='{{index}}'> | ||||
| <view class='passUp'> | <view class='passUp'> | ||||
| <view class='passNumber' bindtap='orderPay' style='height:{{dataHeight}};font-weight:{{dataWeight}};line-height:{{dataLineHeight}}'> | |||||
| <view class='passNumber' bindtap='orderPay'> | |||||
| <text class='number'>{{item.carNumber}}</text> | <text class='number'>{{item.carNumber}}</text> | ||||
| <!-- <text class='price'>待缴金额:¥{{item.remainingParkFee?item.remainingParkFee:'0'}}</text> --> | <!-- <text class='price'>待缴金额:¥{{item.remainingParkFee?item.remainingParkFee:'0'}}</text> --> | ||||
| <!-- <text class='parkPrice'>待缴金额:¥500</text> --> | <!-- <text class='parkPrice'>待缴金额:¥500</text> --> | ||||
| @@ -29,13 +28,16 @@ | |||||
| </view> | </view> | ||||
| <view class='orderBox' wx:if='{{item.stopFee.remainingFee}}'> | <view class='orderBox' wx:if='{{item.stopFee.remainingFee}}'> | ||||
| <view class='priceBox'> | <view class='priceBox'> | ||||
| <text>待缴金额:¥{{item.stopFee.remainingFee}}</text> | |||||
| <text>入场时间:{{item.stopFee.entranceTime}}</text> | |||||
| </view> | |||||
| <view class='priceBox right'> | |||||
| <text class="textRight">待缴金额:¥{{item.stopFee.remainingFee}}</text> | |||||
| </view> | </view> | ||||
| <view class='payBox'> | |||||
| <!-- <view class='payBox'> | |||||
| <navigator target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data="{{item.extraData}}" version="release"> | <navigator target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data="{{item.extraData}}" version="release"> | ||||
| <button>去支付</button> | <button>去支付</button> | ||||
| </navigator> | </navigator> | ||||
| </view> | |||||
| </view> --> | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <!-- <view class='passNumberBox'> | <!-- <view class='passNumberBox'> | ||||
| @@ -54,28 +56,32 @@ | |||||
| <button class='deleteButton' bindtap='unbindCarBtn' data-car='{{item.carNumber}}'>解绑</button> | <button class='deleteButton' bindtap='unbindCarBtn' data-car='{{item.carNumber}}'>解绑</button> | ||||
| </view> --> | </view> --> | ||||
| <view class='addBox' wx:if='{{carList.length<3}}'> | |||||
| <!-- <view class='addBox' wx:if='{{carList.length<3}}'> | |||||
| <view class='add' bindtap="jumpToAdd"> | <view class='add' bindtap="jumpToAdd"> | ||||
| <text>+</text>添加爱车</view> | <text>+</text>添加爱车</view> | ||||
| </view> | |||||
| </view> --> | |||||
| </view> | </view> | ||||
| <view class='bottonBox'> | <view class='bottonBox'> | ||||
| <view class='textStyle' bindtap='showquan'> | |||||
| <image src='../../assets/img/quan.png'></image> | |||||
| 我的停车券 | |||||
| <view class='detail'> | |||||
| <!-- <image wx:if="{{tcq==1}}" src='../../assets/img/down.png'></image> --> | |||||
| <image src='../../assets/img/right.png'></image> | |||||
| <navigator url="/pages/passCar/couponList/couponList"> | |||||
| <view class='textStyle' bindtap='showquan'> | |||||
| <image src='../../assets/img/quan.png'></image> | |||||
| 我的停车券 | |||||
| <view class='detail'> | |||||
| <!-- <image wx:if="{{tcq==1}}" src='../../assets/img/down.png'></image> --> | |||||
| <image src='../../assets/img/right.png'></image> | |||||
| </view> | |||||
| </view> | </view> | ||||
| </view> | |||||
| <!-- <view class='voucher' wx:if="{{tcq==1}}"> | |||||
| <text class='textV1'>2小时免费</text> | |||||
| <text class='textV2'>蒙B35412</text> | |||||
| <text class='textV1'>¥10.00元</text> | |||||
| <view class='choice'> | |||||
| <image src='../../assets/img/choiced.png'></image> | |||||
| </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> --> | |||||
| </view> | |||||
| <!-- <view class='textStyle' bindtap='passb'> | <!-- <view class='textStyle' bindtap='passb'> | ||||
| <image src='../../assets/img/jilu.png'></image> | <image src='../../assets/img/jilu.png'></image> | ||||
| 停车记录 | 停车记录 | ||||
| @@ -91,7 +97,9 @@ | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <!-- <view class="buy-view app-border-top"> | |||||
| <button bindtap='orderFunc' class='buy'>立即支付</button> | |||||
| </view> --> | |||||
| <view bindtap='bindCoupon' class="buy-view app-border-top" wx:if='{{payList.length}}'> | |||||
| <navigator class='buyBox' target="miniProgram" open-type="navigate" app-id="wx192b7d2e8dcbefd0" path="" extra-data="{{item.extraData}}" version="release"> | |||||
| </navigator> | |||||
| <button class='buy'>立即支付</button> | |||||
| </view> | |||||
| </view> | </view> | ||||
| @@ -63,12 +63,14 @@ color: transparent; | |||||
| } | } | ||||
| .carNumber{ | .carNumber{ | ||||
| padding: 50rpx; | |||||
| height: 50rpx; | |||||
| line-height: 50rpx; | |||||
| font-size: 28rpx; | |||||
| color: #cbcbcb; | |||||
| background-color: white; | |||||
| height:50rpx; | |||||
| line-height:50rpx; | |||||
| font-size:50rpx; | |||||
| color:#cbcbcb; | |||||
| background-color:white; | |||||
| text-align:right; | |||||
| margin:0 0 0 440rpx; | |||||
| font-weight:800; | |||||
| } | } | ||||
| .addBox{ | .addBox{ | ||||
| width: 750rpx; | width: 750rpx; | ||||
| @@ -92,7 +94,7 @@ color: transparent; | |||||
| } | } | ||||
| .bottonBox{ | .bottonBox{ | ||||
| width: 750rpx; | width: 750rpx; | ||||
| margin-top: 26rpx; | |||||
| margin-top: 50rpx; | |||||
| } | } | ||||
| .textStyle{ | .textStyle{ | ||||
| background-color: white; | background-color: white; | ||||
| @@ -121,11 +123,10 @@ color: transparent; | |||||
| } | } | ||||
| .passNumber{ | .passNumber{ | ||||
| width: 400rpx; | width: 400rpx; | ||||
| height: 150rpx; | |||||
| height: 100rpx; | |||||
| font-size: 32rpx; | font-size: 32rpx; | ||||
| font-weight: 600; | font-weight: 600; | ||||
| line-height: 150rpx; | |||||
| line-height: 100rpx; | |||||
| left: 55rpx; | left: 55rpx; | ||||
| position: absolute; | position: absolute; | ||||
| } | } | ||||
| @@ -149,6 +150,12 @@ color: transparent; | |||||
| right: 30rpx; | right: 30rpx; | ||||
| position: absolute; | position: absolute; | ||||
| transform: translate(0,-50%); | transform: translate(0,-50%); | ||||
| color: white; | |||||
| background-color: #00c0ff!important; | |||||
| } | |||||
| .deleteButton button{ | |||||
| background-color: #00c0ff!important; | |||||
| } | } | ||||
| .detail{ | .detail{ | ||||
| width: 32rpx; | width: 32rpx; | ||||
| @@ -167,37 +174,39 @@ color: transparent; | |||||
| .voucher{ | .voucher{ | ||||
| width: 90%; | width: 90%; | ||||
| padding: 0 5%; | padding: 0 5%; | ||||
| background-color: rgb(255, 178, 50); | |||||
| background-color: #fff; | |||||
| /* background-color: #cbcbcb; */ | /* background-color: #cbcbcb; */ | ||||
| height: 80rpx; | height: 80rpx; | ||||
| position: relative; | position: relative; | ||||
| margin: 24rpx 0; | |||||
| margin: 0 0 12rpx 0; | |||||
| border-bottom: 2rpx #fff solid; | border-bottom: 2rpx #fff solid; | ||||
| display: flex; | display: flex; | ||||
| justify-content: space-between; | justify-content: space-between; | ||||
| } | } | ||||
| .textV1,.textV2{ | .textV1,.textV2{ | ||||
| height: 58rpx; | height: 58rpx; | ||||
| width: 225rpx; | |||||
| width: 100rpx; | |||||
| padding-top: 22rpx; | padding-top: 22rpx; | ||||
| text-align: center; | text-align: center; | ||||
| line-height: 80rxp; | line-height: 80rxp; | ||||
| font-size: 28rpx; | font-size: 28rpx; | ||||
| color: #fff; | |||||
| color: #333; | |||||
| } | } | ||||
| .textV2{ | .textV2{ | ||||
| margin-top: -1rpx; | margin-top: -1rpx; | ||||
| padding: 0; | padding: 0; | ||||
| /* background-color: rgb(0, 192, 255); */ | /* background-color: rgb(0, 192, 255); */ | ||||
| border-radius: 10rpx; | border-radius: 10rpx; | ||||
| width: 221rpx; | |||||
| width: 300rpx; | |||||
| height: 80rpx; | height: 80rpx; | ||||
| line-height: 80rpx; | line-height: 80rpx; | ||||
| font-size: 36rpx; | |||||
| font-size: 28rpx; | |||||
| border: 4rpx #fff solid; | border: 4rpx #fff solid; | ||||
| margin-bottom: 22rpx; | margin-bottom: 22rpx; | ||||
| } | } | ||||
| .textV3{ | |||||
| width: 225rpx; | |||||
| } | |||||
| /* .textV1{ | /* .textV1{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 10rpx; | left: 10rpx; | ||||
| @@ -235,7 +244,7 @@ color: transparent; | |||||
| background: #00c0ff; | background: #00c0ff; | ||||
| height: 88rpx; | height: 88rpx; | ||||
| width: 98%; | width: 98%; | ||||
| margin: 30rpx auto; | |||||
| margin: 0 auto; | |||||
| color: #fff; | color: #fff; | ||||
| font-size: 36rpx; | font-size: 36rpx; | ||||
| line-height: 88rpx; | line-height: 88rpx; | ||||
| @@ -256,11 +265,11 @@ color: transparent; | |||||
| .passUp { | .passUp { | ||||
| width: 100%; | width: 100%; | ||||
| height: 150rpx; | |||||
| height: 100rpx; | |||||
| position: relative; | position: relative; | ||||
| } | } | ||||
| .priceBox{ | .priceBox{ | ||||
| width: 500rpx; | |||||
| width: 420rpx; | |||||
| } | } | ||||
| .priceBox text{ | .priceBox text{ | ||||
| margin-top: 35rpx; | margin-top: 35rpx; | ||||
| @@ -289,3 +298,20 @@ input{ | |||||
| button::after{ | button::after{ | ||||
| border:none; | 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; | |||||
| } | |||||