| @@ -50,6 +50,9 @@ App({ | |||||
| if (that.couponListCallback) { | if (that.couponListCallback) { | ||||
| that.couponListCallback(that.globalData.token); | that.couponListCallback(that.globalData.token); | ||||
| } | } | ||||
| if (that.businessListCallback) { | |||||
| that.businessListCallback(that.globalData.token); | |||||
| } | |||||
| return Http.post({ | return Http.post({ | ||||
| url: config.api.checkUserStatus, | url: config.api.checkUserStatus, | ||||
| data: {} | data: {} | ||||
| @@ -21,7 +21,6 @@ Component({ | |||||
| * 组件的方法列表 | * 组件的方法列表 | ||||
| */ | */ | ||||
| ready(){ | ready(){ | ||||
| console.log(this.data.list) | |||||
| }, | }, | ||||
| methods: { | methods: { | ||||
| swiperChange: function (e) { | swiperChange: function (e) { | ||||
| @@ -1,25 +1,27 @@ | |||||
| <navigator url="/pages/coupon/detail/index?id={{data.id}}"> | |||||
| <navigator url="/pages/coupon/detail/index?id={{data.couponId}}&targetAd={{data.targetAd}}"> | |||||
| <!-- 首页优惠券列表页面 --> | <!-- 首页优惠券列表页面 --> | ||||
| <view class="coupons"> | <view class="coupons"> | ||||
| <view class="coupons-img"> | <view class="coupons-img"> | ||||
| <image src="{{data.coverImg}}"></image> | <image src="{{data.coverImg}}"></image> | ||||
| </view> | </view> | ||||
| <view class="coupons-info"> | <view class="coupons-info"> | ||||
| <view class="coupons-info-name">{{data.title}}</view> | |||||
| <view class="coupons-info-name tit">{{data.title}}</view> | |||||
| <view class="coupons-info-name subtitle">{{data.subTitle}}</view> | <view class="coupons-info-name subtitle">{{data.subTitle}}</view> | ||||
| <view class="coupons-info-manjian" style="margin-top:10rpx;" wx:if="{{data.type == 1}}"> | |||||
| 满¥{{data.usePriceStr}}可用 | |||||
| <view class="coupons-info-price-p"> | |||||
| <text class="i">¥</text>{{data.salePriceStr}} | |||||
| <view class="coupons-info-manjian" style="margin-top:10rpx;" wx:if="{{data.type == 1}}"> | |||||
| 满¥{{data.usePriceStr}}可用 | |||||
| </view> | |||||
| <view class="coupons-info-manjian" wx:elif="{{data.type == 2||data.type == 3||data.type==4||data.type==5}}"> | |||||
| 仅限本店使用 | |||||
| </view> | |||||
| </view> | </view> | ||||
| <view class="coupons-info-manjian" wx:elif="{{data.type == 2||data.type == 3||data.type==4||data.type==5}}"> | |||||
| 仅限本店使用 | |||||
| </view> | |||||
| <view class="coupons-info-name subtitle ">剩余库存: {{data.remainInventory}}</view> | |||||
| </view> | </view> | ||||
| <view class="coupons-btn"> | <view class="coupons-btn"> | ||||
| <!-- 优惠券价格 --> | <!-- 优惠券价格 --> | ||||
| <view class="coupons-info-price"> | <view class="coupons-info-price"> | ||||
| <text class="coupons-info-price-p">¥{{data.salePriceStr}}</text> | |||||
| <text class="coupons-info-price-o">¥{{data.priceStr}}</text> | |||||
| <view class="coupons-info-name subtitle sy">剩余: {{data.remainInventory}}</view> | |||||
| <!-- <text class="coupons-info-price-o"><text class='i'>¥</text>{{data.priceStr}}</text> --> | |||||
| </view> | </view> | ||||
| <i-button i-class="coupons-btn-gm" wx:if="{{data.type==4}}" data-date='{{data}}'>领取</i-button> | <i-button i-class="coupons-btn-gm" wx:if="{{data.type==4}}" data-date='{{data}}'>领取</i-button> | ||||
| <i-button i-class="coupons-btn-gm" wx:elif="{{data.type == 1||data.type == 2||data.type==3||data.type==4}}" data-date='{{data}}'>购买</i-button> | <i-button i-class="coupons-btn-gm" wx:elif="{{data.type == 1||data.type == 2||data.type==3||data.type==4}}" data-date='{{data}}'>购买</i-button> | ||||
| @@ -32,25 +32,27 @@ | |||||
| } | } | ||||
| .coupons-info-name { | .coupons-info-name { | ||||
| font-size: 30rpx; | |||||
| font-size: 28rpx; | |||||
| color: #000000; | color: #000000; | ||||
| letter-spacing: 0; | letter-spacing: 0; | ||||
| line-height: 42rpx; | |||||
| font-weight: bold; | |||||
| margin-top: 10rpx; | |||||
| line-height: 38rpx; | |||||
| } | } | ||||
| .coupons-info-price { | .coupons-info-price { | ||||
| padding: 10rpx 0 15rpx; | |||||
| height: 88rpx; | |||||
| padding: 32rpx 0 0; | |||||
| } | |||||
| .i{ | |||||
| font-size: 20rpx; | |||||
| font-style: normal; | |||||
| } | } | ||||
| .coupons-info-price-p { | .coupons-info-price-p { | ||||
| display: block; | |||||
| text-align: center; | |||||
| display: inline-block; | |||||
| font-size: 36rpx; | font-size: 36rpx; | ||||
| color: #ff3434; | |||||
| color: #f96563; | |||||
| line-height: 50rpx; | line-height: 50rpx; | ||||
| } | } | ||||
| .tit{ | |||||
| margin-top: 32rpx; | |||||
| } | |||||
| .coupons-info-price-o { | .coupons-info-price-o { | ||||
| display: block; | display: block; | ||||
| text-align: center; | text-align: center; | ||||
| @@ -96,15 +98,16 @@ | |||||
| line-height: 50rpx !important; | line-height: 50rpx !important; | ||||
| } | } | ||||
| .subtitle { | .subtitle { | ||||
| font-size: 26rpx; | |||||
| font-size: 22rpx; | |||||
| color: #333; | color: #333; | ||||
| font-weight: 100; | font-weight: 100; | ||||
| text-align: left; | |||||
| } | } | ||||
| .coupons-info-manjian { | .coupons-info-manjian { | ||||
| color: #999; | |||||
| font-size: 26rpx; | |||||
| color: #fa7c7a; | |||||
| font-size: 20rpx; | |||||
| line-height: 34rpx; | line-height: 34rpx; | ||||
| font-weight: 100; | |||||
| display: inline-block; | |||||
| } | } | ||||
| /**上拉加载更多**/ | /**上拉加载更多**/ | ||||
| @@ -124,7 +127,10 @@ | |||||
| .userinfo-nickname { | .userinfo-nickname { | ||||
| color: #aaa; | color: #aaa; | ||||
| } | } | ||||
| .sy{ | |||||
| display: block; | |||||
| text-align: center; | |||||
| } | |||||
| .usermotto { | .usermotto { | ||||
| margin-top: 200px; | margin-top: 200px; | ||||
| } | } | ||||
| @@ -6,125 +6,125 @@ var config = { | |||||
| /** | /** | ||||
| * 接口用途:login | * 接口用途:login | ||||
| */ | */ | ||||
| login: '/user/login', | |||||
| login: "/user/login", | |||||
| /** | /** | ||||
| * 授权后获取用户的昵称,unionId等信息 | * 授权后获取用户的昵称,unionId等信息 | ||||
| */ | */ | ||||
| getUserInfo: '/user/getUserInfo', | |||||
| getUserInfo: "/user/getUserInfo", | |||||
| /** | /** | ||||
| * 接口用途:授权后获取用户的手机号 | * 接口用途:授权后获取用户的手机号 | ||||
| */ | */ | ||||
| getUserPhone: '/user/getUserPhone', | |||||
| getUserPhone: "/user/getUserPhone", | |||||
| /** | /** | ||||
| * 检查用户授权状态 | * 检查用户授权状态 | ||||
| */ | */ | ||||
| checkUserStatus: '/user/checkUserStatus', | |||||
| checkUserStatus: "/user/checkUserStatus", | |||||
| /** | /** | ||||
| * 检查用户手机授权状态 | * 检查用户手机授权状态 | ||||
| */ | */ | ||||
| checkPhoneStatus: '/user/checkPhoneStatus', | |||||
| checkPhoneStatus: "/user/checkPhoneStatus", | |||||
| /** | /** | ||||
| * 优惠券查询 | * 优惠券查询 | ||||
| */ | */ | ||||
| couponList: '/wxCoupon/list', | |||||
| couponList: "/wxCoupon/list", | |||||
| /** | /** | ||||
| * 优惠券详情 | * 优惠券详情 | ||||
| */ | */ | ||||
| couponDetail: '/wxCoupon/findById', | |||||
| couponDetail: "/wxCoupon/detail", | |||||
| /** | /** | ||||
| * 业态查询 | * 业态查询 | ||||
| */ | */ | ||||
| businessList: '/wxBusiness/list', // TODO | |||||
| businessList: "/wxBusiness/list", | |||||
| /** | /** | ||||
| * 频道查询 | * 频道查询 | ||||
| */ | */ | ||||
| couponChannelList: '/wxCouponChannel/list', | |||||
| couponChannelList: "/wxCouponChannel/list", | |||||
| /** | /** | ||||
| * 下订单 | * 下订单 | ||||
| */ | */ | ||||
| orderSave: '/order/save', | |||||
| orderSave: "/order/save", | |||||
| /** | /** | ||||
| * 支付订单 | * 支付订单 | ||||
| */ | */ | ||||
| payOrderCreate: '/pay/create', | |||||
| payOrderCreate: "/pay/create", | |||||
| /** | /** | ||||
| * 订单状态更新 | * 订单状态更新 | ||||
| */ | */ | ||||
| payOrderUpdate: '/pay/updatePayOrder', | |||||
| payOrderUpdate: "/pay/updatePayOrder", | |||||
| /** | /** | ||||
| * 订单列表 | * 订单列表 | ||||
| */ | */ | ||||
| orderList: '/order/list', | |||||
| orderList: "/order/list", | |||||
| /** | /** | ||||
| * 券包 | * 券包 | ||||
| */ | */ | ||||
| couponOrderList: '/couponOrder/list', | |||||
| couponOrderList: "/couponOrder/list", | |||||
| /** | /** | ||||
| * 券包详情 | * 券包详情 | ||||
| */ | */ | ||||
| couponOrderDetail: '/couponOrder/detail', /// TODO | |||||
| couponOrderDetail: "/couponOrder/detail", /// TODO | |||||
| /** | /** | ||||
| * 验证码发送 | * 验证码发送 | ||||
| */ | */ | ||||
| sendValidationCode: '/wxMsgValidationcode/sendvalidationcode', | |||||
| sendValidationCode: "/wxMsgValidationcode/sendvalidationcode", | |||||
| /** | /** | ||||
| * 验证码确认 | * 验证码确认 | ||||
| */ | */ | ||||
| validationCode: '/wxMsgValidationcode/hasvalidationcode', | |||||
| validationCode: "/wxMsgValidationcode/hasvalidationcode", | |||||
| /** | /** | ||||
| * 车场信息获取 | * 车场信息获取 | ||||
| */ | */ | ||||
| getParkInfo: '/wxPark/info', | |||||
| getParkInfo: "/wxPark/info", | |||||
| /** | /** | ||||
| * 用户所绑车牌获取 | * 用户所绑车牌获取 | ||||
| */ | */ | ||||
| userCarCount: '/user/carCount', | |||||
| userCarCount: "/user/carCount", | |||||
| /** | /** | ||||
| * 用户所绑车牌获取 | * 用户所绑车牌获取 | ||||
| */ | */ | ||||
| getUserCarList: '/user/carList', | |||||
| getUserCarList: "/user/carList", | |||||
| /** | /** | ||||
| * 联合登录 | * 联合登录 | ||||
| */ | */ | ||||
| carInit: '/car/init', | |||||
| carInit: "/car/init", | |||||
| /** | /** | ||||
| * 绑车牌 | * 绑车牌 | ||||
| */ | */ | ||||
| bindCar: '/car/bindCar', | |||||
| bindCar: "/car/bindCar", | |||||
| /** | /** | ||||
| * 解绑车牌 | * 解绑车牌 | ||||
| */ | */ | ||||
| unbindCar: '/car/unbindCar', | |||||
| unbindCar: "/car/unbindCar", | |||||
| /** | /** | ||||
| * 停车费 | * 停车费 | ||||
| */ | */ | ||||
| getCarStopFee: '/car/getCarStopFee', | |||||
| getCarStopFee: "/car/getCarStopFee", | |||||
| /** | /** | ||||
| * 停车费抵扣 (TJD) | * 停车费抵扣 (TJD) | ||||
| */ | */ | ||||
| deductionFee: '/car/deductionFee', | |||||
| deductionFee: "/car/deductionFee", | |||||
| /** | /** | ||||
| * 优免券领取 | |||||
| */ | |||||
| getCoupon: '/car/getCoupon', | |||||
| * 优免券领取 | |||||
| */ | |||||
| getCoupon: "/car/getCoupon", | |||||
| /** | /** | ||||
| * banner | * banner | ||||
| */ | */ | ||||
| bannerlist:'/wxCampaign/list' | |||||
| bannerlist: "/wxCampaign/list" | |||||
| }, | }, | ||||
| weapp: { | weapp: { | ||||
| AppId: 'wx8eb8275b78db4ede', | |||||
| AppId: "wx8eb8275b78db4ede" | |||||
| }, | }, | ||||
| ErrorCode: { | ErrorCode: { | ||||
| NICK_NOT_AUTH: 11004, | NICK_NOT_AUTH: 11004, | ||||
| PHONE_NOT_AUTH: 11005, | PHONE_NOT_AUTH: 11005, | ||||
| PHONE_IS_ENCRYPTED: 11006, | |||||
| }, | |||||
| PHONE_IS_ENCRYPTED: 11006 | |||||
| } | |||||
| }; | }; | ||||
| /* | /* | ||||
| for (var key in config.api) { | for (var key in config.api) { | ||||
| config.api[key] = apiPrefix + config.api[key]; | config.api[key] = apiPrefix + config.api[key]; | ||||
| } | } | ||||
| */ | */ | ||||
| module.exports = config; | |||||
| module.exports = config; | |||||
| @@ -1,50 +1,50 @@ | |||||
| Component({ | Component({ | ||||
| externalClasses: ['i-class'], | |||||
| externalClasses: ["i-class"], | |||||
| relations: { | |||||
| '../tabs/index': { | |||||
| type: 'parent' | |||||
| } | |||||
| }, | |||||
| relations: { | |||||
| "../tabs/index": { | |||||
| type: "parent" | |||||
| } | |||||
| }, | |||||
| properties: { | |||||
| key: { | |||||
| type: String, | |||||
| value: '' | |||||
| }, | |||||
| title: { | |||||
| type: String, | |||||
| value: '' | |||||
| }, | |||||
| dot: { | |||||
| type: Boolean, | |||||
| value: false | |||||
| }, | |||||
| count: { | |||||
| type: Number, | |||||
| value: 0 | |||||
| } | |||||
| properties: { | |||||
| key: { | |||||
| type: String, | |||||
| value: "" | |||||
| }, | }, | ||||
| data: { | |||||
| current: false, | |||||
| currentColor: '', | |||||
| scroll: false | |||||
| title: { | |||||
| type: String, | |||||
| value: "" | |||||
| }, | }, | ||||
| dot: { | |||||
| type: Boolean, | |||||
| value: false | |||||
| }, | |||||
| count: { | |||||
| type: Number, | |||||
| value: 0 | |||||
| } | |||||
| }, | |||||
| methods: { | |||||
| changeCurrent (current) { | |||||
| this.setData({ current }); | |||||
| }, | |||||
| changeCurrentColor (currentColor) { | |||||
| this.setData({ currentColor }); | |||||
| }, | |||||
| changeScroll (scroll) { | |||||
| this.setData({ scroll }); | |||||
| }, | |||||
| handleClickItem () { | |||||
| const parent = this.getRelationNodes('../tabs/index')[0]; | |||||
| parent.emitEvent(this.data.key); | |||||
| } | |||||
| data: { | |||||
| current: false, | |||||
| currentColor: "", | |||||
| scroll: false | |||||
| }, | |||||
| methods: { | |||||
| changeCurrent(current) { | |||||
| this.setData({ current }); | |||||
| }, | |||||
| changeCurrentColor(currentColor) { | |||||
| this.setData({ currentColor }); | |||||
| }, | |||||
| changeScroll(scroll) { | |||||
| this.setData({ scroll }); | |||||
| }, | |||||
| handleClickItem() { | |||||
| const parent = this.getRelationNodes("../tabs/index")[0]; | |||||
| parent.emitEvent(this.data.key); | |||||
| } | } | ||||
| } | |||||
| }); | }); | ||||
| @@ -1,7 +1,8 @@ | |||||
| <view class="i-class i-tabs-tab {{ scroll ? 'i-tabs-tab-scroll' : '' }} {{ current ? 'i-tabs-tab-current' : '' }}"> | <view class="i-class i-tabs-tab {{ scroll ? 'i-tabs-tab-scroll' : '' }} {{ current ? 'i-tabs-tab-current' : '' }}"> | ||||
| <i-badge dot="{{ dot }}" count="{{ dot ? 0 : count }}"> | <i-badge dot="{{ dot }}" count="{{ dot ? 0 : count }}"> | ||||
| <view bindtap="handleClickItem"> | <view bindtap="handleClickItem"> | ||||
| <view class="i-tabs-tab-title {{ current ? 'i-tabs-tab-title-current' : '' }}" wx:if="{{ current && currentColor }}" style="color: {{ currentColor }}">{{ title }}</view> | |||||
| <view class="i-tabs-tab-title {{ current ? 'i-tabs-tab-title-current' : '' }}" wx:if="{{ current && currentColor }}" style="color: {{ currentColor }}">{{ | |||||
| title }}</view> | |||||
| <view class="i-tabs-tab-title {{ current ? 'i-tabs-tab-title-current' : '' }}" wx:else>{{ title }}</view> | <view class="i-tabs-tab-title {{ current ? 'i-tabs-tab-title-current' : '' }}" wx:else>{{ title }}</view> | ||||
| </view> | </view> | ||||
| </i-badge> | </i-badge> | ||||
| @@ -88,14 +88,14 @@ | |||||
| } | } | ||||
| .addpark-choose-font { | .addpark-choose-font { | ||||
| width: 66rpx; | |||||
| height: 66rpx; | |||||
| width: 80rpx; | |||||
| height: 77rpx; | |||||
| background: #f8f8f8; | background: #f8f8f8; | ||||
| text-align: center; | text-align: center; | ||||
| line-height: 66rpx; | |||||
| line-height: 77rpx; | |||||
| border: 1 px solid #f8f8f8; | border: 1 px solid #f8f8f8; | ||||
| border-radius: 8rpx; | border-radius: 8rpx; | ||||
| margin: 10rpx; | |||||
| margin: 5rpx; | |||||
| } | } | ||||
| .addpark-choose-font p{ | .addpark-choose-font p{ | ||||
| @@ -104,6 +104,7 @@ | |||||
| .addpark-choose-font p image{ | .addpark-choose-font p image{ | ||||
| width:5vmin; | width:5vmin; | ||||
| height:3.5vmin; | height:3.5vmin; | ||||
| margin-top: -0.8vmin; | |||||
| vertical-align: middle; | vertical-align: middle; | ||||
| } | } | ||||
| .addpark-choose-num { | .addpark-choose-num { | ||||
| @@ -120,7 +121,6 @@ | |||||
| } | } | ||||
| .choose-title{ | .choose-title{ | ||||
| border:6rpx solid #ffd255; | border:6rpx solid #ffd255; | ||||
| } | } | ||||
| .addpark-button-submit{ | .addpark-button-submit{ | ||||
| @@ -13,6 +13,8 @@ Page({ | |||||
| }, | }, | ||||
| onLoad(options) { | onLoad(options) { | ||||
| let that = this; | let that = this; | ||||
| console.log(options.id); | |||||
| console.log(options.targetAd); | |||||
| wx.showLoading({ | wx.showLoading({ | ||||
| title: "加载中..." | title: "加载中..." | ||||
| }); | }); | ||||
| @@ -23,7 +25,8 @@ Page({ | |||||
| Http.get({ | Http.get({ | ||||
| url: config.api.couponDetail, | url: config.api.couponDetail, | ||||
| data: { | data: { | ||||
| id: options.id | |||||
| couponId: options.id, | |||||
| targetAd:options.targetAd | |||||
| } | } | ||||
| }).then(res => { | }).then(res => { | ||||
| console.log(res); | console.log(res); | ||||
| @@ -1,3 +1,4 @@ | |||||
| <!-- 券的详情页面 --> | |||||
| <view class='coupons'> | <view class='coupons'> | ||||
| <view class="coupons-body"> | <view class="coupons-body"> | ||||
| <view class='banner'> | <view class='banner'> | ||||
| @@ -15,15 +16,14 @@ | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <!-- 未解决 商场的名称 --> | |||||
| <view class='posi'> | <view class='posi'> | ||||
| <view class='posi_logo'> | <view class='posi_logo'> | ||||
| <view> | <view> | ||||
| <image src='http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg'></image> | |||||
| <image src='{{data.merChantImgUrl}}'></image> | |||||
| </view> | </view> | ||||
| <view> | <view> | ||||
| <text>iFORMALL(西单大悦城店)</text> | |||||
| <text>北京市西城区西单北大街131号</text> | |||||
| <text>{{data.merchantName}}</text> | |||||
| <text>{{data.addr}}{{data.buildingName}}{{data.floorName}}</text> | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <!-- <view> | <!-- <view> | ||||
| @@ -19,10 +19,10 @@ | |||||
| <image src="./../../../assets/img/shiyong.jpg" mode="widthFix"></image> | <image src="./../../../assets/img/shiyong.jpg" mode="widthFix"></image> | ||||
| </view> | </view> | ||||
| <view class="pane2" wx:if="{{data.couponOrderStatus==2}}"> | <view class="pane2" wx:if="{{data.couponOrderStatus==2}}"> | ||||
| <image src="./../../../assets/img/tui.png" mode="widthFix"></image> | |||||
| <image src="./../../../assets/img/guoqi.jpg" mode="widthFix"></image> | |||||
| </view> | </view> | ||||
| <view class="pane2" wx:if="{{data.couponOrderStatus==3}}"> | <view class="pane2" wx:if="{{data.couponOrderStatus==3}}"> | ||||
| <image src="./../../../assets/img/guoqi.jpg" mode="widthFix"></image> | |||||
| <image src="./../../../assets/img/tui.jpg" mode="widthFix"></image> | |||||
| </view> | </view> | ||||
| <view class="panel" wx:if="{{data.couponOrderStatus==0}}"> | <view class="panel" wx:if="{{data.couponOrderStatus==0}}"> | ||||
| <view class="barcode"> | <view class="barcode"> | ||||
| @@ -90,7 +90,6 @@ | |||||
| .coupon_detail .title { | .coupon_detail .title { | ||||
| font-size: 36rpx; | font-size: 36rpx; | ||||
| font-weight: bold; | |||||
| } | } | ||||
| .time { | .time { | ||||
| @@ -83,7 +83,7 @@ Page({ | |||||
| handleChangeScroll({ detail }) { | handleChangeScroll({ detail }) { | ||||
| console.log(detail.key); | console.log(detail.key); | ||||
| console.log("0000"); | console.log("0000"); | ||||
| this.getList(detail.key,1); | |||||
| this.getList(detail.key, 1); | |||||
| this.setData({ | this.setData({ | ||||
| current_scroll: detail.key | current_scroll: detail.key | ||||
| }); | }); | ||||
| @@ -3,30 +3,28 @@ | |||||
| <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> | ||||
| <view class="nocoupon" wx:if="{{list.length==0}}"> | <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> | <text>没有优惠券哦</text> | ||||
| </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 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> | ||||
| <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> | |||||
| <text class="txt1">有效期至:</text> | |||||
| <text class="txt2">{{item.expiredTime}}</text> | |||||
| </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> | </view> | ||||
| </view> | </view> | ||||
| </view> | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| @@ -55,6 +55,7 @@ | |||||
| .info view:nth-child(1) text { | .info view:nth-child(1) text { | ||||
| font-size: 30rpx; | font-size: 30rpx; | ||||
| margin-top: 10rpx; | margin-top: 10rpx; | ||||
| color: #666; | |||||
| } | } | ||||
| .info view:nth-child(2) { | .info view:nth-child(2) { | ||||
| @@ -77,7 +78,7 @@ | |||||
| color: #fff; | color: #fff; | ||||
| float: right; | float: right; | ||||
| border-radius: 15rpx; | border-radius: 15rpx; | ||||
| font-size: 30rpx; | |||||
| font-size: 28rpx; | |||||
| margin-top: 20rpx; | margin-top: 20rpx; | ||||
| } | } | ||||
| @@ -88,7 +89,7 @@ | |||||
| .txt2 { | .txt2 { | ||||
| font-size: 22rpx; | font-size: 22rpx; | ||||
| color: red; | |||||
| color: #f96563; | |||||
| } | } | ||||
| .nocoupon image{ | .nocoupon image{ | ||||
| @@ -4,7 +4,7 @@ | |||||
| } | } | ||||
| .userinfo button { | .userinfo button { | ||||
| background: #9d285c; | |||||
| background: #00c0ff; | |||||
| border-radius: 10rpx; | border-radius: 10rpx; | ||||
| color: #fff; | color: #fff; | ||||
| height: 84rpx; | height: 84rpx; | ||||
| @@ -15,12 +15,15 @@ Component({ | |||||
| data: { | data: { | ||||
| tabs: [], | tabs: [], | ||||
| list: [], | list: [], | ||||
| current: "0", | |||||
| current_scroll: "0", | |||||
| flag: "", | |||||
| return_list: [], | |||||
| current: 0, | |||||
| current_scroll: 0, | |||||
| pageNum: 1, // 设置加载的第几次,默认是第一次 | pageNum: 1, // 设置加载的第几次,默认是第一次 | ||||
| pageSize: 10, //返回数据的个数 | pageSize: 10, //返回数据的个数 | ||||
| searchLoading: false, //"上拉加载"的变量,默认false,隐藏 | searchLoading: false, //"上拉加载"的变量,默认false,隐藏 | ||||
| searchLoadingComplete: false //“没有数据”的变量,默认false,隐藏 | |||||
| searchLoadingComplete: false, //“没有数据”的变量,默认false,隐藏 | |||||
| allow_load: true // 是否允许继续加载标识 默认 true 允许,false 加载完成 | |||||
| }, | }, | ||||
| /** | /** | ||||
| * 组件的方法列表 | * 组件的方法列表 | ||||
| @@ -31,28 +34,104 @@ Component({ | |||||
| current: detail.key | current: detail.key | ||||
| }); | }); | ||||
| }, | }, | ||||
| handleChangeScroll({ detail }) { | handleChangeScroll({ detail }) { | ||||
| this.setData({ | |||||
| current_scroll: detail.key | |||||
| let that = this; | |||||
| // 切换tab时重新初始化下list 和 allow_load | |||||
| that.setData({ | |||||
| current_scroll: detail.key, | |||||
| flag: "click", | |||||
| list: [], | |||||
| allow_load: true | |||||
| }); | }); | ||||
| this.getList(detail.key, 1); | |||||
| var val = detail.key; | |||||
| //通过这个传递数据 | |||||
| var myEventDetail = { | |||||
| val: val, | |||||
| pageNum: 1 | |||||
| }; | |||||
| // detail对象,提供给事件监听函数 | |||||
| this.triggerEvent("myevent", myEventDetail); | |||||
| }, | }, | ||||
| //滚动到底部触发事件 | |||||
| searchScrollLower() { | |||||
| // let that = this; | |||||
| console.log("00000000"); | |||||
| // if(that.data.searchLoading && !that.data.searchLoadingComplete){ | |||||
| // that.setData({ | |||||
| // searchPageNum: that.data.searchPageNum+1, | |||||
| // isFromSearch: false | |||||
| // }); | |||||
| // that.fetchSearchList(); | |||||
| // } | |||||
| getList(key, pageNum) { | |||||
| var that = this; | |||||
| app.couponListCallback = token => { | |||||
| Http.setToken(token); | |||||
| // 券list获取 | |||||
| if (that.data.allow_load) { | |||||
| /** | |||||
| * 用户在点击切换时 不showloadimg | |||||
| * 只有用户在下拉加载的时候 showloading | |||||
| */ | |||||
| wx.showLoading({ | |||||
| title: "飞速加载中" | |||||
| }); | |||||
| // 根据 key == 0 区分全部或其它tab,决定是否传参数 business | |||||
| if (key == 0) { | |||||
| var param = { | |||||
| pageNum: pageNum, | |||||
| pageSize: 2, | |||||
| targetAd: 1 | |||||
| }; | |||||
| } else { | |||||
| var param = { | |||||
| pageNum: pageNum, | |||||
| pageSize: 2, | |||||
| business: key, | |||||
| targetAd: 1 | |||||
| }; | |||||
| } | |||||
| // 请求接口 | |||||
| Http.get({ | |||||
| url: config.api.couponChannelList, | |||||
| data: param | |||||
| }).then(res => { | |||||
| console.log(res); | |||||
| if (pageNum >= res.data.pages) { | |||||
| // wx.showToast({ | |||||
| // title: "加载完成喽", | |||||
| // icon: "success" | |||||
| // }); | |||||
| that.setData({ | |||||
| allow_load: false | |||||
| }); | |||||
| } | |||||
| /** | |||||
| * 先赋值后渲染页面 | |||||
| * concat 不会改变原数组值 | |||||
| * push 会改变原数组值,但不会一条一条插入,而是整个数组插入 | |||||
| */ | |||||
| that.data.list = that.data.list.concat(res.data.list); | |||||
| that.setData({ | |||||
| list: that.data.list | |||||
| }); | |||||
| }); | |||||
| setTimeout(function() { | |||||
| wx.hideLoading(); | |||||
| }, 1000); | |||||
| } else { | |||||
| console.info("allow_load==false 已禁止加载"); | |||||
| } | |||||
| }; | |||||
| if (app.globalData.token && app.globalData.token != null) { | |||||
| app.couponListCallback(app.globalData.token); | |||||
| } | |||||
| } | } | ||||
| }, | }, | ||||
| ready() { | ready() { | ||||
| var that = this; | |||||
| app.couponListCallback = token => { | |||||
| let that = this; | |||||
| app.businessListCallback = token => { | |||||
| Http.setToken(token); | Http.setToken(token); | ||||
| // business获取 | // business获取 | ||||
| Http.get({ | Http.get({ | ||||
| @@ -63,28 +142,14 @@ Component({ | |||||
| type: 1 | type: 1 | ||||
| } | } | ||||
| }).then(res => { | }).then(res => { | ||||
| console.log(res); | |||||
| that.setData({ | that.setData({ | ||||
| tabs: res.data.list | tabs: res.data.list | ||||
| }); | }); | ||||
| }); | }); | ||||
| // 券list获取 | |||||
| Http.get({ | |||||
| url: config.api.couponList, | |||||
| data: { | |||||
| pageNum: 1, | |||||
| pageSize: 20 | |||||
| } | |||||
| }).then(res => { | |||||
| console.log(res); | |||||
| that.setData({ | |||||
| list: res.data.list | |||||
| }); | |||||
| }); | |||||
| }; | }; | ||||
| if (app.globalData.token && app.globalData.token != null) { | if (app.globalData.token && app.globalData.token != null) { | ||||
| app.couponListCallback(app.globalData.token); | app.couponListCallback(app.globalData.token); | ||||
| } | } | ||||
| that.getList(0, 1); | |||||
| } | } | ||||
| }); | }); | ||||
| @@ -1,8 +1,6 @@ | |||||
| <view class="index-coupons"> | <view class="index-coupons"> | ||||
| <i-tabs current="{{ current_scroll }}" scroll bindchange="handleChangeScroll"> | |||||
| <i-tabs current="{{current_scroll}}" scroll bindchange="handleChangeScroll"> | |||||
| <i-tab wx:for="{{tabs}}" wx:key="unique" key="{{item.id}}" title="{{item.title}}"></i-tab> | <i-tab wx:for="{{tabs}}" wx:key="unique" key="{{item.id}}" title="{{item.title}}"></i-tab> | ||||
| </i-tabs> | </i-tabs> | ||||
| <scroll-view scroll-y="true" bindscrolltolower="searchScrollLower"> | |||||
| <c-coupons wx:for="{{list}}" paramAtoB="{{scrollHeight}}" wx:key="unique" data="{{item}}" /> | |||||
| </scroll-view> | |||||
| <c-coupons wx:for="{{list}}" paramAtoB="{{scrollHeight}}" wx:key="unique" data="{{item}}" /> | |||||
| </view> | </view> | ||||
| @@ -6,7 +6,8 @@ Page({ | |||||
| market: app.globalData.market, | market: app.globalData.market, | ||||
| list: [], | list: [], | ||||
| swiperCurrent: 0, | swiperCurrent: 0, | ||||
| scrollTop: 0 | |||||
| scrollTop: 0, | |||||
| page: 1 // 刷新进入页面时已经加载了第一页数据,onReachBottom时 page++,从第2页开始加载 | |||||
| }, | }, | ||||
| swiperChange: function(e) { | swiperChange: function(e) { | ||||
| this.setData({ | this.setData({ | ||||
| @@ -16,15 +17,10 @@ Page({ | |||||
| /** | /** | ||||
| * 生命周期函数--监听页面初次渲染完成 | * 生命周期函数--监听页面初次渲染完成 | ||||
| */ | */ | ||||
| onShow: function(options) { | |||||
| console.log("0000"); | |||||
| console.log(app.globalData.token); | |||||
| }, | |||||
| onLoad: function(options) { | onLoad: function(options) { | ||||
| var that = this; | var that = this; | ||||
| var scene = decodeURIComponent(options.scene); | var scene = decodeURIComponent(options.scene); | ||||
| if (app.globalData.token && app.globalData.token != null) { | if (app.globalData.token && app.globalData.token != null) { | ||||
| console.log("index ++ " + app.globalData.token); | |||||
| } else { | } else { | ||||
| // 由于是网络请求,可能会在 Page.onLoad 之后才返回 | // 由于是网络请求,可能会在 Page.onLoad 之后才返回 | ||||
| // 所以此处加入 callback 以防止这种情况 | // 所以此处加入 callback 以防止这种情况 | ||||
| @@ -39,10 +35,8 @@ Page({ | |||||
| sceneAddress: app.globalData.sceneAddress | sceneAddress: app.globalData.sceneAddress | ||||
| } | } | ||||
| }).then(res => { | }).then(res => { | ||||
| //banner | |||||
| console.log(res); | |||||
| //banner渲染 | |||||
| app.globalData.token = res.data.token; | app.globalData.token = res.data.token; | ||||
| console.log(app.globalData.token) | |||||
| Http.setToken(res.data.token); | Http.setToken(res.data.token); | ||||
| if (res.code == 200) { | if (res.code == 200) { | ||||
| Http.get({ | Http.get({ | ||||
| @@ -52,25 +46,43 @@ Page({ | |||||
| pageSize: 10 | pageSize: 10 | ||||
| } | } | ||||
| }).then(res => { | }).then(res => { | ||||
| console.log(res); | |||||
| that.setData({ | that.setData({ | ||||
| list: res.data.list | list: res.data.list | ||||
| }) | |||||
| console.log(res.data.list); | |||||
| }); | |||||
| }); | }); | ||||
| } | } | ||||
| }) | |||||
| }); | |||||
| } | } | ||||
| }) | |||||
| }); | |||||
| } | } | ||||
| wx.showLoading({ | |||||
| title: "加载中" | |||||
| }, | |||||
| onGetCode: function(e) { | |||||
| //子组件传递给父组件的值 | |||||
| this.setData({ | |||||
| code: e.detail.val, | |||||
| page: e.detail.pageNum | |||||
| }); | }); | ||||
| setTimeout(function() { | |||||
| wx.hideLoading(); | |||||
| }, 2200); | |||||
| }, | }, | ||||
| //下拉加载更多 | |||||
| onReachBottom: function() { | |||||
| let that = this; | |||||
| console.info("before++ " + that.data.page); | |||||
| that.data.page++; | |||||
| console.info("after++ " + that.data.page); | |||||
| that.setData({ | |||||
| page: that.data.page | |||||
| }); | |||||
| //父组件获得子组件的方法 | |||||
| //如果code == 0 | |||||
| if (that.data.code == 0 || that.data.code == undefined) { | |||||
| that.selectComponent("#lists").getList(0, that.data.page); | |||||
| } else { | |||||
| that.selectComponent("#lists").getList(that.data.code, that.data.page); | |||||
| } | |||||
| }, | |||||
| // 用户点击右上角分享 | // 用户点击右上角分享 | ||||
| onShareAppMessage: function() { | onShareAppMessage: function() { | ||||
| return { | return { | ||||
| @@ -4,7 +4,7 @@ | |||||
| <text class="iconfont icon-dingweib txt"></text> {{market.name}} <text class="iconfont icon-choose"></text> | <text class="iconfont icon-dingweib txt"></text> {{market.name}} <text class="iconfont icon-choose"></text> | ||||
| </navigator> | </navigator> | ||||
| </view> --> | </view> --> | ||||
| <c-banner wx:key="unique" list="{{list}}"/> | |||||
| <c-banner wx:key="unique" list="{{list}}" /> | |||||
| <c-rushToBuy /> | <c-rushToBuy /> | ||||
| <c-coupons /> | |||||
| <c-coupons id="lists" bind:myevent="onGetCode" /> | |||||
| </view> | </view> | ||||
| @@ -12,51 +12,46 @@ Component({ | |||||
| * 组件的初始数据 | * 组件的初始数据 | ||||
| */ | */ | ||||
| data: { | data: { | ||||
| list: [ | |||||
| // { | |||||
| // img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| // name: "海鲜焗饭", | |||||
| // time: "2天12小时25分钟", | |||||
| // oPrice: "59.00", | |||||
| // pPrice: "1.00", | |||||
| // }, | |||||
| // { | |||||
| // img: "http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg", | |||||
| // name: "海鲜焗饭", | |||||
| // time: "2天12小时25分钟", | |||||
| // oPrice: "59.00", | |||||
| // pPrice: "1.00", | |||||
| // }, | |||||
| // { | |||||
| // img: "http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg", | |||||
| // name: "海鲜焗饭", | |||||
| // time: "2天12小时25分钟", | |||||
| // oPrice: "59.00", | |||||
| // pPrice: "1.00", | |||||
| // }, | |||||
| // { | |||||
| // img: "http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg", | |||||
| // name: "海鲜焗饭", | |||||
| // time: "2天12小时25分钟", | |||||
| // oPrice: "59.00", | |||||
| // pPrice: "1.00", | |||||
| // }, | |||||
| ] | |||||
| list: [] | |||||
| }, | }, | ||||
| /** | /** | ||||
| * 组件的方法列表 | * 组件的方法列表 | ||||
| */ | */ | ||||
| methods: {}, | |||||
| methods: { | |||||
| gotomore: function() { | |||||
| wx.navigateTo({ | |||||
| url: "/pages/rushToBuy/index", | |||||
| success: function(res) { | |||||
| // success | |||||
| }, | |||||
| fail: function() { | |||||
| // fail | |||||
| }, | |||||
| complete: function() { | |||||
| // complete | |||||
| } | |||||
| }); | |||||
| }, | |||||
| gotodetail: function(e) { | |||||
| console.log(e); | |||||
| console.log("出错啦 大哥") | |||||
| console.log(e.currentTarget.dataset.couponid); | |||||
| console.log(e.currentTarget.dataset.targetad); | |||||
| wx.navigateTo({ | |||||
| url: `/pages/coupon/detail/index?id=${e.currentTarget.dataset.couponid}&targetAd=${e.currentTarget.dataset.targetad}` | |||||
| }); | |||||
| } | |||||
| }, | |||||
| ready() { | ready() { | ||||
| app.couponChannelListCallback = token => { | app.couponChannelListCallback = token => { | ||||
| console.log("couponChannelList init"); | |||||
| Http.setToken(token); | Http.setToken(token); | ||||
| Http.get({ | Http.get({ | ||||
| url: config.api.couponChannelList, | url: config.api.couponChannelList, | ||||
| data: { | data: { | ||||
| pageNum: 1, | pageNum: 1, | ||||
| pageSize: 10 | |||||
| pageSize: 2, | |||||
| targetAd: 2 | |||||
| } | } | ||||
| }).then(res => { | }).then(res => { | ||||
| console.log(res); | console.log(res); | ||||
| @@ -1,8 +1,8 @@ | |||||
| <view class="index-rushToBuy"> | <view class="index-rushToBuy"> | ||||
| <view class="index-rushToBuy-title">限时抢购</view> | |||||
| <view class="index-rushToBuy-title">限时抢购<text bindtap="gotomore">查看更多></text></view> | |||||
| <scroll-view scroll-x class="index-scroll-view"> | <scroll-view scroll-x class="index-scroll-view"> | ||||
| <view class="commodity" wx:for="{{list}}" wx:key="unique"> | <view class="commodity" wx:for="{{list}}" wx:key="unique"> | ||||
| <navigator url="/pages/coupon/detail/index"> | |||||
| <view bindtap="gotodetail" data-couponId="{{item.couponId}}" data-targetAd="{{item.targetAd}}"> | |||||
| <image class="commodity-img" src="{{item.coverImg}}" /> | <image class="commodity-img" src="{{item.coverImg}}" /> | ||||
| <view class="commodity-info"> | <view class="commodity-info"> | ||||
| <view class="commodity-info-name">{{item.subTitle}}</view> | <view class="commodity-info-name">{{item.subTitle}}</view> | ||||
| @@ -11,7 +11,7 @@ | |||||
| <text class="commodity-info-price-o">¥{{item.priceStr}}</text> | <text class="commodity-info-price-o">¥{{item.priceStr}}</text> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| </navigator> | |||||
| </view> | |||||
| </view> | </view> | ||||
| </scroll-view> | </scroll-view> | ||||
| </view> | </view> | ||||
| @@ -11,6 +11,12 @@ | |||||
| padding-left: 30rpx; | padding-left: 30rpx; | ||||
| } | } | ||||
| .index-rushToBuy-title text{ | |||||
| float: right; | |||||
| margin-right: 20rpx; | |||||
| color: #f96563; | |||||
| font-size: 26rpx; | |||||
| } | |||||
| .index-scroll-view { | .index-scroll-view { | ||||
| width: 100%; | width: 100%; | ||||
| white-space: nowrap; | white-space: nowrap; | ||||
| @@ -24,7 +30,7 @@ | |||||
| position: relative; | position: relative; | ||||
| background: #fff; | background: #fff; | ||||
| /* border: 1rpx solid #dddee1; */ | /* border: 1rpx solid #dddee1; */ | ||||
| width: 392rpx; | |||||
| width: 355rpx; | |||||
| box-shadow: 0 0 10px 0 rgba(211,211,211,0.50); | box-shadow: 0 0 10px 0 rgba(211,211,211,0.50); | ||||
| border-radius: 10rpx; | border-radius: 10rpx; | ||||
| } | } | ||||
| @@ -32,7 +38,7 @@ | |||||
| margin-right: 30rpx; | margin-right: 30rpx; | ||||
| } | } | ||||
| .index-scroll-view .commodity-img { | .index-scroll-view .commodity-img { | ||||
| height: 187rpx; | |||||
| height: 213rpx; | |||||
| } | } | ||||
| .index-scroll-view .commodity-img image{ | .index-scroll-view .commodity-img image{ | ||||
| width: 100%; | width: 100%; | ||||
| @@ -7,6 +7,7 @@ Page({ | |||||
| park: null, | park: null, | ||||
| carList: [], | carList: [], | ||||
| addCar: null, | addCar: null, | ||||
| tcq:2 | |||||
| }, | }, | ||||
| onLoad: function(options) { | onLoad: function(options) { | ||||
| var that = this | var that = this | ||||
| @@ -28,6 +29,20 @@ Page({ | |||||
| }) | }) | ||||
| } | } | ||||
| }, | }, | ||||
| //我的停车券的显示与消失 | |||||
| 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() { | jumpToAdd: function() { | ||||
| wx.navigateTo({ | wx.navigateTo({ | ||||
| url: '/pages/addPark/addPark', | url: '/pages/addPark/addPark', | ||||
| @@ -25,18 +25,19 @@ | |||||
| <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'> | <view class='addBox'> | ||||
| <view class='add' bindtap="jumpToAdd">点击添加我的爱车</view> | |||||
| <view class='add' bindtap="jumpToAdd"><text>+</text>添加爱车</view> | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <view class='bottonBox'> | <view class='bottonBox'> | ||||
| <view class='textStyle'> | |||||
| <view class='textStyle' bindtap='showquan'> | |||||
| <image src='../../assets/img/quan.png'></image> | <image src='../../assets/img/quan.png'></image> | ||||
| 我的停车券 | 我的停车券 | ||||
| <view class='detail'> | <view class='detail'> | ||||
| <image src='../../assets/img/down.png'></image> | |||||
| <image wx:if="{{tcq==1}}" src='../../assets/img/down.png'></image> | |||||
| <image wx:elif="{{tcq!=1}}" src='../../assets/img/right.png'></image> | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <view class='voucher'> | |||||
| <view class='voucher' wx:if="{{tcq==1}}"> | |||||
| <text class='textV1'>2小时免费停车券</text> | <text class='textV1'>2小时免费停车券</text> | ||||
| <text class='textV2'>¥10.00元</text> | <text class='textV2'>¥10.00元</text> | ||||
| <view class='choice'> | <view class='choice'> | ||||
| @@ -14,8 +14,8 @@ page{ | |||||
| .headBox image{ | .headBox image{ | ||||
| width: 150rpx; | width: 150rpx; | ||||
| height: 150rpx; | height: 150rpx; | ||||
| margin-right: 62rpx; | |||||
| border: 1px #cbcbcb solid; | |||||
| margin-right: 30rpx; | |||||
| border-radius:16rpx; | |||||
| } | } | ||||
| .numberBox{ | .numberBox{ | ||||
| width: 400rpx; | width: 400rpx; | ||||
| @@ -24,12 +24,11 @@ page{ | |||||
| .titleName{ | .titleName{ | ||||
| line-height: 60rpx; | line-height: 60rpx; | ||||
| height:60rpx; | height:60rpx; | ||||
| color: #333; | |||||
| font-size: 36rpx; | |||||
| color: #666; | |||||
| font-size: 32rpx; | |||||
| width: 400rpx; | width: 400rpx; | ||||
| word-break:break-all; | word-break:break-all; | ||||
| text-align: justify; | text-align: justify; | ||||
| } | } | ||||
| ::-webkit-scrollbar{ | ::-webkit-scrollbar{ | ||||
| width: 0; | width: 0; | ||||
| @@ -38,10 +37,10 @@ color: transparent; | |||||
| } | } | ||||
| .carLocation,.locationNumber{ | .carLocation,.locationNumber{ | ||||
| width: 400rpx; | width: 400rpx; | ||||
| height: 50rpx; | |||||
| color: #333; | |||||
| font-size: 28rpx; | |||||
| line-height: 50rpx; | |||||
| height: 40rpx; | |||||
| color: #666; | |||||
| font-size: 24rpx; | |||||
| line-height: 30rpx; | |||||
| } | } | ||||
| .borderBox{ | .borderBox{ | ||||
| width: 750rpx; | width: 750rpx; | ||||
| @@ -78,8 +77,14 @@ color: transparent; | |||||
| left: 50%; | left: 50%; | ||||
| top: 50%; | top: 50%; | ||||
| transform: translate(-50%,-50%); | transform: translate(-50%,-50%); | ||||
| font-size: 36rpx; | |||||
| color: #333; | |||||
| font-size: 34rpx; | |||||
| color: #666; | |||||
| border:2px dashed #eee; | |||||
| padding: 30rpx 50rpx; | |||||
| border-radius:16rpx; | |||||
| } | |||||
| .add text{ | |||||
| font-size: 40rpx; | |||||
| } | } | ||||
| .bottonBox{ | .bottonBox{ | ||||
| width: 750rpx; | width: 750rpx; | ||||
| @@ -1,65 +1,94 @@ | |||||
| // pages/index/sw/index.js | |||||
| let config = require("../../config/config.js"); | |||||
| let Http = require("../../utils/HttpBasics"); | |||||
| const app = getApp(); | |||||
| Page({ | Page({ | ||||
| /** | /** | ||||
| * 页面的初始数据 | * 页面的初始数据 | ||||
| */ | */ | ||||
| data: { | data: { | ||||
| list: [] | |||||
| }, | }, | ||||
| /** | /** | ||||
| * 生命周期函数--监听页面加载 | * 生命周期函数--监听页面加载 | ||||
| */ | */ | ||||
| onLoad: function (options) { | |||||
| }, | |||||
| onLoad: function(options) {}, | |||||
| /** | /** | ||||
| * 生命周期函数--监听页面初次渲染完成 | * 生命周期函数--监听页面初次渲染完成 | ||||
| */ | */ | ||||
| onReady: function () { | |||||
| }, | |||||
| /** | /** | ||||
| * 生命周期函数--监听页面显示 | * 生命周期函数--监听页面显示 | ||||
| */ | */ | ||||
| onShow: function () { | |||||
| onReady: function() { | |||||
| app.couponChannelListCallback = token => { | |||||
| Http.setToken(token); | |||||
| Http.get({ | |||||
| url: config.api.couponChannelList, | |||||
| data: { | |||||
| pageNum: 2, | |||||
| pageSize: 2, | |||||
| targetAd: 2 | |||||
| } | |||||
| }).then(res => { | |||||
| console.log(res); | |||||
| console.log("限时抢购页面"); | |||||
| this.setData({ | |||||
| list: res.data.list | |||||
| }); | |||||
| }); | |||||
| }; | |||||
| if (app.globalData.token && app.globalData.token != null) { | |||||
| console.log("couponChannelList init 1"); | |||||
| app.couponChannelListCallback(app.globalData.token); | |||||
| } | |||||
| }, | |||||
| //限时抢购的强请页面 | |||||
| gotodetail: function(e) { | |||||
| console.log(e) | |||||
| console.log("姐姐在测试") | |||||
| console.log(e.currentTarget.dataset.couponid); | |||||
| console.log(e.currentTarget.dataset.targetad); | |||||
| wx.navigateTo({ | |||||
| url: `/pages/coupon/detail/index?id=${e.currentTarget.dataset.couponid}&targetAd=${e.currentTarget.dataset.targetad}`, | |||||
| success: function(res) { | |||||
| // success | |||||
| }, | |||||
| fail: function() { | |||||
| // fail | |||||
| }, | |||||
| complete: function() { | |||||
| // complete | |||||
| } | |||||
| }); | |||||
| }, | }, | ||||
| /** | /** | ||||
| * 生命周期函数--监听页面隐藏 | * 生命周期函数--监听页面隐藏 | ||||
| */ | */ | ||||
| onHide: function () { | |||||
| }, | |||||
| onHide: function() {}, | |||||
| /** | /** | ||||
| * 生命周期函数--监听页面卸载 | * 生命周期函数--监听页面卸载 | ||||
| */ | */ | ||||
| onUnload: function () { | |||||
| }, | |||||
| onUnload: function() {}, | |||||
| /** | /** | ||||
| * 页面相关事件处理函数--监听用户下拉动作 | * 页面相关事件处理函数--监听用户下拉动作 | ||||
| */ | */ | ||||
| onPullDownRefresh: function () { | |||||
| onPullDownRefresh: function() { | |||||
| console.log(""); | |||||
| }, | }, | ||||
| /** | /** | ||||
| * 页面上拉触底事件的处理函数 | * 页面上拉触底事件的处理函数 | ||||
| */ | */ | ||||
| onReachBottom: function () { | |||||
| onReachBottom: function() { | |||||
| }, | }, | ||||
| /** | /** | ||||
| * 用户点击右上角分享 | * 用户点击右上角分享 | ||||
| */ | */ | ||||
| onShareAppMessage: function () { | |||||
| } | |||||
| }) | |||||
| onShareAppMessage: function() {} | |||||
| }); | |||||
| @@ -1,85 +1,31 @@ | |||||
| <!-- 限时抢购 --> | |||||
| <!-- 限时抢购 详情 --> | |||||
| <view class='flashSale'> | <view class='flashSale'> | ||||
| <view class='flashSaleItemWrap'> | |||||
| <view wx:for="{{list}}" class='flashSaleItemWrap' data-couponId="{{item.couponId}}" data-targetAd="{{item.targetAd}}" bindtap="gotodetail" wx:key="index"> | |||||
| <view class='flashSaleItem'> | <view class='flashSaleItem'> | ||||
| <view class='flashSaleItemTop'> | |||||
| <view class='flashSaleItemTopL'> | |||||
| <image src='/assets/img/food.png' class='food'></image> | |||||
| </view> | |||||
| <view class='flashSaleItemTopR'> | |||||
| <view class='flashSaleItemTopRTop'> | |||||
| <text class='foodname'>黑椒牛排</text> | |||||
| <text class='small'>小程序专享</text> | |||||
| </view> | |||||
| <view class='flashSaleItemTopRBottom'> | |||||
| <text class='presentPrice'>¥1.00</text> | |||||
| <text class='originalPrice'>¥59.00</text> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| <view class='flashSaleItemBottom'> | |||||
| <view class='flashSaleItemBottomTop'><text class='remainingTime'>剩余时间:</text><text class='realRemainingTime'>2天 12小时25分钟</text></view> | |||||
| <view class='flashSaleItemBottomBottm'> | |||||
| <view><text class="remainingNumber">剩余件数:</text><text class='realnumber'>19件</text></view> | |||||
| <view class='buy'>购买</view> | |||||
| </view> | |||||
| </view> | |||||
| <view class='flashSaleItemTop'> | |||||
| <view class='flashSaleItemTopL'> | |||||
| <image src='{{item.coverImg}}' class='food'></image> | |||||
| </view> | </view> | ||||
| </view> | |||||
| <view class='flashSaleItemWrap'> | |||||
| <view class='flashSaleItem'> | |||||
| <view class='flashSaleItemTop'> | |||||
| <view class='flashSaleItemTopL'> | |||||
| <image src='/assets/img/food.png' class='food'></image> | |||||
| </view> | |||||
| <view class='flashSaleItemTopR'> | |||||
| <view class='flashSaleItemTopRTop'> | |||||
| <text class='foodname'>黑椒牛排</text> | |||||
| <text class='small'>小程序专享</text> | |||||
| </view> | |||||
| <view class='flashSaleItemTopRBottom'> | |||||
| <text class='presentPrice'>¥1.00</text> | |||||
| <text class='originalPrice'>¥59.00</text> | |||||
| </view> | |||||
| </view> | |||||
| <view class='flashSaleItemTopR'> | |||||
| <view class='flashSaleItemTopRTop'> | |||||
| <text class='foodname'>{{item.title}}</text> | |||||
| <text class='small'>{{item.subTitle}}</text> | |||||
| </view> | </view> | ||||
| <view class='flashSaleItemBottom'> | |||||
| <view class='flashSaleItemBottomTop'><text class='remainingTime'>剩余时间:</text><text class='realRemainingTime'>2天 12小时25分钟</text></view> | |||||
| <view class='flashSaleItemBottomBottm'> | |||||
| <view><text class="remainingNumber">剩余件数:</text><text class='realnumber'>19件</text></view> | |||||
| <view class='buy'>购买</view> | |||||
| </view> | |||||
| <view class='flashSaleItemTopRBottom'> | |||||
| <text class='presentPrice'>¥{{item.salePriceStr}}</text> | |||||
| <text class='originalPrice'>¥{{item.priceStr}}</text> | |||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| </view> | |||||
| <view class='flashSaleItemWrap'> | |||||
| <view class='flashSaleItem'> | |||||
| <view class='flashSaleItemTop'> | |||||
| <view class='flashSaleItemTopL'> | |||||
| <image src='/assets/img/food.png' class='food'></image> | |||||
| </view> | |||||
| <view class='flashSaleItemTopR'> | |||||
| <view class='flashSaleItemTopRTop'> | |||||
| <text class='foodname'>黑椒牛排</text> | |||||
| <text class='small'>小程序专享</text> | |||||
| </view> | |||||
| <view class='flashSaleItemTopRBottom'> | |||||
| <text class='presentPrice'>¥1.00</text> | |||||
| <text class='originalPrice'>¥59.00</text> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| <view class='flashSaleItemBottom'> | |||||
| <view class='flashSaleItemBottomTop'><text class='remainingTime'>剩余时间:</text><text class='realRemainingTime'>2天12小时25分钟</text></view> | |||||
| <view class='flashSaleItemBottomBottm'> | |||||
| <view><text class="remainingNumber">剩余件数:</text><text class='realnumber'>19件</text></view> | |||||
| <view class='buy'>购买</view> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| <view class='flashSaleItemBottom'> | |||||
| <view class='flashSaleItemBottomTop'><text class='remainingTime'>剩余时间:</text><text class='realRemainingTime'>2天 12小时25分钟</text></view> | |||||
| <view class='flashSaleItemBottomBottm'> | |||||
| <view><text class="remainingNumber">剩余件数:</text><text class='realnumber'>{{item.remainInventory}}件</text></view> | |||||
| <view class='buy'>购买</view> | |||||
| </view> | </view> | ||||
| </view> | |||||
| </view> | </view> | ||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| @@ -54,7 +54,7 @@ | |||||
| margin-top: 15rpx; | margin-top: 15rpx; | ||||
| } | } | ||||
| .flashSaleItemTopRBottom{ | .flashSaleItemTopRBottom{ | ||||
| margin-top: 50rpx; | |||||
| margin-top: 24rpx; | |||||
| } | } | ||||
| .presentPrice{ | .presentPrice{ | ||||
| font-size: 36rpx; | font-size: 36rpx; | ||||
| @@ -101,4 +101,5 @@ | |||||
| border-radius: 10rpx; | border-radius: 10rpx; | ||||
| margin-left: 350rpx; | margin-left: 350rpx; | ||||
| font-size: 28rpx; | font-size: 28rpx; | ||||
| margin-top: -23rpx; | |||||
| } | } | ||||
| @@ -62,7 +62,7 @@ | |||||
| display: flex; | display: flex; | ||||
| height: 88rpx; | height: 88rpx; | ||||
| font-size: 30rpx; | font-size: 30rpx; | ||||
| color: #000; | |||||
| color: #666; | |||||
| line-height: 88rpx; | line-height: 88rpx; | ||||
| border-bottom: 1rpx solid #eee; | border-bottom: 1rpx solid #eee; | ||||
| } | } | ||||