| @@ -25,7 +25,8 @@ | |||
| "pages/addPark/addPark", | |||
| "pages/orderquanma/index", | |||
| "pages/passCar/couponList/couponList", | |||
| "pages/passCar/couponDetail/couponDetail" | |||
| "pages/passCar/couponDetail/couponDetail", | |||
| "pages/managelicenseplate/managelicenseplate" | |||
| ], | |||
| "tabBar": { | |||
| "color": "#9F9F9F", | |||
| @@ -38,7 +39,7 @@ | |||
| "text": "首页" | |||
| }, | |||
| { | |||
| "pagePath": "pages/cartest/cartest", | |||
| "pagePath": "pages/passCar/passCar", | |||
| "iconPath": "assets/img/pass1.png", | |||
| "selectedIconPath": "assets/img/pass0.png", | |||
| "text": "停车" | |||
| @@ -0,0 +1,10 @@ | |||
| var app = getApp(); | |||
| Page({ | |||
| /** | |||
| * 页面的初始数据 | |||
| */ | |||
| data: { | |||
| }, | |||
| }) | |||
| @@ -0,0 +1,3 @@ | |||
| { | |||
| "navigationBarTitleText": "管理车牌" | |||
| } | |||
| @@ -5,7 +5,7 @@ | |||
| </i-tabs> | |||
| <view> | |||
| <view class="nocoupon" wx:if="{{list.length==0}}"> | |||
| <image src="./../../../assets/img/cou.png" mode="widthFix" /> | |||
| <!-- <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> | |||
| @@ -12,7 +12,32 @@ Page({ | |||
| flag: "", | |||
| extraData: {}, | |||
| desc:'', | |||
| title:'' | |||
| title:'', | |||
| indicatorDots: true, | |||
| autoplay: false, | |||
| interval: 5000, | |||
| duration: 1000, | |||
| current: 0, | |||
| list:[] | |||
| }, | |||
| /** | |||
| * 轮播图 | |||
| */ | |||
| onSlideChangeEnd: function (e) { | |||
| var that = this; | |||
| console.log(e); | |||
| console.log(e.detail.current); | |||
| var listCardNum = (that.data.list)[e.detail.current].memberKeyword; | |||
| console.log(listCardNum); | |||
| that.setData({ | |||
| listCardNum: listCardNum | |||
| }) | |||
| console.log(that.data.listCardNum); | |||
| }, | |||
| gotomange:function(){ | |||
| wx.navigateTo({ | |||
| url: '/pages/managelicenseplate/managelicenseplate', | |||
| }) | |||
| }, | |||
| /*车牌动态样式 */ | |||
| changeStyle: function() { | |||
| @@ -5,7 +5,7 @@ | |||
| <text class='mycar'>我的爱车</text> | |||
| <text class='num'>最多可添加3辆</text> | |||
| </view> | |||
| <view class='fr'> | |||
| <view class='fr' bindtap='gotomange'> | |||
| 车辆管理 | |||
| <image src='./../../assets/img/jian.png' mode='widthFix'></image> | |||
| </view> | |||
| @@ -22,26 +22,52 @@ | |||
| </view> | |||
| </view> | |||
| </view> --> | |||
| <view class='borderBox'> | |||
| <view class='borderUp' bindtap='jumpToAdd' wx:if="{{carList.length<3}}"> | |||
| <view class="myCars"> | |||
| <image src='./../../assets/img/add.png' mode="widthFix"></image>我的爱车</view> | |||
| <text class='carNumber'>车辆入场后,才能绑车牌</text> | |||
| </view> | |||
| <view class='passNumberBox' wx:for='{{carList}}' wx:key='{{index}}'> | |||
| <view class='passUp'> | |||
| <!-- <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='addicense_active'> | |||
| <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"> | |||
| <swiper-item 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'>停车缴费</button> | |||
| </view> | |||
| </view> | |||
| </swiper-item> | |||
| </block> | |||
| </swiper> | |||
| <view class="dots"> | |||
| <block wx:for="{{carList}}" wx:key="unique"> | |||
| <view class="dot{{index == current ? ' active' : ''}}"></view> | |||
| </block> | |||
| </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='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> | |||
| @@ -56,7 +82,7 @@ | |||
| </view> | |||
| </view> | |||
| </navigator> | |||
| <view class='passNumberBox' wx:for='{{couponList}}' wx:key='{{index}}'> | |||
| <!-- <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> | |||
| @@ -65,7 +91,7 @@ | |||
| <image src='../../assets/img/choiced.png'></image> | |||
| </view> | |||
| </view> | |||
| </view> | |||
| </view> --> | |||
| <view class='textStyle' bindtap='passc'> | |||
| <image src='../../assets/img/wenti.png'></image> | |||
| 常见问题 | |||
| @@ -1,4 +1,4 @@ | |||
| /**passCar.wxss**/ | |||
| @import "../../app.wxss"; | |||
| page { | |||
| background-color: #fff; | |||
| @@ -64,6 +64,17 @@ page { | |||
| width: 680rpx; | |||
| margin: 0 auto; | |||
| font-size: 36rpx; | |||
| border: 2rpx dashed #979797; | |||
| border-radius: 16rpx; | |||
| padding-bottom: 40rpx; | |||
| height: 202rpx; | |||
| } | |||
| .addicense_active { | |||
| width: 690rpx; | |||
| /* box-shadow: 0 4rpx 20rpx 0 rgba(153, 153, 153, 0.35); */ | |||
| border-radius: 12rpx; | |||
| /* background: #02c0ff; *//* padding-bottom: 40rpx; */ | |||
| } | |||
| .myCar { | |||
| @@ -87,7 +98,6 @@ page { | |||
| .addBox { | |||
| width: 750rpx; | |||
| height: 220rpx; | |||
| position: relative; | |||
| background-color: white; | |||
| } | |||
| @@ -110,7 +120,7 @@ page { | |||
| .bottonBox { | |||
| width: 750rpx; | |||
| margin-top: 50rpx; | |||
| margin-top: 30rpx; | |||
| } | |||
| .textStyle { | |||
| @@ -118,7 +128,7 @@ page { | |||
| height: 88rpx; | |||
| line-height: 88rpx; | |||
| padding-left: 92rpx; | |||
| border-bottom: 1rpx #f8f8f8 solid; | |||
| border-bottom: 1px #f8f8f8 solid; | |||
| position: relative; | |||
| font-size: 30rpx; | |||
| color: #333; | |||
| @@ -133,11 +143,52 @@ page { | |||
| position: absolute; | |||
| } | |||
| .swiper { | |||
| position: relative; | |||
| margin: 0 auto; | |||
| } | |||
| .swiper-item { | |||
| width: 365rpx; | |||
| font-size: 75rpx; | |||
| font-weight: 400; | |||
| text-align: center; | |||
| color: rgba(255, 255, 255, 1); | |||
| } | |||
| .swiper-item > view { | |||
| background: #bbe6ff; | |||
| border-radius: 12rpx; | |||
| padding: 6rpx; | |||
| } | |||
| .tche { | |||
| width: 157rpx; | |||
| height: 211rpx; | |||
| margin: 0 auto; | |||
| float: right; | |||
| border-radius: 12rpx; | |||
| background: #56bdf8; | |||
| border: 3px solid #fff; | |||
| position: relative; | |||
| } | |||
| .txt01 { | |||
| width: 497rpx; | |||
| height: 211rpx; | |||
| line-height: 211rpx; | |||
| float: left; | |||
| background: #56bdf8; | |||
| border-radius: 12rpx; | |||
| border: 3px solid #fff; | |||
| text-align: center; | |||
| } | |||
| .passNumberBox { | |||
| width: 750rpx; | |||
| position: relative; | |||
| background-color: white; | |||
| border-bottom: 1rpx #f8f8f8 solid; | |||
| /* border-bottom: 1rpx #f8f8f8 solid; */ | |||
| margin-top: 30rpx; | |||
| } | |||
| .passNumber { | |||
| @@ -157,7 +208,37 @@ page { | |||
| } | |||
| .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: .6; | |||
| } | |||
| .btn001 { | |||
| margin: 0 auto; | |||
| width: 120rpx; | |||
| height: 75rpx; | |||
| font-size: 32rpx; | |||
| font-weight: 400; | |||
| color: rgba(255, 255, 255, 1); | |||
| line-height: 38rpx; | |||
| background: none; | |||
| margin-top: 67rpx; | |||
| } | |||
| .parkPrice { | |||
| @@ -291,9 +372,6 @@ page { | |||
| .borderBox { | |||
| width: 690rpx; | |||
| margin: 20rpx auto 0; | |||
| border: 2rpx dashed #979797; | |||
| border-radius: 16rpx; | |||
| height: 200rpx; | |||
| } | |||
| .carmanage { | |||
| @@ -364,12 +442,6 @@ page { | |||
| display: flex; | |||
| } | |||
| .passUp { | |||
| width: 100%; | |||
| height: 100rpx; | |||
| position: relative; | |||
| } | |||
| .priceBox { | |||
| width: 420rpx; | |||
| } | |||
| @@ -439,5 +511,32 @@ button::after { | |||
| color: #02c0ff; | |||
| letter-spacing: 0; | |||
| text-align: center; | |||
| padding-top: 50rpx; | |||
| 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; | |||
| } | |||
| @@ -72,7 +72,7 @@ class HttpBasics { | |||
| data: data, | |||
| method: "POST", | |||
| success: res => { | |||
| // wx.hideLoading(); | |||
| wx.hideLoading(); | |||
| this.responseMap(res, resolve, reject); | |||
| }, | |||
| fail: err => { | |||
| @@ -97,9 +97,10 @@ class HttpBasics { | |||
| if (res.data.code == 200) { | |||
| resolve(res.data); | |||
| } else { | |||
| wx.hideLoading(); | |||
| // wx.hideLoading(); | |||
| wx.showToast({ | |||
| title: res.data.message | |||
| title: res.data.message, | |||
| image:'./../../assets/img/fail.png' | |||
| }); | |||
| reject(res.data); | |||
| } | |||