| }) | }) | ||||
| }, | }, | ||||
| globalData: { | globalData: { | ||||
| // urlRoot: "https://dongfengqichen.jiyou-tech.com/",//测试接口根目录 | |||||
| urlRoot: "https://xing.venucia.com/api/",//接口根目录 | |||||
| // urlStatic: "https://www.jiyou-tech.com/2020/496_qichen/static",//测试静态资源根目录 | |||||
| urlStatic: "https://xingb.venucia.com/resource",//静态资源根目录 | |||||
| urlRoot: "https://dongfengqichen.jiyou-tech.com/",//测试接口根目录 | |||||
| // urlRoot: "https://xing.venucia.com/api/",//接口根目录 | |||||
| urlStatic: "https://www.jiyou-tech.com/2020/496_qichen/static",//测试静态资源根目录 | |||||
| // urlStatic: "https://xingb.venucia.com/resource",//静态资源根目录 | |||||
| openid: "",//OPENID | openid: "",//OPENID | ||||
| parentOpenid:"",//推荐人的openid | parentOpenid:"",//推荐人的openid | ||||
| session_key: "",//session_key | session_key: "",//session_key |
| "pages/guessSecondPrize/guessSecondPrize", | "pages/guessSecondPrize/guessSecondPrize", | ||||
| "pages/guessSecondResult/guessSecondResult", | "pages/guessSecondResult/guessSecondResult", | ||||
| "pages/guessSecondPoster/guessSecondPoster", | "pages/guessSecondPoster/guessSecondPoster", | ||||
| "pages/compute/compute" | |||||
| "pages/compute/compute", | |||||
| "pages/orderActivity/orderActivity", | |||||
| "pages/rotaryDraw/rotaryDraw" | |||||
| ], | ], | ||||
| "window": { | "window": { | ||||
| "backgroundTextStyle": "light", | "backgroundTextStyle": "light", |
| "component": true, | "component": true, | ||||
| "usingComponents": { | "usingComponents": { | ||||
| "placingOrder": "/pages/placingOrder/placingOrder", | "placingOrder": "/pages/placingOrder/placingOrder", | ||||
| "yuyue": "/pages/yuyue/yuyue" | |||||
| "yuyue": "/pages/yuyue/yuyue", | |||||
| "orderActivity": "/pages/orderActivity/orderActivity" | |||||
| } | } | ||||
| } | } |
| <image class="serviceIcon" style="top:{{nowPage!=1?'100rpx;':'206rpx;'}}" bindtap="maskShow" src="{{imgUrl+'/newIcon/3.png'}}"></image> | <image class="serviceIcon" style="top:{{nowPage!=1?'100rpx;':'206rpx;'}}" bindtap="maskShow" src="{{imgUrl+'/newIcon/3.png'}}"></image> | ||||
| <image class="serviceIcon" style="top:206rpx;" wx:if="{{nowPage!=1}}" bindtap="lookOrder" src="{{imgUrl+'/newImages7/18.png'}}"></image> | <image class="serviceIcon" style="top:206rpx;" wx:if="{{nowPage!=1}}" bindtap="lookOrder" src="{{imgUrl+'/newImages7/18.png'}}"></image> | ||||
| <!-- <image class="serviceIcon" wx:if="{{nowPage!=1}}" bindtap="openYuyue" src="{{imgUrl+'/newIcon/4.png'}}"></image> --> | <!-- <image class="serviceIcon" wx:if="{{nowPage!=1}}" bindtap="openYuyue" src="{{imgUrl+'/newIcon/4.png'}}"></image> --> | ||||
| <image class="serviceIcon" wx:if="{{!buyState && nowPage==1}}" bindtap="placingControl" src="{{imgUrl+'/newImages6/28.png'}}"></image> | |||||
| <!-- <image class="serviceIcon" wx:if="{{!buyState && nowPage==1}}" bindtap="placingControl" src="{{imgUrl+'/newImages6/28.png'}}"></image> --> | |||||
| <image class="serviceIcon" style="width:73rpx;height:83rpx;" wx:if="{{nowPage==1}}" bindtap="openYuyue" src="{{imgUrl+'/newImages8/4.png'}}"></image> | |||||
| <view wx:if="{{maskState}}" class="maskGroup" catchtouchmove="ture"> | <view wx:if="{{maskState}}" class="maskGroup" catchtouchmove="ture"> | ||||
| <view class="contentGroup"> | <view class="contentGroup"> | ||||
| <image style="width:100%;height:100%;" src="{{imgUrl+'/images/serviceBg.png'}}"></image> | <image style="width:100%;height:100%;" src="{{imgUrl+'/images/serviceBg.png'}}"></image> | ||||
| <button style="min-height: 0;" class="serviceBtn" open-type="contact"></button> | <button style="min-height: 0;" class="serviceBtn" open-type="contact"></button> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <placingOrder bindplacing="placingControl" wx:if="{{placing}}"></placingOrder> | |||||
| <orderActivity bindplacing="placingControl" wx:if="{{placing}}"></orderActivity> | |||||
| <yuyue bindyuyue="openYuyue" wx:if="{{yuyueShow}}"></yuyue> | <yuyue bindyuyue="openYuyue" wx:if="{{yuyueShow}}"></yuyue> | ||||
| </view> | </view> |
| kvurl: null,//顶部大图 | kvurl: null,//顶部大图 | ||||
| kvurlH:0, | kvurlH:0, | ||||
| showAppointment:false, | showAppointment:false, | ||||
| // placing:false, | |||||
| // buyState:false, | |||||
| placing:false,//是否显示下定按钮 | |||||
| buyState:false,//下订状态 | |||||
| isStartAdvertisingFunState:false, | isStartAdvertisingFunState:false, | ||||
| playBtnDeg:0, | playBtnDeg:0, | ||||
| videoShow: false, | videoShow: false, | ||||
| this.getFirstMsg(); | this.getFirstMsg(); | ||||
| }, | }, | ||||
| onShow: function () { | onShow: function () { | ||||
| // if (app.globalData.getBuyState) { | |||||
| // this.getBuyStates(); | |||||
| // } else { | |||||
| // app.globalData.buyStateSuccessFuc = this.getBuyStates; | |||||
| // } | |||||
| if (app.globalData.getBuyState) { | |||||
| this.getBuyStates(); | |||||
| } else { | |||||
| app.globalData.buyStateSuccessFuc = this.getBuyStates; | |||||
| } | |||||
| this.setData({ | this.setData({ | ||||
| siteSelect: false | siteSelect: false | ||||
| }) | }) | ||||
| this.data.subscribeData.parentOpenid = app.globalData.parentOpenid; | this.data.subscribeData.parentOpenid = app.globalData.parentOpenid; | ||||
| }, | }, | ||||
| // getBuyStates:function(){ | |||||
| // this.setData({ | |||||
| // buyState: app.globalData.getBuyState.success | |||||
| // }) | |||||
| // }, | |||||
| getBuyStates:function(){ | |||||
| this.setData({ | |||||
| buyState: app.globalData.getBuyState.success | |||||
| }) | |||||
| }, | |||||
| provinceChane: function (e) {//选中省 | provinceChane: function (e) {//选中省 | ||||
| this.setData({ | this.setData({ | ||||
| provinceValue: e.detail.value, | provinceValue: e.detail.value, | ||||
| showAppointment: !this.data.showAppointment | showAppointment: !this.data.showAppointment | ||||
| }) | }) | ||||
| }, | }, | ||||
| // placingControl:function(){ | |||||
| // if (app.globalData.getBuyState.success != this.data.buyState){ | |||||
| // this.setData({ | |||||
| // buyState: app.globalData.getBuyState.success | |||||
| // }) | |||||
| // } | |||||
| // this.setData({ | |||||
| // placing: !this.data.placing | |||||
| // }) | |||||
| // }, | |||||
| placingControl:function(){ | |||||
| if (app.globalData.getBuyState.success != this.data.buyState){ | |||||
| this.setData({ | |||||
| buyState: app.globalData.getBuyState.success | |||||
| }) | |||||
| } | |||||
| this.setData({ | |||||
| placing: !this.data.placing | |||||
| }) | |||||
| }, | |||||
| swiperChange:function(e){ | swiperChange:function(e){ | ||||
| var num = e.currentTarget.dataset.num; | var num = e.currentTarget.dataset.num; | ||||
| if(num==1){ | if(num==1){ |
| "service": "../component/service/index", | "service": "../component/service/index", | ||||
| "tabBar": "../component/tabBar/index", | "tabBar": "../component/tabBar/index", | ||||
| "yuyue": "/pages/yuyue/yuyue", | "yuyue": "/pages/yuyue/yuyue", | ||||
| "userMsg": "/pages/userMsg/userMsg" | |||||
| "userMsg": "/pages/userMsg/userMsg", | |||||
| "orderActivity": "/pages/orderActivity/orderActivity" | |||||
| } | } | ||||
| } | } |
| <view class="main" wx:if="{{isStartAdvertising==0 || !isStartAdvertisingShow}}"> | <view class="main" wx:if="{{isStartAdvertising==0 || !isStartAdvertisingShow}}"> | ||||
| <view class="contentFrame"> | <view class="contentFrame"> | ||||
| <view class="newImages2-76"> | <view class="newImages2-76"> | ||||
| <image style="width:750rpx;height:11693rpx;" src="{{imgUrl+'/newImages8/newHome/newHomeBg.png'}}"></image> | |||||
| <!-- <image style="width:750rpx;height:10368rpx;" src="{{imgUrl+'/newImages4/16.png'}}"></image> --> | <!-- <image style="width:750rpx;height:10368rpx;" src="{{imgUrl+'/newImages4/16.png'}}"></image> --> | ||||
| <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_01.png?v=002'}}"></image> | |||||
| <!-- <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_01.png?v=002'}}"></image> | |||||
| <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_02.png?v=004'}}"></image> | <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_02.png?v=004'}}"></image> | ||||
| <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_03.png'}}"></image> | <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_03.png'}}"></image> | ||||
| <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_04.png'}}"></image> | <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_04.png'}}"></image> | ||||
| <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_05.png'}}"></image> | <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_05.png'}}"></image> | ||||
| <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_06.png'}}"></image> | <image style="width:750rpx;height:1600rpx;" src="{{imgUrl+'/newImages6/images/newImg_06.png'}}"></image> | ||||
| <image style="width:750rpx;height:768rpx;" src="{{imgUrl+'/newImages6/images/newImg_07.png'}}"></image> | |||||
| <image style="width:750rpx;height:768rpx;" src="{{imgUrl+'/newImages6/images/newImg_07.png'}}"></image> --> | |||||
| </view> | </view> | ||||
| <view class="videoGroup" bindtap="playVideo"> | <view class="videoGroup" bindtap="playVideo"> | ||||
| <image class="newImages2-108" animation="{{playBtnDeg}}" src="{{imgUrl+'/newImages3/32.png'}}"></image> | |||||
| <image class="newImages2-110" src="{{imgUrl+'/newImages3/31.png'}}"></image> | |||||
| <image class="newImages2-108" animation="{{playBtnDeg}}" src="{{imgUrl+'/newImages8/10.png'}}"></image> | |||||
| <image class="newImages2-110" src="{{imgUrl+'/newImages8/11.png'}}"></image> | |||||
| <video id="myVideo" class="myVideo" wx:if="{{videoShow}}" bindfullscreenchange="closeFull" src="{{videoList['videoUrl']}}"></video> | <video id="myVideo" class="myVideo" wx:if="{{videoShow}}" bindfullscreenchange="closeFull" src="{{videoList['videoUrl']}}"></video> | ||||
| </view> | </view> | ||||
| <image class="computeBtn" bindtap="compute" src="{{imgUrl+'/newImages7/19.png'}}"></image> | <image class="computeBtn" bindtap="compute" src="{{imgUrl+'/newImages7/19.png'}}"></image> | ||||
| <image class="newImages2-11" bindtap="openYuyue" src="{{imgUrl+'/newImages7/20.png'}}"></image> | |||||
| <image class="newImages2-11" bindtap="placingControl" wx:if="{{!buyState}}" src="{{imgUrl+'/newImages8/5.png'}}"></image> | |||||
| <image class="newImages2-12" bindtap="lookConfigure" src="{{imgUrl+'/newImages2/98.png'}}"></image> | <image class="newImages2-12" bindtap="lookConfigure" src="{{imgUrl+'/newImages2/98.png'}}"></image> | ||||
| <image class="newImages2-13" bindtap="vrLookCar" src="{{imgUrl+'/newImages2/99.png'}}"></image> | <image class="newImages2-13" bindtap="vrLookCar" src="{{imgUrl+'/newImages2/99.png'}}"></image> | ||||
| <swiper class="swiper1" bindchange="swiperChange" data-num="1" current="{{swiperGroup.one.current}}"> | <swiper class="swiper1" bindchange="swiperChange" data-num="1" current="{{swiperGroup.one.current}}"> | ||||
| <service></service> | <service></service> | ||||
| <yuyue bindyuyue="openYuyue" wx:if="{{yuyueShow}}"></yuyue> | <yuyue bindyuyue="openYuyue" wx:if="{{yuyueShow}}"></yuyue> | ||||
| <orderActivity bindplacing="placingControl" wx:if="{{placing}}"></orderActivity> | |||||
| </view> | </view> | ||||
| <userMsg bindaddress="addressControl" wx:if="{{addressShow}}"></userMsg> | <userMsg bindaddress="addressControl" wx:if="{{addressShow}}"></userMsg> | ||||
| <tabBar wx:if="{{isStartAdvertising==0 || !isStartAdvertisingShow}}"></tabBar> | <tabBar wx:if="{{isStartAdvertising==0 || !isStartAdvertisingShow}}"></tabBar> |
| width:390rpx; | width:390rpx; | ||||
| height: 62rpx; | height: 62rpx; | ||||
| position: absolute; | position: absolute; | ||||
| top: 3718rpx; | |||||
| top: 5043rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| } | } | ||||
| width:390rpx; | width:390rpx; | ||||
| height: 61rpx; | height: 61rpx; | ||||
| position: absolute; | position: absolute; | ||||
| top: 4088rpx; | |||||
| top: 5413rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| } | } | ||||
| .swiper1{ | .swiper1{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 0; | left: 0; | ||||
| top: 5012rpx; | |||||
| top: 6337rpx; | |||||
| width: 750rpx; | width: 750rpx; | ||||
| height: 477rpx; | height: 477rpx; | ||||
| } | } | ||||
| .arrow-left-1,.arrow-right-1,.arrow-left-2,.arrow-right-2,.arrow-left-3,.arrow-right-3,.arrow-left-4,.arrow-right-4{ | .arrow-left-1,.arrow-right-1,.arrow-left-2,.arrow-right-2,.arrow-left-3,.arrow-right-3,.arrow-left-4,.arrow-right-4{ | ||||
| position: absolute; | position: absolute; | ||||
| top: 5012rpx; | |||||
| top: 6337rpx; | |||||
| height: 477rpx; | height: 477rpx; | ||||
| display: flex; | display: flex; | ||||
| align-items: center; | align-items: center; | ||||
| right:18rpx; | right:18rpx; | ||||
| } | } | ||||
| .arrow-left-2,.arrow-right-2{ | .arrow-left-2,.arrow-right-2{ | ||||
| top: 6406rpx; | |||||
| top: 7731rpx; | |||||
| height: 496rpx; | height: 496rpx; | ||||
| } | } | ||||
| .arrow-left-3,.arrow-right-3{ | .arrow-left-3,.arrow-right-3{ | ||||
| top: 7976rpx; | |||||
| top: 9301rpx; | |||||
| height: 402rpx; | height: 402rpx; | ||||
| } | } | ||||
| .arrow-left-4,.arrow-right-4{ | .arrow-left-4,.arrow-right-4{ | ||||
| top: 9459rpx; | |||||
| top: 10784rpx; | |||||
| height: 447rpx; | height: 447rpx; | ||||
| } | } | ||||
| .newImages2-78{ | .newImages2-78{ | ||||
| .dotGroup1,.dotGroup2,.dotGroup3,.dotGroup4{ | .dotGroup1,.dotGroup2,.dotGroup3,.dotGroup4{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 0; | left: 0; | ||||
| top: 5454rpx; | |||||
| top: 6779rpx; | |||||
| width: 750rpx; | width: 750rpx; | ||||
| height: 16rpx; | height: 16rpx; | ||||
| display: flex; | display: flex; | ||||
| justify-content: center; | justify-content: center; | ||||
| } | } | ||||
| .dotGroup2{ | .dotGroup2{ | ||||
| top: 6872rpx; | |||||
| top: 8197rpx; | |||||
| } | } | ||||
| .dotGroup3{ | .dotGroup3{ | ||||
| top: 8331rpx; | |||||
| top: 9656rpx; | |||||
| } | } | ||||
| .dotGroup4{ | .dotGroup4{ | ||||
| top: 9869rpx; | |||||
| top: 11194rpx; | |||||
| } | } | ||||
| .newImages2-80{ | .newImages2-80{ | ||||
| width: 17rpx; | width: 17rpx; | ||||
| } | } | ||||
| .testText{ | .testText{ | ||||
| position: absolute; | position: absolute; | ||||
| top: 5508rpx; | |||||
| top: 6833rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| width: 584rpx; | width: 584rpx; | ||||
| .swiper2{ | .swiper2{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 0; | left: 0; | ||||
| top: 6406rpx; | |||||
| top: 7731rpx; | |||||
| width: 750rpx; | width: 750rpx; | ||||
| height: 496rpx; | height: 496rpx; | ||||
| } | } | ||||
| .testText2{ | .testText2{ | ||||
| position: absolute; | position: absolute; | ||||
| top: 6922rpx; | |||||
| top: 8247rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| width: 598rpx; | width: 598rpx; | ||||
| .swiper3{ | .swiper3{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 0; | left: 0; | ||||
| top: 7976rpx; | |||||
| top: 9301rpx; | |||||
| width: 750rpx; | width: 750rpx; | ||||
| height: 402rpx; | height: 402rpx; | ||||
| } | } | ||||
| .testText3{ | .testText3{ | ||||
| position: absolute; | position: absolute; | ||||
| top: 8400rpx; | |||||
| top: 9725rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| width: 513rpx; | width: 513rpx; | ||||
| .swiper4{ | .swiper4{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 0; | left: 0; | ||||
| top: 9459rpx; | |||||
| top: 10784rpx; | |||||
| width: 750rpx; | width: 750rpx; | ||||
| height: 447rpx; | height: 447rpx; | ||||
| } | } | ||||
| .testText4{ | .testText4{ | ||||
| position: absolute; | position: absolute; | ||||
| top: 9925rpx; | |||||
| top: 11250rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| width: 522rpx; | width: 522rpx; | ||||
| .videoGroup{ | .videoGroup{ | ||||
| position: absolute; | position: absolute; | ||||
| left: 340rpx; | left: 340rpx; | ||||
| top: 518rpx; | |||||
| width: 69rpx; | |||||
| top: 560rpx; | |||||
| width: 72rpx; | |||||
| height: 72rpx; | height: 72rpx; | ||||
| display: flex; | display: flex; | ||||
| flex-direction: column; | flex-direction: column; | ||||
| height: 72rpx; | height: 72rpx; | ||||
| } | } | ||||
| .newImages2-110{ | .newImages2-110{ | ||||
| width: 21rpx; | |||||
| width: 22rpx; | |||||
| height: 29rpx; | height: 29rpx; | ||||
| margin-top: -42rpx; | margin-top: -42rpx; | ||||
| } | } | ||||
| width:390rpx; | width:390rpx; | ||||
| height: 62rpx; | height: 62rpx; | ||||
| position: absolute; | position: absolute; | ||||
| top: 2570rpx; | |||||
| top: 3895rpx; | |||||
| left: 50%; | left: 50%; | ||||
| transform: translateX(-50%); | transform: translateX(-50%); | ||||
| } | } |
| isLogin:false,//登录状态 | isLogin:false,//登录状态 | ||||
| selectNow:0,//现在的选项 | selectNow:0,//现在的选项 | ||||
| taskNow:2,//现在的任务类型 | taskNow:2,//现在的任务类型 | ||||
| recordNow: 1,//现在的记录类型 | |||||
| recordNow: 2,//现在的记录类型 | |||||
| taskList: [],//任务列表 | taskList: [],//任务列表 | ||||
| shareFriendList:[],//星探小分队列表 | shareFriendList:[],//星探小分队列表 | ||||
| couponList:[],//卡券列表 | couponList:[],//卡券列表 |
| </view> | </view> | ||||
| <view class="taskGroup" wx:if="{{selectNow==2}}"> | <view class="taskGroup" wx:if="{{selectNow==2}}"> | ||||
| <view class="taskSelect"> | <view class="taskSelect"> | ||||
| <view bindtap="selectRecord" data-type='2' class="taskText recordText {{recordNow==2?'taskText2':''}}">618星动狂欢节</view> | |||||
| <view bindtap="selectRecord" data-type='1' class="taskText recordText {{recordNow==1?'taskText2':''}}">玩出惊喜奖品</view> | <view bindtap="selectRecord" data-type='1' class="taskText recordText {{recordNow==1?'taskText2':''}}">玩出惊喜奖品</view> | ||||
| <!-- <view bindtap="selectRecord" data-type='2' class="taskText recordText {{recordNow==2?'taskText2':''}}">每日任务奖品</view> --> | <!-- <view bindtap="selectRecord" data-type='2' class="taskText recordText {{recordNow==2?'taskText2':''}}">每日任务奖品</view> --> | ||||
| <view bindtap="selectRecord" data-type='3' class="taskText recordText {{recordNow==3?'taskText2':''}}">星探奖励</view> | <view bindtap="selectRecord" data-type='3' class="taskText recordText {{recordNow==3?'taskText2':''}}">星探奖励</view> | ||||
| <!-- <view class="recordFrame"> --> | <!-- <view class="recordFrame"> --> | ||||
| <image class="newImages1" wx:if="{{!recordList.length && recordNow==1 && !getState}}" src="{{imgUrl+'/newImages3/16.png'}}"></image> | <image class="newImages1" wx:if="{{!recordList.length && recordNow==1 && !getState}}" src="{{imgUrl+'/newImages3/16.png'}}"></image> | ||||
| <image class="newImages2-64" bindtap="enterLucky" wx:if="{{!recordList.length && recordNow==1 && !getState}}" src="{{imgUrl+'/newImages2/64.png'}}"></image> | <image class="newImages2-64" bindtap="enterLucky" wx:if="{{!recordList.length && recordNow==1 && !getState}}" src="{{imgUrl+'/newImages2/64.png'}}"></image> | ||||
| <image class="newImages5" wx:if="{{!recordList.length && recordNow==2 && !getState}}" src="{{imgUrl+'/newImages2/65.png'}}"></image> | |||||
| <image class="newImages5" wx:if="{{!recordList.length && recordNow==2 && !getState}}" src="{{imgUrl+'/newImages8/12.png'}}"></image> | |||||
| <image class="newImages6" bindtap="enterEvery" wx:if="{{!recordList.length && recordNow==2 && !getState}}" src="{{imgUrl+'/newImages2/64.png'}}"></image> | <image class="newImages6" bindtap="enterEvery" wx:if="{{!recordList.length && recordNow==2 && !getState}}" src="{{imgUrl+'/newImages2/64.png'}}"></image> | ||||
| <image class="newImages8" wx:if="{{!recordList.length && recordNow==3 && !getState}}" src="{{imgUrl+'/newImages3/19.png'}}"></image> | <image class="newImages8" wx:if="{{!recordList.length && recordNow==3 && !getState}}" src="{{imgUrl+'/newImages3/19.png'}}"></image> | ||||
| <image class="newImages6" bindtap="starGo" wx:if="{{!recordList.length && recordNow==3 && !getState}}" src="{{imgUrl+'/newImages2/64.png'}}"></image> | <image class="newImages6" bindtap="starGo" wx:if="{{!recordList.length && recordNow==3 && !getState}}" src="{{imgUrl+'/newImages2/64.png'}}"></image> |
| margin: 0 auto; | margin: 0 auto; | ||||
| } | } | ||||
| .newImages5{ | .newImages5{ | ||||
| width: 223rpx; | |||||
| height:157rpx; | |||||
| width: 195rpx; | |||||
| height:182rpx; | |||||
| margin: 0 auto; | margin: 0 auto; | ||||
| margin-top: 30rpx; | margin-top: 30rpx; | ||||
| margin-bottom: 26rpx; | |||||
| margin-bottom: 17rpx; | |||||
| } | } | ||||
| .newImages6{ | .newImages6{ | ||||
| width: 256rpx; | width: 256rpx; |
| // pages/orderActivity/orderActivity.js | |||||
| const app = getApp() | |||||
| Component({ | |||||
| /** | |||||
| * 组件的属性列表 | |||||
| */ | |||||
| properties: { | |||||
| }, | |||||
| /** | |||||
| * 组件的初始数据 | |||||
| */ | |||||
| data: { | |||||
| imgUrl: app.globalData.urlStatic,//图片路径 | |||||
| agreement:false, | |||||
| isAgreement: true,//是否同意协议 | |||||
| siteSelect: false,//是否显示位置选择框 | |||||
| phoneInputShow: false,//是否显示电话输入框 | |||||
| provinceDataAll:null,//地区所有数据 | |||||
| provinceDataArr:[[""],[""]],//省市数据 | |||||
| provinceDataValue:[0,0],//选中的省市下标 | |||||
| nowProvince:"",//选中的省市文字 | |||||
| storeArr:[],//专营店数据 | |||||
| storeValue:0,//选中的专营店下标 | |||||
| verificationCode: '获取验证码',//验证码文案 | |||||
| sendCode: true, | |||||
| appointment: true, | |||||
| mobile2: "", | |||||
| tipShow:true, | |||||
| subscribeData: { | |||||
| realname: "",//姓名 | |||||
| mobile: "",//手机号 | |||||
| captcha: "",//验证码 | |||||
| province: "",//省份 | |||||
| city:"",//市区 | |||||
| agent_code: "",//经销商编码 | |||||
| agentDetail: "",//经销商详细信息 | |||||
| parentOpenid: app.globalData.parentOpenid,//好友openid | |||||
| scene: app.globalData.sceneSource, | |||||
| source:2, | |||||
| }, | |||||
| getBuyState: false, | |||||
| mobileType: 2 | |||||
| }, | |||||
| attached: function () { | |||||
| if (app.globalData.openid) { | |||||
| this.loadFun(); | |||||
| } else { | |||||
| app.globalData.openidSuccessFuc = this.loadFun; | |||||
| } | |||||
| }, | |||||
| /** | |||||
| * 组件的方法列表 | |||||
| */ | |||||
| methods: { | |||||
| closeXieyi: function () { | |||||
| this.triggerEvent('placing') | |||||
| }, | |||||
| getUserPhone: function (e) {//获取用户手机号 | |||||
| if (e.detail.errMsg == 'getPhoneNumber:ok') { | |||||
| app.getMobile(e.detail.encryptedData, e.detail.iv, res => { | |||||
| if (res.code == 200) { | |||||
| this.setData({ | |||||
| phoneInputShow: true | |||||
| }) | |||||
| this.cutType(); | |||||
| if (res.data && res.data.decodeData) { | |||||
| this.data.subscribeData.mobile = res.data.decodeData.phoneNumber; | |||||
| this.setData({ | |||||
| subscribeData: this.data.subscribeData | |||||
| }) | |||||
| } | |||||
| } else { | |||||
| wx.showToast({ | |||||
| title: res.msg, | |||||
| icon: "none" | |||||
| }) | |||||
| } | |||||
| }, this); | |||||
| } | |||||
| }, | |||||
| loadFun: function () { | |||||
| this.getUserLocation();//获取用户当前位置 | |||||
| if (app.globalData.userMobile) { | |||||
| this.data.subscribeData.mobile = app.globalData.userMobile; | |||||
| this.setData({ | |||||
| phoneInputShow: true, | |||||
| subscribeData: this.data.subscribeData | |||||
| }) | |||||
| } | |||||
| }, | |||||
| getRealname: function (e) {//获取用户输入的姓名 | |||||
| this.data.subscribeData.realname = e.detail.value; | |||||
| }, | |||||
| getMobile: function (e) {//获取用户输入的电话 | |||||
| this.data.subscribeData.mobile = e.detail.value; | |||||
| }, | |||||
| getMobile2: function (e) {//获取用户输入的电话---无验证码 | |||||
| this.data.mobile2 = e.detail.value; | |||||
| }, | |||||
| getCaptcha: function (e) {//获取用户输入的验证码 | |||||
| this.data.subscribeData.captcha = e.detail.value; | |||||
| }, | |||||
| getDistributorList: function (longitude, latitude) {//获取经销商列表 | |||||
| app.wxRequest(app.globalData.urlRoot + "agent/getAgentList", { longitude: longitude, latitude: latitude }, res => { | |||||
| if (res.code == 200) { | |||||
| //整理数据 | |||||
| var datas = res.data; | |||||
| var province = []; | |||||
| var city = []; | |||||
| for(let i=0;i<res.data.list.length;i++){ | |||||
| province.push(res.data.list[i].province); | |||||
| } | |||||
| for (let j = 0; j < res.data.list[res.data.nearData.provinceIndex].children.length; j++) { | |||||
| city.push(res.data.list[res.data.nearData.provinceIndex].children[j].city) | |||||
| } | |||||
| //将数据赋值给变量 | |||||
| this.setData({ | |||||
| provinceDataAll: res.data.list, | |||||
| provinceDataArr: [province, city], | |||||
| provinceDataValue: [res.data.nearData.provinceIndex, res.data.nearData.cityIndex], | |||||
| nowProvince: province[res.data.nearData.provinceIndex] + " " + city[res.data.nearData.cityIndex], | |||||
| storeArr: res.data.list[res.data.nearData.provinceIndex].children[res.data.nearData.cityIndex].children, | |||||
| storeValue: res.data.nearData.agentIndex | |||||
| }) | |||||
| } else { | |||||
| wx.showToast({ | |||||
| title: res.msg, | |||||
| icon: "none" | |||||
| }) | |||||
| } | |||||
| }, this); | |||||
| }, | |||||
| getCode: function (e) {//获取验证码 | |||||
| if (!app.mobileVerify(this.data.mobile2)) { | |||||
| if (this.data.mobile2) { | |||||
| wx.showToast({ | |||||
| title: '请输入正确的电话', | |||||
| icon: 'none' | |||||
| }) | |||||
| } else { | |||||
| wx.showToast({ | |||||
| title: '请输入电话', | |||||
| icon: 'none' | |||||
| }) | |||||
| } | |||||
| return; | |||||
| } | |||||
| if (!this.data.sendCode) { | |||||
| return; | |||||
| } | |||||
| this.data.sendCode = false; | |||||
| app.wxRequest(app.globalData.urlRoot + "captcha/sendCaptcha", { mobile: this.data.mobile2 }, res => { | |||||
| if (res.code == 200) { | |||||
| this.countDown(); | |||||
| wx.showToast({ | |||||
| title: '验证码获取成功', | |||||
| icon: "none" | |||||
| }) | |||||
| this.setData({ | |||||
| verificationCode: 60 | |||||
| }) | |||||
| } else { | |||||
| this.data.sendCode = true; | |||||
| wx.showToast({ | |||||
| title: res.msg, | |||||
| icon: "none" | |||||
| }) | |||||
| } | |||||
| }, this) | |||||
| }, | |||||
| countDown: function () {//倒计时 | |||||
| setTimeout(() => { | |||||
| this.setData({ | |||||
| verificationCode: this.data.verificationCode - 1 | |||||
| }) | |||||
| if (this.data.verificationCode > 0) { | |||||
| this.countDown(); | |||||
| } else { | |||||
| this.setData({ | |||||
| verificationCode: "获取验证码" | |||||
| }) | |||||
| this.data.sendCode = true; | |||||
| } | |||||
| }, 1000); | |||||
| }, | |||||
| getUserLocation: function (e) { | |||||
| wx.getLocation({ | |||||
| type: 'gcj02', //wgs84 | |||||
| success: (res) => { | |||||
| this.getDistributorList(res.longitude, res.latitude); | |||||
| }, | |||||
| fail: (res) => { | |||||
| this.getDistributorList("", ""); | |||||
| }, | |||||
| complete: (res) => { | |||||
| this.setData({ | |||||
| siteSelect: true, | |||||
| }) | |||||
| } | |||||
| }) | |||||
| }, | |||||
| showSite: function () {//显示地址选择框 | |||||
| if (!this.data.siteSelect) { | |||||
| } | |||||
| }, | |||||
| agreementState: function () {//协议 | |||||
| this.setData({ | |||||
| isAgreement: !this.data.isAgreement | |||||
| }) | |||||
| }, | |||||
| agreementControl: function () { | |||||
| this.setData({ | |||||
| agreement: !this.data.agreement | |||||
| }) | |||||
| }, | |||||
| preBuy: function () {//下订支付 | |||||
| if (!this.data.subscribeData.realname) { | |||||
| wx.showToast({ | |||||
| title: '请输入姓名', | |||||
| icon: "none" | |||||
| }) | |||||
| return; | |||||
| } | |||||
| if (!this.data.mobile2 && this.data.mobileType==2) { | |||||
| wx.showToast({ | |||||
| title: '请输入电话', | |||||
| icon: "none" | |||||
| }) | |||||
| return; | |||||
| } | |||||
| if (this.data.mobileType == 2) { | |||||
| if (!this.data.subscribeData.captcha) { | |||||
| wx.showToast({ | |||||
| title: '请输入验证码', | |||||
| icon: "none" | |||||
| }) | |||||
| return; | |||||
| } | |||||
| } | |||||
| if (!this.data.isAgreement) { | |||||
| wx.showToast({ | |||||
| title: '请同意协议', | |||||
| icon: 'none' | |||||
| }) | |||||
| return; | |||||
| } | |||||
| if (!this.data.appointment) { | |||||
| return; | |||||
| } | |||||
| this.data.appointment = false; | |||||
| this.data.subscribeData.province = this.data.provinceDataArr[0][this.data.provinceDataValue[0]]; | |||||
| this.data.subscribeData.city = this.data.provinceDataArr[1][this.data.provinceDataValue[1]]; | |||||
| this.data.subscribeData.agent_code = this.data.storeArr[this.data.storeValue].agent_code; | |||||
| this.data.subscribeData.agentDetail = this.data.storeArr[this.data.storeValue].agent_detail; | |||||
| var sourceMobile = this.data.subscribeData.mobile; | |||||
| if (this.data.mobileType == 2) { | |||||
| this.data.subscribeData.mobile = this.data.mobile2; | |||||
| } | |||||
| this.data.subscribeData.parentOpenid = app.globalData.parentOpenid; | |||||
| wx.showLoading({ | |||||
| title: '加载中', | |||||
| mask:true | |||||
| }) | |||||
| app.wxRequest(app.globalData.urlRoot + "wxPay/v3/preBuy", this.data.subscribeData, res => { | |||||
| wx.hideLoading(); | |||||
| this.data.subscribeData.mobile = sourceMobile; | |||||
| if (res.code == 200) { | |||||
| wx.requestPayment({ | |||||
| timeStamp: res.data.jsSubmit.timeStamp, | |||||
| nonceStr: res.data.jsSubmit.nonceStr, | |||||
| signType: res.data.jsSubmit.signType, | |||||
| package: res.data.jsSubmit.package, | |||||
| paySign: res.data.jsSubmit.paySign, | |||||
| success:(option)=>{ | |||||
| this.paySuccess(res.data.trade_id); | |||||
| }, | |||||
| fail: (option) => { | |||||
| this.data.appointment = true; | |||||
| wx.showToast({ | |||||
| title: '支付失败', | |||||
| icon:"none" | |||||
| }) | |||||
| } | |||||
| }) | |||||
| } else { | |||||
| this.data.appointment = true; | |||||
| wx.showToast({ | |||||
| title: res.msg, | |||||
| icon: "none" | |||||
| }) | |||||
| } | |||||
| }, this, "POST") | |||||
| }, | |||||
| paySuccess: function (e) {//支付成功 | |||||
| app.wxRequest(app.globalData.urlRoot + "wxPay/paySuccess", { source:2,trade_id:e},res=>{ | |||||
| if(res.code==200){ | |||||
| // wx.showToast({ | |||||
| // title: '下订成功', | |||||
| // mask:true | |||||
| // }) | |||||
| this.setData({ | |||||
| getBuyState:true | |||||
| }) | |||||
| app.globalData.getBuyState = {}; | |||||
| app.globalData.getBuyState.success = true; | |||||
| app.globalData.getBuyState.cdate = res.data.cdate; | |||||
| app.globalData.getBuyState.coupon_code = res.data.coupon_code; | |||||
| // setTimeout(()=>{ | |||||
| // this.closeXieyi(); | |||||
| // },1500) | |||||
| } else { | |||||
| this.data.appointment = true; | |||||
| wx.showToast({ | |||||
| title: res.msg, | |||||
| icon:'none' | |||||
| }) | |||||
| } | |||||
| },this,"POST"); | |||||
| }, | |||||
| closePage:function(){ | |||||
| this.closeXieyi(); | |||||
| // wx.reLaunch({ | |||||
| // url: '/pages/index/index', | |||||
| // }) | |||||
| }, | |||||
| provinceDataChange:function(e){ | |||||
| if (e.detail.column==0) { | |||||
| var city = []; | |||||
| for (let i = 0; i < this.data.provinceDataAll[e.detail.value].children.length;i++){ | |||||
| city.push(this.data.provinceDataAll[e.detail.value].children[i].city); | |||||
| } | |||||
| this.data.provinceDataArr[1] = city; | |||||
| this.setData({ | |||||
| provinceDataArr: this.data.provinceDataArr | |||||
| }) | |||||
| } | |||||
| }, | |||||
| provinceDataChane:function(e){ | |||||
| this.setData({ | |||||
| provinceDataValue: e.detail.value, | |||||
| nowProvince: this.data.provinceDataArr[0][e.detail.value[0]] + " " + this.data.provinceDataArr[1][e.detail.value[1]], | |||||
| storeArr: this.data.provinceDataAll[e.detail.value[0]].children[e.detail.value[1]].children, | |||||
| storeValue:0 | |||||
| }) | |||||
| }, | |||||
| storeChane:function(e){ | |||||
| this.setData({ | |||||
| storeValue:e.detail.value | |||||
| }) | |||||
| }, | |||||
| enterMycenter:function(){ | |||||
| wx.reLaunch({ | |||||
| url: '/pages/myCenter/myCenter', | |||||
| }) | |||||
| }, | |||||
| cutType: function () { | |||||
| this.setData({ | |||||
| mobileType: this.data.mobileType == 1 ? 2 : 1 | |||||
| }) | |||||
| }, | |||||
| tipShowControl:function(){ | |||||
| this.setData({ | |||||
| tipShow:!this.data.tipShow | |||||
| }) | |||||
| }, | |||||
| tipShowControl2:function(){ | |||||
| this.setData({ | |||||
| tipShow:!this.data.tipShow | |||||
| }) | |||||
| this.preBuy(); | |||||
| } | |||||
| } | |||||
| }) |
| { | |||||
| "component": true, | |||||
| "usingComponents": { | |||||
| "agreement": "/pages/agreement/agreement" | |||||
| } | |||||
| } |
| <!--pages/orderActivity/orderActivity.wxml--> | |||||
| <view class="main"> | |||||
| <view class="titleText">下订有礼</view> | |||||
| <view class="lineSty"></view> | |||||
| <image class="closeXieyi" bindtap="closeXieyi" src="{{imgUrl+'/images/closeXieyi.png'}}"></image> | |||||
| <image class="yuyueTop" src="{{imgUrl+'/newImages6/47.png'}}"></image> | |||||
| <view class="selectType"> | |||||
| <view style="position: relative;"> | |||||
| <image class="newImages2-41" bindtap="cutType" style="margin-bottom:23rpx;" src="{{imgUrl+'/newImages2/41_'+(mobileType==1?'2':'1')+'.png'}}"></image> | |||||
| <view class="getPhoneFrame" wx:if="{{!phoneInputShow}}"> | |||||
| <button class="getPhoneBtn" style="width: 100%;height: 100%;margin: 0;padding: 0;min-height: 0;" open-type="getPhoneNumber" bindgetphonenumber="getUserPhone"></button> | |||||
| </view> | |||||
| </view> | |||||
| <image class="newImages2-41" bindtap="cutType" src="{{imgUrl+'/newImages2/42_'+(mobileType==1?'1':'2')+'.png'}}"></image> | |||||
| </view> | |||||
| <view class="msgGroup" style="margin-top:44rpx;"> | |||||
| <view class="inputGroup"> | |||||
| <view class="userTitle">姓名</view> | |||||
| <input class="userInput" bindinput="getRealname" value="{{subscribeData.realname}}" placeholder="请输入您的姓名"></input> | |||||
| </view> | |||||
| <view class="inputGroup" wx:if="{{mobileType==1}}"> | |||||
| <view class="userTitle">电话</view> | |||||
| <view class="userInput"> | |||||
| <input style="width:100%;height:100%;" disabled="true" bindinput="getMobile" type="number" maxlength='11' value="{{subscribeData.mobile}}" placeholder="请输入您的联系电话"></input> | |||||
| </view> | |||||
| </view> | |||||
| <view class="inputGroup" wx:if="{{mobileType==2}}"> | |||||
| <view class="userTitle">电话</view> | |||||
| <view class="userInput"> | |||||
| <input style="width:100%;height:100%;" bindinput="getMobile2" type="number" maxlength='11' value="{{mobile2}}" placeholder="请输入您的联系电话"></input> | |||||
| </view> | |||||
| </view> | |||||
| <view class="codeGroup" wx:if="{{mobileType==2}}"> | |||||
| <input class="userInput" bindinput="getCaptcha" style="width:350rpx;" placeholder="请输入您的验证码"></input> | |||||
| <view class="getCode" bindtap="getCode">{{verificationCode}}</view> | |||||
| </view> | |||||
| <!-- <view wx:if="{{siteSelect}}" class="pickerGroup"> --> | |||||
| <view class="inputGroup"> | |||||
| <view class="userTitle">当前城市</view> | |||||
| <picker mode='multiSelector' range="{{provinceDataArr}}" value="{{provinceDataValue}}" bindcolumnchange="provinceDataChange" bindchange="provinceDataChane"> | |||||
| <view class="userInput selectSiteGroup"> | |||||
| <text>{{nowProvince}}</text> | |||||
| <image src="{{imgUrl+'/images/selectIcon.png'}}" class="selectIcon"></image> | |||||
| </view> | |||||
| </picker> | |||||
| </view> | |||||
| <view class="inputGroup"> | |||||
| <view class="userTitle">专营店</view> | |||||
| <picker mode='selector' range="{{storeArr}}" range-key="agent_detail" value="{{storeValue}}" bindchange="storeChane"> | |||||
| <view class="userInput selectSiteGroup"> | |||||
| <text>{{storeArr[storeValue].agent_detail}}</text> | |||||
| <image src="{{imgUrl+'/images/selectIcon.png'}}" class="selectIcon"></image> | |||||
| </view> | |||||
| </picker> | |||||
| </view> | |||||
| <!-- </view> --> | |||||
| <view class="agreementGroup"> | |||||
| <image class="agreeIcon" bindtap="agreementState" src="{{imgUrl+(isAgreement?'/images/agreeIcon.png?v=003':'/images/disagreeIcon.png?v=002')}}"></image> | |||||
| <view class="agreementText"> | |||||
| <image style="width:261rpx;height:23rpx;" src="{{imgUrl+'/images/myCenterAgreenTip.png'}}"></image> | |||||
| <view bindtap="agreementControl"> | |||||
| <image style="width:240rpx;height:23rpx;margin-left:3rpx;" src="{{imgUrl+'/images/myCenterAgreen.png'}}"></image> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| <view class="subscribeBtn"> | |||||
| <!-- <image style="width:100%;height:100%;" bindtap="preBuy" src="{{imgUrl+'/btns/placingOrderBtn.png'}}"></image> --> | |||||
| <image style="width:100%;height:100%;" bindtap="preBuy" src="{{imgUrl+'/newImages8/6.png'}}"></image> | |||||
| </view> | |||||
| </view> | |||||
| <agreement bindmyevent="agreementControl" wx:if="{{agreement}}"></agreement> | |||||
| <view class="receiveFrame" wx:if="{{getBuyState}}"> | |||||
| <view class="receiveGroup"> | |||||
| <image class="newImages12" bindtap="closePage" src="{{imgUrl+'/newImages/12.png'}}"></image> | |||||
| <image class="newImages2-1" src="{{imgUrl+'/newImages6/49.png'}}"></image> | |||||
| <image class="newImages2-2" bindtap="enterMycenter" src="{{imgUrl+'/newImages3/3.png'}}"></image> | |||||
| <image class="newImages2-3" bindtap="enterMycenter" src="{{imgUrl+'/newImages2/3.png'}}"></image> | |||||
| </view> | |||||
| </view> | |||||
| <view class="tipFrame" wx:if="{{tipShow}}"> | |||||
| <view class="tipGroup"> | |||||
| <image class="closeTip" bindtap="tipShowControl" src="{{imgUrl+'/newImages4/15.png'}}"></image> | |||||
| <image class="tipGroupBg" src="{{imgUrl+'/newImages8/7.png'}}"></image> | |||||
| <view class="tipGroupContent"> | |||||
| <image class="tipGroupContentImg" src="{{imgUrl+'/newImages8/8.png'}}"></image> | |||||
| <!-- <image class="tipGroupContentBtn" bindtap="tipShowControl2" src="{{imgUrl+'/newImages4/14.png'}}"></image> --> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| </view> |
| /* pages/orderActivity/orderActivity.wxss */ | |||||
| .closeXieyi,.xieyi{ | |||||
| display: block; | |||||
| } | |||||
| .main{ | |||||
| width: 750rpx; | |||||
| position: fixed; | |||||
| left: 0; | |||||
| top: 0; | |||||
| height: calc(100vh - 120rpx); | |||||
| overflow: auto; | |||||
| background-color: white; | |||||
| z-index: 99; | |||||
| } | |||||
| .closeGroup{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: flex-end; | |||||
| padding-right: 48rpx; | |||||
| padding-top: 38rpx; | |||||
| } | |||||
| .placingIcon{ | |||||
| width: 663rpx; | |||||
| height: 515rpx; | |||||
| margin:25rpx auto 74rpx; | |||||
| } | |||||
| .msgGroup{ | |||||
| padding: 0 46rpx; | |||||
| display: flex; | |||||
| flex-direction: column; | |||||
| align-items: center; | |||||
| } | |||||
| .codeGroup{ | |||||
| width: 100%; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: flex-end; | |||||
| margin-bottom: 15rpx; | |||||
| } | |||||
| .inputGroup{ | |||||
| width: 100%; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: space-between; | |||||
| margin-bottom: 15rpx; | |||||
| } | |||||
| .userTitle{ | |||||
| line-height: 24rpx; | |||||
| font-size:24rpx; | |||||
| font-family:PingFangSC; | |||||
| font-weight:400; | |||||
| color:rgba(35,24,21,1); | |||||
| } | |||||
| .userInput{ | |||||
| position: relative; | |||||
| width:539rpx; | |||||
| height: 65rpx; | |||||
| line-height: 65rpx; | |||||
| border: 2rpx solid #bfbfbf; | |||||
| padding: 0 28rpx; | |||||
| box-sizing: border-box; | |||||
| border-radius: 20rpx; | |||||
| font-size:24rpx; | |||||
| font-family:PingFangSC; | |||||
| font-weight:300; | |||||
| } | |||||
| .getCode{ | |||||
| width: 160rpx; | |||||
| height: 50rpx; | |||||
| line-height: 50rpx; | |||||
| font-size:26rpx; | |||||
| font-family:PingFangSC; | |||||
| font-weight:400; | |||||
| color:rgba(255,255,255,1); | |||||
| background-color: #2a558c; | |||||
| border-radius: 15rpx; | |||||
| text-align: center; | |||||
| margin-left: 30rpx; | |||||
| } | |||||
| .selectIcon{ | |||||
| width: 25rpx; | |||||
| height: 15rpx; | |||||
| } | |||||
| .selectSiteGroup{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: space-between; | |||||
| } | |||||
| .agreementGroup{ | |||||
| width: 658rpx; | |||||
| margin: 0 auto; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| margin-top: 19rpx; | |||||
| } | |||||
| .agreeIcon{ | |||||
| width: 29rpx; | |||||
| height: 28rpx; | |||||
| margin-right: 17rpx; | |||||
| } | |||||
| .agreementText{ | |||||
| line-height: 24rpx; | |||||
| font-size:24rpx; | |||||
| font-family:PingFangSC; | |||||
| font-weight:300; | |||||
| color:rgba(156,157,157,1); | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .subscribeBtn{ | |||||
| margin: 0 auto; | |||||
| width:652rpx; | |||||
| height:70rpx; | |||||
| margin-top: 39rpx; | |||||
| margin-bottom: 99rpx; | |||||
| } | |||||
| .pickerGroup{ | |||||
| width: 100%; | |||||
| } | |||||
| .receiveFrame{ | |||||
| position: fixed; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 750rpx; | |||||
| height: calc(100vh - 120rpx); | |||||
| z-index: 9; | |||||
| display: flex; | |||||
| flex-direction: column; | |||||
| align-items: center; | |||||
| overflow: auto; | |||||
| } | |||||
| .receiveGroup{ | |||||
| width: 750rpx; | |||||
| height: 1353rpx; | |||||
| position: relative; | |||||
| } | |||||
| .newImages12{ | |||||
| position: absolute; | |||||
| top:48rpx; | |||||
| right: 38rpx; | |||||
| width: 42rpx; | |||||
| height: 42rpx; | |||||
| } | |||||
| .newImages2-3{ | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| bottom: 41rpx; | |||||
| width: 322rpx; | |||||
| height: 71rpx; | |||||
| } | |||||
| .newImages2-1{ | |||||
| width: 750rpx; | |||||
| height: 1353rpx; | |||||
| } | |||||
| .newImages2-2{ | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| top: 593rpx; | |||||
| width: 366rpx; | |||||
| height: 57rpx; | |||||
| } | |||||
| .titleText{ | |||||
| width: 682rpx; | |||||
| margin: 0 auto; | |||||
| margin-top: 78rpx; | |||||
| margin-bottom: 28rpx; | |||||
| line-height: 39rpx; | |||||
| font-size:39rpx; | |||||
| font-family:PingFangSC; | |||||
| font-weight:bold; | |||||
| color:rgba(0,77,149,1); | |||||
| } | |||||
| .lineSty{ | |||||
| width: 682rpx; | |||||
| height:2rpx; | |||||
| background-color: #B6B6B6; | |||||
| margin: 0 auto; | |||||
| margin-bottom: 45rpx; | |||||
| } | |||||
| .closeXieyi{ | |||||
| position: absolute; | |||||
| right: 48rpx; | |||||
| top: 38rpx; | |||||
| width: 42rpx; | |||||
| height: 42rpx; | |||||
| } | |||||
| .yuyueTop{ | |||||
| display: block; | |||||
| margin: 0 auto; | |||||
| width: 699rpx; | |||||
| height: 225rpx; | |||||
| margin-bottom: 45rpx; | |||||
| } | |||||
| .newImages2-41{ | |||||
| width:653rpx; | |||||
| height: 71rpx; | |||||
| margin: 0 auto; | |||||
| } | |||||
| .getPhoneFrame{ | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| top: 0; | |||||
| width:653rpx; | |||||
| height: 71rpx; | |||||
| z-index: 2; | |||||
| } | |||||
| .getPhoneBtn{ | |||||
| opacity: 0; | |||||
| } | |||||
| .tipFrame{ | |||||
| position: fixed; | |||||
| left: 0; | |||||
| top: 0; | |||||
| width: 750rpx; | |||||
| height: calc(100vh - 120rpx); | |||||
| z-index: 9; | |||||
| background-color: rgba(000,000,000,0.5); | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: center; | |||||
| } | |||||
| .tipGroup{ | |||||
| position: relative; | |||||
| width: 641rpx; | |||||
| height: 1000rpx; | |||||
| } | |||||
| .tipGroupBg{ | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| } | |||||
| .tipGroupContent{ | |||||
| position: absolute; | |||||
| top: 120rpx; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| width: 634rpx; | |||||
| height: 850rpx; | |||||
| overflow: auto; | |||||
| } | |||||
| .tipGroupContentImg{ | |||||
| width: 601rpx; | |||||
| height: 1949rpx; | |||||
| margin: 0 auto; | |||||
| } | |||||
| .tipGroupContentBtn{ | |||||
| width: 429rpx; | |||||
| height: 70rpx; | |||||
| margin: 0 auto; | |||||
| margin-top: 50rpx; | |||||
| margin-bottom: 20rpx; | |||||
| } | |||||
| .closeTip{ | |||||
| position: absolute; | |||||
| top: -27rpx; | |||||
| right: -27rpx; | |||||
| width: 37rpx; | |||||
| height: 37rpx; | |||||
| } |
| // pages/rotaryDraw/rotaryDraw.js | |||||
| const app = getApp() | |||||
| let dataList = [ | |||||
| {prizeName:"华为P40",nickName:"啦啦啦"}, | |||||
| {prizeName:"小米扫拖机器人",nickName:"啦啦啦"}, | |||||
| {prizeName:"小米空调",nickName:"啦啦啦"}, | |||||
| {prizeName:"九阳破壁机",nickName:"啦啦啦"}, | |||||
| {prizeName:"USMILE电动牙刷",nickName:"啦啦啦"}, | |||||
| ] | |||||
| Page({ | |||||
| /** | |||||
| * 页面的初始数据 | |||||
| */ | |||||
| data: { | |||||
| imgUrl: app.globalData.urlStatic,//图片路径 | |||||
| recordDataAll:[],//所有数据 | |||||
| recordNowNum:0,//当前数据 | |||||
| totalNum:0,//数据总数 | |||||
| ani:{ | |||||
| ani1:null, | |||||
| ani2:null, | |||||
| ani3:null, | |||||
| ani4:null | |||||
| }, | |||||
| page:1, | |||||
| count:5, | |||||
| drawAni:null | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面加载 | |||||
| */ | |||||
| onLoad: function (options) { | |||||
| if (app.globalData.openid) { | |||||
| this.loadFun(); | |||||
| } else { | |||||
| app.globalData.openidSuccessFuc = this.loadFun; | |||||
| } | |||||
| }, | |||||
| loadFun() { | |||||
| // this.getRecordData(); | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面初次渲染完成 | |||||
| */ | |||||
| onReady: function () { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面显示 | |||||
| */ | |||||
| onShow: function () { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面隐藏 | |||||
| */ | |||||
| onHide: function () { | |||||
| }, | |||||
| /** | |||||
| * 生命周期函数--监听页面卸载 | |||||
| */ | |||||
| onUnload: function () { | |||||
| }, | |||||
| /** | |||||
| * 页面相关事件处理函数--监听用户下拉动作 | |||||
| */ | |||||
| onPullDownRefresh: function () { | |||||
| }, | |||||
| /** | |||||
| * 页面上拉触底事件的处理函数 | |||||
| */ | |||||
| onReachBottom: function () { | |||||
| }, | |||||
| /** | |||||
| * 用户点击右上角分享 | |||||
| */ | |||||
| onShareAppMessage: function () { | |||||
| return app.sharePack(); | |||||
| }, | |||||
| getRecordData(){//获取中将记录数据 | |||||
| return; | |||||
| app.wxRequest(app.globalData.urlRoot + "", {}, res => { | |||||
| if (res.code == 200 && res.data) { | |||||
| this.data.totalNum = res.total; | |||||
| for(let i=0;i<res.data.length;i++){ | |||||
| this.data.recordDataAll.push(res.data[i]); | |||||
| } | |||||
| if(this.data.page==1){ | |||||
| for(let i=1;i<=4;i++){ | |||||
| setTimeout(()=>{ | |||||
| this.aniFun(4000,"-40rpx","ani"+i); | |||||
| },(i-1)*1000); | |||||
| } | |||||
| } | |||||
| } | |||||
| }, this) | |||||
| }, | |||||
| aniFun(duration,top,that,loop = true){ | |||||
| var animation = wx.createAnimation({ | |||||
| duration: duration | |||||
| }); | |||||
| animation.top(top).step(); | |||||
| this.data.ani[that] = animation.export(); | |||||
| if(loop){ | |||||
| if(this.data.page*this.data.count-4<=this.data.recordNowNum && this.data.recordNowNum<this.data.total){ | |||||
| this.data.page++; | |||||
| this.getRecordData(); | |||||
| } | |||||
| this.data.ani[that].recordText = "恭喜"+this.data.recordDataAll[this.data.recordNowNum].nickName+"获得"+this.data.recordDataAll[this.data.recordNowNum].prizeName; | |||||
| if(this.data.recordNowNum+1<this.data.recordDataAll.length){ | |||||
| this.data.recordNowNum++; | |||||
| }else{ | |||||
| this.data.recordNowNum=0; | |||||
| } | |||||
| } | |||||
| this.setData({ | |||||
| ani: this.data.ani | |||||
| }) | |||||
| if(loop){ | |||||
| setTimeout(()=>{ | |||||
| this.aniFun(0,"152rpx",that,false); | |||||
| setTimeout(()=>{ | |||||
| this.aniFun(duration,"-40rpx",that); | |||||
| },50) | |||||
| },duration); | |||||
| } | |||||
| }, | |||||
| startDraw(){//开始抽奖 | |||||
| this.drawAniFun(2000,360); | |||||
| }, | |||||
| drawAniFun(duration,rotate,loop=true){ | |||||
| var animation = wx.createAnimation({ | |||||
| duration: duration | |||||
| }); | |||||
| animation.rotate(rotate).step(); | |||||
| this.setData({ | |||||
| drawAni:animation.export() | |||||
| }) | |||||
| if(loop){ | |||||
| setTimeout(()=>{ | |||||
| this.drawAniFun(2000,rotate+360); | |||||
| },duration) | |||||
| } | |||||
| } | |||||
| }) |
| { | |||||
| "navigationBarTitleText": "幸运大转盘", | |||||
| "usingComponents": { | |||||
| "tabBar": "../component/tabBar/index" | |||||
| } | |||||
| } |
| <!--pages/rotaryDraw/rotaryDraw.wxml--> | |||||
| <view class="all"> | |||||
| <view class="main"> | |||||
| <image class="pageBg" src="{{imgUrl+'/newImages8/15.png'}}"></image> | |||||
| <view class="gameFrame"> | |||||
| <view class="gameGroup"> | |||||
| <image class="gameDial" animation="{{drawAni}}" src="{{imgUrl+'/newImages8/14.png'}}"></image> | |||||
| <image class="gamePointer" bindtap="startDraw" src="{{imgUrl+'/newImages8/13.png'}}"></image> | |||||
| </view> | |||||
| </view> | |||||
| <view class="recordFrame"> | |||||
| <view style="width:100%;height:100%;position: relative;"> | |||||
| <view class="recordGroup"> | |||||
| <view class="recordText" animation="{{ani.ani1}}">{{ani.ani1?ani.ani1.recordText:""}}</view> | |||||
| <view class="recordText" animation="{{ani.ani2}}">{{ani.ani2?ani.ani2.recordText:""}}</view> | |||||
| <view class="recordText" animation="{{ani.ani3}}">{{ani.ani3?ani.ani3.recordText:""}}</view> | |||||
| <view class="recordText" animation="{{ani.ani4}}">{{ani.ani4?ani.ani4.recordText:""}}</view> | |||||
| <!-- <view class="recordText">啦啦啦啦</view> | |||||
| <view class="recordText">啦啦啦啦</view> | |||||
| <view class="recordText">啦啦啦啦</view> --> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| </view> | |||||
| <tabBar></tabBar> | |||||
| </view> |
| /* pages/rotaryDraw/rotaryDraw.wxss */ | |||||
| image{ | |||||
| display: block; | |||||
| } | |||||
| view{ | |||||
| -webkit-overflow-scrolling: touch; | |||||
| } | |||||
| .main{ | |||||
| height: calc(100vh - 120rpx); | |||||
| overflow: auto; | |||||
| position: relative; | |||||
| } | |||||
| .pageBg{ | |||||
| width: 750rpx; | |||||
| height: 1354rpx; | |||||
| } | |||||
| .gameFrame{ | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| top:345rpx; | |||||
| width:662rpx; | |||||
| height:662rpx; | |||||
| z-index: 9; | |||||
| } | |||||
| .gameGroup{ | |||||
| position: relative; | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| } | |||||
| .gameDial{ | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| } | |||||
| .gamePointer{ | |||||
| position: absolute; | |||||
| top: 207rpx; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| width: 119rpx; | |||||
| height: 181rpx; | |||||
| } | |||||
| .recordFrame{ | |||||
| position: absolute; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 750rpx; | |||||
| height: 1354rpx; | |||||
| } | |||||
| .recordGroup{ | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| bottom: 0; | |||||
| transform: translateX(-50%); | |||||
| width: 530rpx; | |||||
| height: 152rpx; | |||||
| overflow: hidden; | |||||
| } | |||||
| .recordText{ | |||||
| position: absolute; | |||||
| left: 0; | |||||
| top: 152rpx; | |||||
| text-align: center; | |||||
| font-size: 24rpx; | |||||
| width: 100%; | |||||
| height: 40rpx; | |||||
| line-height: 40rpx; | |||||
| color: white; | |||||
| } |
| * 组件的初始数据 | * 组件的初始数据 | ||||
| */ | */ | ||||
| data: { | data: { | ||||
| prizeShow:false,//是否显示获奖弹窗 | |||||
| ruleShow:true,//是否显示规则 | |||||
| imgUrl: app.globalData.urlStatic,//图片路径 | imgUrl: app.globalData.urlStatic,//图片路径 | ||||
| agreement:false, | agreement:false, | ||||
| isAgreement: true,//是否同意协议 | isAgreement: true,//是否同意协议 | ||||
| this.data.subscribeData.mobile = this.data.mobile2; | this.data.subscribeData.mobile = this.data.mobile2; | ||||
| } | } | ||||
| this.data.subscribeData.parentOpenid = app.globalData.parentOpenid; | this.data.subscribeData.parentOpenid = app.globalData.parentOpenid; | ||||
| app.wxRequest(app.globalData.urlRoot + "userInfo/submitOrderInfo", this.data.subscribeData, res => { | |||||
| app.wxRequest(app.globalData.urlRoot + "userInfo/v2/submitOrderInfo", this.data.subscribeData, res => { | |||||
| this.data.subscribeData.mobile = sourceMobile; | this.data.subscribeData.mobile = sourceMobile; | ||||
| this.data.appointment = true; | this.data.appointment = true; | ||||
| if (res.code == 200) { | if (res.code == 200) { | ||||
| }) | }) | ||||
| return; | return; | ||||
| } | } | ||||
| wx.showToast({ | |||||
| title: '预约成功', | |||||
| mask:true | |||||
| }) | |||||
| setTimeout(()=>{ | |||||
| this.closeXieyi(); | |||||
| },1500) | |||||
| this.prizeControl(); | |||||
| // wx.showToast({ | |||||
| // title: '预约成功', | |||||
| // mask:true | |||||
| // }) | |||||
| // setTimeout(()=>{ | |||||
| // this.closeXieyi(); | |||||
| // },1500) | |||||
| // this.data.subscribeData.realname = ""; | // this.data.subscribeData.realname = ""; | ||||
| // this.data.subscribeData.captcha = ""; | // this.data.subscribeData.captcha = ""; | ||||
| // this.setData({ | // this.setData({ | ||||
| app.submitUserMsg(e.detail.userInfo.avatarUrl, e.detail.userInfo.nickName); | app.submitUserMsg(e.detail.userInfo.avatarUrl, e.detail.userInfo.nickName); | ||||
| } | } | ||||
| this.subscribeFun(); | this.subscribeFun(); | ||||
| }, | |||||
| ruleControl(){//控制规则显示状态 | |||||
| this.setData({ | |||||
| ruleShow:!this.data.ruleShow | |||||
| }) | |||||
| }, | |||||
| prizeControl(){//控制获奖弹窗显示状态 | |||||
| this.setData({ | |||||
| prizeShow:!this.data.prizeShow | |||||
| }) | |||||
| }, | |||||
| getNow(){//立即领取 | |||||
| } | } | ||||
| } | } | ||||
| }) | }) |
| <!--pages/yuyue/yuyue.wxml--> | <!--pages/yuyue/yuyue.wxml--> | ||||
| <view class="all"> | <view class="all"> | ||||
| <view class="main"> | <view class="main"> | ||||
| <view class="titleText">预约试驾</view> | |||||
| <view class="titleText">试驾有礼</view> | |||||
| <view class="lineSty"></view> | <view class="lineSty"></view> | ||||
| <image class="closeXieyi" bindtap="closeXieyi" src="{{imgUrl+'/images/closeXieyi.png'}}"></image> | <image class="closeXieyi" bindtap="closeXieyi" src="{{imgUrl+'/images/closeXieyi.png'}}"></image> | ||||
| <image class="yuyueTop" src="{{imgUrl+'/newImages6/47.png'}}"></image> | <image class="yuyueTop" src="{{imgUrl+'/newImages6/47.png'}}"></image> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <view class="subscribeBtn" style="margin-top:34rpx;"> | <view class="subscribeBtn" style="margin-top:34rpx;"> | ||||
| <image style="width:100%;height:100%;" bindtap="subscribeFun" src="{{imgUrl+'/newImages3/21.png'}}"></image> | |||||
| <image style="width:100%;height:100%;" bindtap="subscribeFun" src="{{imgUrl+'/newImages8/1.png'}}"></image> | |||||
| <button wx:if="{{!userData}}" class="getUserMsgBtn" open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="getUserWxMsg" style="width:100%;height:100%;min-height:0;padding:0;margin:0;"></button> | <button wx:if="{{!userData}}" class="getUserMsgBtn" open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="getUserWxMsg" style="width:100%;height:100%;min-height:0;padding:0;margin:0;"></button> | ||||
| </view> | </view> | ||||
| <view class="subscribeBtn" bindtap="lookMore"> | <view class="subscribeBtn" bindtap="lookMore"> | ||||
| <image style="width:100%;height:100%;" src="{{imgUrl+'/newImages3/22.png'}}"></image> | <image style="width:100%;height:100%;" src="{{imgUrl+'/newImages3/22.png'}}"></image> | ||||
| </view> | </view> | ||||
| </view> | </view> | ||||
| <view class="ruleMask" wx:if="{{ruleShow}}"> | |||||
| <view class="ruleGroup"> | |||||
| <image style="width:100%;height:100%;" src="{{imgUrl+'/newImages8/2.png'}}"></image> | |||||
| <image class="closeRule" src="{{imgUrl+'/newImages8/3.png'}}" bindtap="ruleControl"></image> | |||||
| </view> | |||||
| </view> | |||||
| <view class="ruleMask" wx:if="{{prizeShow}}"> | |||||
| <view class="ruleGroup" style="width:570rpx;height:558rpx;"> | |||||
| <image style="width:100%;height:100%;" src="{{imgUrl+'/newImages8/9.png'}}"></image> | |||||
| <image class="closeRule" style="top:-30rpx;right:-30rpx;" src="{{imgUrl+'/newImages8/3.png'}}" bindtap="closeXieyi"></image> | |||||
| <view class="getNow" bindtap="getNow"></view> | |||||
| </view> | |||||
| </view> | |||||
| <agreement bindmyevent="agreementControl" wx:if="{{agreement}}"></agreement> | <agreement bindmyevent="agreementControl" wx:if="{{agreement}}"></agreement> | ||||
| </view> | </view> |
| width:653rpx; | width:653rpx; | ||||
| height: 71rpx; | height: 71rpx; | ||||
| margin: 0 auto; | margin: 0 auto; | ||||
| } | |||||
| .ruleMask{ | |||||
| position: fixed; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 100%; | |||||
| height: calc(100vh - 120rpx); | |||||
| background-color: rgba( 000, 000, 000, 0.6); | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: center; | |||||
| z-index: 99; | |||||
| } | |||||
| .ruleGroup{ | |||||
| position: relative; | |||||
| width: 641rpx; | |||||
| height: 995rpx; | |||||
| } | |||||
| .closeRule{ | |||||
| position: absolute; | |||||
| top: -27rpx; | |||||
| right: -28rpx; | |||||
| width: 38rpx; | |||||
| height: 37rpx; | |||||
| } | |||||
| .getNow{ | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| transform: translateX(-50%); | |||||
| top: 435rpx; | |||||
| width: 368rpx; | |||||
| height: 60rpx; | |||||
| } | } |
| "ignore": [] | "ignore": [] | ||||
| }, | }, | ||||
| "setting": { | "setting": { | ||||
| "urlCheck": true, | |||||
| "urlCheck": false, | |||||
| "es6": true, | "es6": true, | ||||
| "postcss": true, | "postcss": true, | ||||
| "minified": true, | "minified": true, | ||||
| "name": "二次竞猜结果海报", | "name": "二次竞猜结果海报", | ||||
| "pathName": "pages/guessSecondPoster/guessSecondPoster", | "pathName": "pages/guessSecondPoster/guessSecondPoster", | ||||
| "query": "" | "query": "" | ||||
| }, | |||||
| { | |||||
| "id": -1, | |||||
| "name": "618下订", | |||||
| "pathName": "pages/orderActivity/orderActivity", | |||||
| "query": "" | |||||
| }, | |||||
| { | |||||
| "id": -1, | |||||
| "name": "转盘抽奖", | |||||
| "pathName": "pages/rotaryDraw/rotaryDraw", | |||||
| "query": "" | |||||
| } | } | ||||
| ] | ] | ||||
| } | } |