Parcourir la source

二次竞猜修改(未完成)

guessPrice
suizhijia il y a 5 ans
Parent
révision
3d9afdf445
13 fichiers modifiés avec 795 ajouts et 94 suppressions
  1. +7
    -3
      496_dongfengqichen/pages/guessSecond/guessSecond.js
  2. +1
    -1
      496_dongfengqichen/pages/guessSecond/guessSecond.wxml
  3. +2
    -2
      496_dongfengqichen/pages/guessSecond/guessSecond.wxss
  4. +31
    -5
      496_dongfengqichen/pages/guessSecondPrize/guessSecondPrize.js
  5. +46
    -10
      496_dongfengqichen/pages/guessSecondPrize/guessSecondPrize.wxml
  6. +105
    -3
      496_dongfengqichen/pages/guessSecondPrize/guessSecondPrize.wxss
  7. +7
    -1
      496_dongfengqichen/pages/myCenter/myCenter.js
  8. +189
    -2
      496_dongfengqichen/pages/perfectMsg/perfectMsg.js
  9. +43
    -28
      496_dongfengqichen/pages/perfectMsg/perfectMsg.wxml
  10. +69
    -10
      496_dongfengqichen/pages/perfectMsg/perfectMsg.wxss
  11. +186
    -17
      496_dongfengqichen/pages/userMsg/userMsg.js
  12. +38
    -3
      496_dongfengqichen/pages/userMsg/userMsg.wxml
  13. +71
    -9
      496_dongfengqichen/pages/userMsg/userMsg.wxss

+ 7
- 3
496_dongfengqichen/pages/guessSecond/guessSecond.js Voir le fichier

@@ -87,11 +87,13 @@ Page({
})
},
enterGuess:function(){//去竞猜
console.log("去竞猜");
wx.navigateTo({
url: '/pages/guessSecondPrize/guessSecondPrize',
})
},
startDraw:function(){//抽奖
this.setData({
drawResult:3
drawResult:1
})
},
prizeWindowControl:function(){//关闭抽奖弹窗
@@ -100,6 +102,8 @@ Page({
})
},
enterPerfectMsg:function(){//马上领取

wx.navigateTo({
url: '/pages/perfectMsg/perfectMsg',
})
}
})

+ 1
- 1
496_dongfengqichen/pages/guessSecond/guessSecond.wxml Voir le fichier

@@ -5,7 +5,7 @@
<image class="newImages5-2" src="{{imgUrl+'/newImages5/2.png'}}"></image>
<image class="newImages5-1" src="{{imgUrl+'/newImages5/1.png'}}"></image>
</view>
<image class="newImages5-3" src="{{imgUrl+'/newImages5/'+(guessResult?'6':'3')+'.png'}}"></image>
<image class="newImages5-3" src="{{imgUrl+'/newImages5/'+(guessResult?'38':'37')+'.png'}}"></image>
<image class="newImages5-4" src="{{imgUrl+'/newImages5/4.png'}}"></image>
<view class="selectFream">
<image class="versions-19" src="{{imgUrl+'/versions/19.png'}}"></image>

+ 2
- 2
496_dongfengqichen/pages/guessSecond/guessSecond.wxss Voir le fichier

@@ -51,8 +51,8 @@ view{
height: 35rpx;
}
.newImages5-3{
width: 635rpx;
height: 181rpx;
width: 634rpx;
height: 170rpx;
margin: 0 auto;
margin-top: 60rpx;
}

+ 31
- 5
496_dongfengqichen/pages/guessSecondPrize/guessSecondPrize.js Voir le fichier

@@ -9,10 +9,14 @@ Page({
imgUrl: app.globalData.urlStatic,//图片路径
ruleShow:false,//是否显示竞猜规则
inputValue:"",//输入的价格
stringValue:"",
focusState:false,
tipImgShow:true,

stringValue:"",//输入的竞猜价格
focusState:false,//输入框聚焦状态
tipImgShow:true,//是否显示输入框提示
isGuess:true,//是否竞猜过价格
guessPriceArr:[1,2,3,4,5,6],
slideDay:['0','0'],//距离上市时间
randomNum:44,//随机数
cartogramShow:false,//是否显示统计图
},

/**
@@ -20,6 +24,7 @@ Page({
*/
onLoad: function (options) {
app.globalData.nowPage = 3;
this.distanceDay();
if (app.globalData.openid) {
this.loadFun();
} else {
@@ -76,7 +81,11 @@ Page({
* 用户点击右上角分享
*/
onShareAppMessage: function () {

return {
title: '召唤预言帝!快来和我一起猜启辰星售价,赢升舱大奖!',
imageUrl: this.data.imgUrl + "/versions/guessShareImg.jpg",
path: "/pages/guess/guess"
}
},
enterLucky:function(){//每日抽奖
wx.navigateTo({
@@ -155,5 +164,22 @@ Page({
this.setData({
tipWindow2:!this.data.tipWindow2
})
},
distanceDay:function(){//距离4月23日上市还有XX天
var timestamp = Date.parse(new Date()); //今天的时间戳
var timestamp2 = Date.parse(new Date('2020-04-23')); //上市时间时间戳
if(timestamp2>timestamp){
var slideNum = Math.ceil((timestamp2-timestamp)/60/60/24/1000).toString().split("");
this.setData({
slideDay:slideNum//距离上市时间
})
}
},
cartogramControl:function(){
var randomNum = Math.floor(Math.random()*4+44);
this.setData({
randomNum:randomNum,
cartogramShow:!this.data.cartogramShow
})
}
})

+ 46
- 10
496_dongfengqichen/pages/guessSecondPrize/guessSecondPrize.wxml Voir le fichier

@@ -5,18 +5,40 @@
<image class="newImages5-2" src="{{imgUrl+'/newImages5/2.png'}}"></image>
<image class="newImages5-1" src="{{imgUrl+'/newImages5/1.png'}}"></image>
</view>
<image class="newImages5-28" src="{{imgUrl+'/newImages5/28.png'}}"></image>
<view>
<view class="newImages4-23">
<image class="newImages4-bg" src="{{imgUrl+'/newImages4/23.png'}}"></image>
<view class="inputFrame">{{stringValue}}</view>
<view wx:if="{{focusState}}" class="inputFrame2" style="left:{{34+stringValue.length*77}}rpx;"></view>
<image class="tipImg" wx:if="{{tipImgShow}}" src="{{imgUrl+'/newImages5/31.png'}}"></image>
<input class="inputPrice" value="{{stringValue}}" bindfocus="focusControl" bindblur="focusControl2" type="number" maxlength="6" bindinput="getValue"></input>
<view wx:if="{{!isGuess}}">
<image class="newImages5-28" src="{{imgUrl+'/newImages5/39.png'}}"></image>
<view>
<view class="newImages4-23">
<image class="newImages4-bg" src="{{imgUrl+'/newImages4/23.png'}}"></image>
<view class="inputFrame">{{stringValue}}</view>
<view wx:if="{{focusState}}" class="inputFrame2" style="left:{{34+stringValue.length*77}}rpx;"></view>
<image class="tipImg" wx:if="{{tipImgShow}}" src="{{imgUrl+'/newImages5/40.png'}}"></image>
<input class="inputPrice" value="{{stringValue}}" bindfocus="focusControl" bindblur="focusControl2" type="number" maxlength="6" bindinput="getValue"></input>
</view>
<image class="newImages4-24" bindtap="submitPrice2" src="{{imgUrl+'/newImages4/24.png'}}"></image>
</view>
<image class="newImages4-24" bindtap="submitPrice2" src="{{imgUrl+'/newImages4/24.png'}}"></image>
</view>
<image class="newImages5-30" src="{{imgUrl+'/newImages5/30.png'}}"></image>
<view wx:if="{{isGuess}}">
<image class="newImages5-41" src="{{imgUrl+'/newImages5/41.png'}}"></image>
<view class="selectFream">
<image class="versions-19" src="{{imgUrl+'/versions/19.png'}}"></image>
<view class="priceGroup" wx:for="{{guessPriceArr}}" wx:key="index" data-index="{{index}}" style="left:{{154+index*77}}rpx">
<image class="priceImg priceImg2" src="{{imgUrl+'/newImages4/newNum/'+(item-1<0?9:item-1)+'.png?v=002'}}"></image>
<image class="priceImg" src="{{imgUrl+'/newImages4/newNum/'+item+'.png?v=002'}}"></image>
<image class="priceImg priceImg3" src="{{imgUrl+'/newImages4/newNum/'+(item+1>9?1:item+1)+'.png?v=002'}}"></image>
</view>
<view class="slideMask"></view>
</view>
<view class="shareGroup">
<image class="newImages5-42" src="{{imgUrl+'/newImages5/42.png'}}"></image>
<button open-type="share" style="min-height:0;width: 100%;" class="shareBtn"></button>
</view>
<view class="dayGroup">
<image class="newImages5-43" src="{{imgUrl+'/newImages5/43.png'}}"></image>
<view class="dayNum">{{slideDay[0]+slideDay[1]}}</view>
</view>
</view>
<image class="newImages5-30" bindtap="cartogramControl" src="{{imgUrl+'/newImages5/30.png'}}"></image>
<image class="drawBtn" bindtap="ruleControl" src="{{imgUrl+'/versions/7.png'}}"></image>
<image class="yuyue" bindtap="enterLucky" src="{{imgUrl+'/versions/1.png'}}"></image>
<view class="ruleFrame" wx:if="{{ruleShow}}">
@@ -38,5 +60,19 @@
<image class="tipWindowBtn" bindtap="tipWindowControl3" src="{{imgUrl+'/newImages4/30.png'}}"></image>
</view>
</view>
<view class="ruleFrame ruleFrame2" wx:if="{{tipWindow2}}">
<view class="tipWindow">
<image class="tipWindowBg" src="{{imgUrl+'/newImages4/37.png'}}"></image>
<image class="tipWindowClose" bindtap="tipWindowControl2" src="{{imgUrl+'/newImages4/27.png'}}"></image>
<image class="tipWindowBtn" style="bottom:150rpx;" bindtap="submitFirstGuessInfo" src="{{imgUrl+'/newImages4/29.png'}}"></image>
<image class="tipWindowBtn" bindtap="tipWindowControl3" src="{{imgUrl+'/newImages4/30.png'}}"></image>
</view>
</view>
<view class="ruleFrame ruleFrame2" wx:if="{{cartogramShow}}">
<view class="cartogramGroup">
<image class="cartogramImg" src="{{imgUrl+'/newImages5/'+randomNum+'.png'}}"></image>
<image class="tipWindowClose" bindtap="cartogramControl" src="{{imgUrl+'/newImages4/27.png'}}"></image>
</view>
</view>
</view>
<tabBar></tabBar>

+ 105
- 3
496_dongfengqichen/pages/guessSecondPrize/guessSecondPrize.wxss Voir le fichier

@@ -186,10 +186,112 @@ view{
}
}
.tipImg{
width: 443rpx;
height: 35rpx;
width: 333rpx;
height: 83rpx;
position: absolute;
left: 46%;
left: 38%;
top: 50%;
transform: translate(-50%,-50%);
}
.newImages5-41{
width: 480rpx;
height: 41rpx;
margin: 0 auto;
margin-top: 63rpx;
}
.selectFream{
position: relative;
margin-top: 20rpx;
}
.versions-19{
width: 535rpx;
height: 137rpx;
margin: 0 auto;
margin-left: 124rpx;
}
.priceGroup{
position: absolute;
top: 18rpx;
left: 154rpx;
width: 60rpx;
height: 100rpx;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
.priceImg{
width: 36rpx;
height: 43rpx;
}
.priceImg2,.priceImg3{
position: absolute;
left: 50%;
transform: translateX(-50%);
top: -23rpx;
}
.priceImg3{
top: auto;
bottom: -23rpx;
}
.slideMask{
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
opacity: 0;
}
.shareGroup{
width: 388rpx;
height: 60rpx;
position: relative;
margin: 0 auto;
margin-top: 20rpx;
margin-bottom: 37rpx;
}
.newImages5-42{
width: 388rpx;
height: 60rpx;
}
.dayGroup{
position: relative;
width: 553rpx;
height: 53rpx;
margin: 0 auto;
}
.newImages5-43{
width: 100%;
height: 100%;
}
.dayNum{
position: absolute;
left: 286rpx;
top: 0;
width: 84rpx;
height: 53rpx;
letter-spacing: 22rpx;
font-size: 36rpx;
line-height: 53rpx;
color: white;
text-align: center;
}
.cartogramGroup{
position: relative;
width: 501rpx;
height: 620rpx;
}
.cartogramImg{
width: 100%;
height: 100%;
}
.shareBtn{
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
opacity: 0;
}

+ 7
- 1
496_dongfengqichen/pages/myCenter/myCenter.js Voir le fichier

@@ -360,6 +360,9 @@ Page({
} else if (e.currentTarget.dataset.value == 2) {
this.data.parames2.page = 1;
this.data.noData2 = false;
this.setData({
recordList:[]
})
this.getMyAwardList();
} else if (e.currentTarget.dataset.value == 3){
this.data.parames.page = 1;
@@ -834,6 +837,9 @@ Page({
if(this.data.selectNow==2 && this.data.recordNow == 1 && !this.data.addressShow){
this.data.parames2.page = 1;
this.data.noData2 = false;
this.setData({
recordList:[]
})
this.getMyAwardList();
}
},
@@ -898,7 +904,7 @@ Page({
})
},
getAddress: function () {//获取地址
app.wxRequest(app.globalData.urlRoot + "address/getAddress", {}, res => {
app.wxRequest(app.globalData.urlRoot + "address/getAddressV2", {}, res => {
if (res.code == 200) {
if (res.data) {
this.data.isAddress = true;

+ 189
- 2
496_dongfengqichen/pages/perfectMsg/perfectMsg.js Voir le fichier

@@ -8,7 +8,27 @@ Page({
data: {
imgUrl: app.globalData.urlStatic,//图片路径
selectType:2,//选中的手机号类型

marginT: 0,
verificationCode:"获取验证码",
sendCode:true,
mobile2:"",
submitData:{
realName:"",//姓名
mobile:"",//手机号
province:"",//经销商省份
city:"",//经销商城市
agent_code:"",//经销商编码
agentDetail:"",//经销商详情
addressDetail:"",//地址详情
scene:"",//场景值名称
captcha:"",//验证码(若非微信绑定手机号需要传入)
},
provinceDataAll: null,//地区所有数据
provinceDataArr: [[""], [""]],//省市数据
provinceDataValue: [0, 0],//选中的省市下标
nowProvince: "",//选中的省市文字
storeArr: [],//专营店数据
storeValue: 0,//选中的专营店下标
},

/**
@@ -21,9 +41,20 @@ Page({
} else {
app.globalData.openidSuccessFuc = this.loadFun;
}
if (app.globalData.userPhoneType == "ios") {
this.setData({
marginT: -20
})
}
},
loadFun:function(){
if (app.globalData.userMobile) {
this.data.submitData.mobile = app.globalData.userMobile;
this.setData({
submitData: this.data.submitData
})
}
this.getAddress();
},

/**
@@ -88,5 +119,161 @@ Page({
this.setData({
selectType:e.currentTarget.dataset.type
})
},
getAddressDetail: function (e) {//获取详细地址
this.data.submitData.addressDetail = e.detail.value;
},
getRealName:function(e){//获取用户输入的姓名
this.data.submitData.realName = e.detail.value;
},
getMobile:function(e){//获取用户输入的电话
this.data.mobile2 = e.detail.value;
},
getCaptcha: function (e) {//获取用户输入的验证码
this.data.submitData.captcha = e.detail.value;
},
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);
},
getAddress: function () {//获取地址
app.wxRequest(app.globalData.urlRoot + "address/getAddressV2", {}, res => {
console.log(res);
if (res.code == 200) {
if (res.data) {
this.data.submitData.realName = res.data.realName;
this.data.submitData.mobile = res.data.mobile;
this.data.submitData.province = res.data.province;
this.data.submitData.city = res.data.city;
this.data.submitData.addressDetail = res.data.addressDetail;
this.setData({
submitData: this.data.submitData
})
if(!res.data.agentDetail){
this.getUserLocation();//获取用户当前位置
}
}
} else {
wx.showToast({
title: res.msg,
icon: "none"
})
}
}, this);
},
getUserLocation: function (e) {//获取用户地理位置
wx.getLocation({
type: 'wgs84', //wgs84 gcj02
success: (res) => {
this.getDistributorList(res.longitude, res.latitude);
},
fail: (res) => {
this.getDistributorList("", "");
}
})
},
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);
},
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
})
}
})

+ 43
- 28
496_dongfengqichen/pages/perfectMsg/perfectMsg.wxml Voir le fichier

@@ -1,37 +1,52 @@
<!--pages/perfectMsg/perfectMsg.wxml-->
<view class="main">
<image class="pageBg" src="{{imgUrl+'/versions/20.png?v=002'}}"></image>
<view class="pageTitle">完善个人信息</view>
<view class="selectGroup">
<view class="selectType {{selectType==1?'selectType2':''}}" bindtap="chooseType" data-type="1" style="margin-bottom:20rpx;">使用微信绑定手机号</view>
<view class="selectType {{selectType==2?'selectType2':''}}" bindtap="chooseType" data-type="2">使用手机号码</view>
</view>
<view class="userMsgFrame">
<input class="userMsgGroup" placeholder="请输入您的姓名" placeholder-style="color:#B3B3B3;"></input>
<input class="userMsgGroup" placeholder="请输入您的联系电话" type="number" placeholder-style="color:#B3B3B3;"></input>
<view class="userMsgGroup userMsgGroup2">
<input style="width:300rpx;" placeholder="请输入验证码" placeholder-style="color:#B3B3B3;"></input>
<view class="getCode">获取验证码</view>
<view class="mainGroup">
<image class="pageBg" src="{{imgUrl+'/versions/20.png?v=002'}}"></image>
<view class="pageTitle">完善个人信息</view>
<view class="selectGroup">
<view class="selectType {{selectType==1?'selectType2':''}}" bindtap="chooseType" data-type="1" style="margin-bottom:20rpx;">使用微信绑定手机号</view>
<view class="selectType {{selectType==2?'selectType2':''}}" bindtap="chooseType" data-type="2">使用手机号码</view>
</view>
<picker>
<view class="userMsgGroup userMsgGroup2">
<view>北京 北京</view>
<image class="selectIcon" src="{{imgUrl+'/newImages5/17.png'}}"></image>
<view class="userMsgFrame">
<view class="userMsgGroup">
<view class="userMsgTitle">姓名</view>
<input class="userMsgInput" placeholder="请输入您的姓名" bindinput="getRealName" value="{{submitData.realName}}" placeholder-style="color:#99999A;"></input>
</view>
<view class="userMsgGroup" wx:if="{{selectType==1}}">
<view class="userMsgTitle">电话</view>
<view class="userMsgInput">{{submitData.mobile}}</view>
</view>
<view class="userMsgGroup" wx:if="{{selectType==2}}">
<view class="userMsgTitle">电话</view>
<input class="userMsgInput" type="number" maxlength="11" bindinput="getMobile" value="{{mobile2}}" placeholder="请输入您的联系电话" placeholder-style="color:#99999A;"></input>
</view>
<view class="userMsgGroup" style="justify-content: flex-end;">
<view class="userMsgGroup2">
<input class="userMsgInput" style="width:350rpx;" bindinput="getCaptcha" placeholder="请输入验证码" placeholder-style="color:#99999A;"></input>
<view class="getCode" bindtap="getCode">{{verificationCode}}</view>
</view>
</view>
</picker>
<picker>
<view class="userMsgGroup userMsgGroup2" style="margin-bottom:0;">
<view>北京 北京</view>
<image class="selectIcon" src="{{imgUrl+'/newImages5/17.png'}}"></image>
<view class="userMsgGroup">
<view class="userMsgTitle">当前城市</view>
<picker mode="multiSelector" range="{{provinceDataArr}}" value="{{provinceDataValue}}" bindcolumnchange="provinceDataChange" bindchange="provinceDataChane">
<view class="userMsgInput">{{nowProvince}}</view>
</picker>
</view>
</picker>
<view class="userMsgGroup">
<view class="userMsgTitle">专营店</view>
<picker mode="selector" range="{{storeArr}}" range-key="agent_detail" value="{{storeValue}}" bindchange="storeChane">
<view class="userMsgInput">{{storeArr[storeValue].agent_detail}}</view>
</picker>
</view>
</view>
<view class="userMsgDetailGroup">
<view class="userMsgDetail">
<view class="detailTitle">收货地址:</view>
<textarea class="addressTextarea" maxlength="-1" style="margin-top:{{marginT}}rpx;width:490rpx;" bindinput="getAddressDetail" value=""></textarea>
</view>
</view>
<image class="submitBtn" src="{{imgUrl+'/newImages5/18.png'}}"></image>
</view>
<!-- <view class="protocolGroup">
<image class="protocolIcon" src=""></image>
<image class="protocolText"></image>
<image class="protocolBtn"></image>
</view> -->
<image class="submitBtn" src="{{imgUrl+'/newImages5/18.png'}}"></image>
<image class="drawBtn" bindtap="ruleControl" src="{{imgUrl+'/versions/7.png'}}"></image>
<image class="yuyue" bindtap="enterLucky" src="{{imgUrl+'/versions/1.png'}}"></image>
<view class="ruleFrame" wx:if="{{ruleShow}}">

+ 69
- 10
496_dongfengqichen/pages/perfectMsg/perfectMsg.wxss Voir le fichier

@@ -90,27 +90,50 @@ view{
width: 650rpx;
}
.userMsgGroup{
border:2rpx solid #73788d;
border-radius: 20rpx;
width: 100%;
height: 65rpx;
line-height: 61rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:400;
color:rgba(255,255,255,1);
padding: 0 35rpx;
box-sizing: border-box;
margin-bottom: 15rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.userMsgGroup2{
width: 540rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.userMsgTitle{
line-height: 24rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:400;
color:rgba(255,255,255,1);
}
.userMsgInput{
width: 540rpx;
height:65rpx;
padding: 0 30rpx;
border:2rpx solid #73788d;
border-radius: 20rpx;
line-height: 65rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:300;
color:white;
box-sizing: border-box;
}
.getCode{
width: 130rpx;
width:162rpx;
height:50rpx;
text-align: center;
background-color: white;
line-height:50rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:400;
color:rgba(24,42,114,1);
border-radius: 20rpx;
}
.selectIcon{
width: 23rpx;
@@ -120,4 +143,40 @@ view{
width: 711rpx;
height: 70rpx;
margin: 0 auto;
}
.userMsgDetailGroup{
padding-top: 25rpx;
padding-bottom: 90rpx;
display: flex;
align-items: center;
justify-content: center;
}
.userMsgDetail{
width:700rpx;
height:100rpx;
padding: 20rpx 30rpx;
border:2rpx solid #73788d;
border-radius: 20rpx;
box-sizing: border-box;
display: flex;
}
.mainGroup{
position: relative;
padding-bottom: 50rpx;
}
.detailTitle{
line-height: 24rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:400;
color:rgba(255,255,255,1);
}
.addressTextarea{
width: 500rpx;
height: 60rpx;
line-height: 30rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:300;
color:white;
}

+ 186
- 17
496_dongfengqichen/pages/userMsg/userMsg.js Voir le fichier

@@ -14,13 +14,17 @@ Component({
data: {
imgUrl: app.globalData.urlStatic,//图片路径
submitData: {
realName: "",
realName: "",//姓名
mobile: "",//电话
province: "",//省份
city: "",//城市
district: "",//地区
addressDetail: ""//详细
province: "",//经销商省份
city: "",//经销商城市
agent_code:"",//经销商编码
agentDetail:"",//经销商详情
addressDetail: "",//地址详情
captcha:"",
scene:"",//场景值名称
},
mobile2:"",
selectType:2,
avatarUrlShow:"",
userData:{
@@ -29,7 +33,16 @@ Component({
},
isAddress: false,//是否有地址
marginT: 0,
submitDataState:false
submitDataState:false,
verificationCode:"获取验证码",
sendCode:true,
phoneInputShow: false,//是否显示电话输入框
provinceDataAll: null,//地区所有数据
provinceDataArr: [[""], [""]],//省市数据
provinceDataValue: [0, 0],//选中的省市下标
nowProvince: "",//选中的省市文字
storeArr: [],//专营店数据
storeValue: 0,//选中的专营店下标
},
attached:function(){
if (app.globalData.userPhoneType == "ios") {
@@ -48,6 +61,13 @@ Component({
*/
methods: {
loadFun: function () {
if (app.globalData.userMobile) {
this.data.submitData.mobile = app.globalData.userMobile;
this.setData({
phoneInputShow: true,
submitData: this.data.submitData
})
}
if (app.globalData.userInfoData) {
this.data.userData.avatarUrl = app.globalData.userInfoData.avatarUrl;
this.data.userData.nickName = app.globalData.userInfoData.nickName;
@@ -59,7 +79,8 @@ Component({
this.getAddress();
},
getAddress: function () {//获取地址
app.wxRequest(app.globalData.urlRoot + "address/getAddress", {}, res => {
app.wxRequest(app.globalData.urlRoot + "address/getAddressV2", {}, res => {
console.log(res);
if (res.code == 200) {
if (res.data) {
this.data.isAddress = true;
@@ -67,11 +88,13 @@ Component({
this.data.submitData.mobile = res.data.mobile;
this.data.submitData.province = res.data.province;
this.data.submitData.city = res.data.city;
this.data.submitData.district = res.data.district;
this.data.submitData.addressDetail = res.data.addressDetail;
this.setData({
submitData: this.data.submitData
})
if(!res.data.agentDetail){
this.getUserLocation();//获取用户当前位置
}
}
} else {
wx.showToast({
@@ -115,14 +138,6 @@ Component({
}
}, this, "POST");
},
addressChange: function (e) {//所在地区发生改变
this.data.submitData.province = e.detail.value[0];
this.data.submitData.city = e.detail.value[1];
this.data.submitData.district = e.detail.value[2];
this.setData({
submitData: this.data.submitData
})
},
getNickName: function(e) {//获取昵称
this.data.userData.nickName = e.detail.value;
this.setData({
@@ -141,6 +156,9 @@ Component({
submitData: this.data.submitData
})
},
getMobile2: function (e) {//获取用户输入的电话---无验证码
this.data.mobile2 = e.detail.value;
},
getAddressDetail: function (e) {//获取详细地址
this.data.submitData.addressDetail = e.detail.value;
this.setData({
@@ -258,8 +276,159 @@ Component({
})
},
changeSelectType:function(e){
if(e){
this.setData({
selectType:e.currentTarget.dataset.type
})
}else{
this.setData({
selectType:1
})
}
},
getCaptcha: function (e) {//获取用户输入的验证码
this.data.submitData.captcha = e.detail.value;
},
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);
},
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.changeSelectType();
if (res.data && res.data.decodeData) {
this.data.submitData.mobile = res.data.decodeData.phoneNumber;
this.setData({
submitData: this.data.submitData
})
}
} else {
wx.showToast({
title: res.msg,
icon: "none"
})
}
}, this);
}
},
getUserLocation: function (e) {
wx.getLocation({
type: 'wgs84', //wgs84 gcj02
success: (res) => {
this.getDistributorList(res.longitude, res.latitude);
},
fail: (res) => {
this.getDistributorList("", "");
}
})
},
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);
},
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({
selectType:e.currentTarget.dataset.type
storeValue: e.detail.value
})
}
}

+ 38
- 3
496_dongfengqichen/pages/userMsg/userMsg.wxml Voir le fichier

@@ -20,13 +20,49 @@
</view>
</view>
<view class="selectTypeGroup">
<image class="selectTypeImg" bindtap="changeSelectType" data-type="1" style="margin-bottom:24rpx;" src="{{imgUrl+'/newImages5/'+(selectType==1?32:34)+'.png'}}"></image>
<view style="position: relative;">
<image class="selectTypeImg" bindtap="changeSelectType" data-type="1" style="margin-bottom:24rpx;" src="{{imgUrl+'/newImages5/'+(selectType==1?32:34)+'.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="selectTypeImg" bindtap="changeSelectType" data-type="2" src="{{imgUrl+'/newImages5/'+(selectType==2?35:33)+'.png'}}"></image>
</view>
<view class="userMsgGroup">
<view class="userMsgtitle">姓名</view>
<input class="userMsgInput" placeholder="请输入姓名"></input>
<input class="userMsgInput" bindinput="getRealName" value="{{submitData.realName}}" placeholder="请输入姓名"></input>
</view>
<view class="userMsgGroup" wx:if="{{selectType==1}}">
<view class="userMsgtitle">电话</view>
<input class="userMsgInput" maxlength='11' disabled="true" type="number" bindinput="getMobile" value="{{submitData.mobile}}" placeholder="请输入您的联系电话"></input>
</view>
<view class="userMsgGroup" wx:if="{{selectType==2}}">
<view class="userMsgtitle">电话</view>
<input class="userMsgInput" maxlength='11' type="number" bindinput="getMobile2" value="{{mobile2}}" placeholder="请输入您的联系电话"></input>
</view>
<view class="codeFrame" wx:if="{{selectType==2}}">
<view class="codeGroup">
<input class="codeInput" bindinput="getCaptcha" value="{{submitData.captcha}}" placeholder="请输入您的验证码"></input>
<view class="getCodeBtn" bindtap="getCode">{{verificationCode}}</view>
</view>
</view>
<view class="userMsgGroup">
<view class="userMsgtitle">当前城市</view>
<picker mode="multiSelector" range="{{provinceDataArr}}" value="{{provinceDataValue}}" bindcolumnchange="provinceDataChange" bindchange="provinceDataChane">
<view class="userMsgInput">{{nowProvince}}</view>
</picker>
</view>
<view class="userMsgGroup">
<view class="userMsgtitle">专营店</view>
<picker mode="selector" range="{{storeArr}}" range-key="agent_detail" value="{{storeValue}}" bindchange="storeChane">
<view class="userMsgInput">{{storeArr[storeValue].agent_detail}}</view>
</picker>
</view>
<view class="msgGroup addressDetail">
<view class="msgTitle">收货地址:</view>
<textarea class="msgInput addressTextarea" maxlength="-1" style="margin-top:{{marginT}}rpx;width:490rpx;" bindinput="getAddressDetail" value="{{submitData.addressDetail}}"></textarea>
</view>
<image class="saveAddress" bindtap="saveUserMsg" src="{{imgUrl+'/newImages2/96.png'}}"></image>
<!-- <view class="msgGroup">
<view class="msgTitle">收货人:</view>
<input class="msgInput" bindinput="getRealName" value="{{submitData.realName}}"></input>
@@ -46,6 +82,5 @@
<textarea class="msgInput addressTextarea" maxlength="-1" style="margin-top:{{marginT}}rpx;" bindinput="getAddressDetail" value="{{submitData.addressDetail}}"></textarea>
</view> -->
</view>
<image class="saveAddress" bindtap="saveUserMsg" src="{{imgUrl+'/newImages2/96.png'}}"></image>
</view>
</view>

+ 71
- 9
496_dongfengqichen/pages/userMsg/userMsg.wxss Voir le fichier

@@ -38,6 +38,8 @@
display: flex;
align-items: center;
flex-direction: column;
overflow: auto;
padding-bottom: 30rpx;
}
.msgGroup{
position: relative;
@@ -52,11 +54,11 @@
margin-bottom: 40rpx;
}
.msgTitle,.msgInput{
min-height: 23rpx;
line-height: 23rpx;
font-size:23rpx;
min-height: 24rpx;
line-height: 24rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:600;
font-weight:400;
color:rgba(35,33,34,1);
}
.msgInput{
@@ -68,19 +70,22 @@
align-items: center;
}
.addressDetail{
padding: 21rpx 26rpx;
height:102rpx;
width: 650rpx;
padding: 20rpx 25rpx;
height:100rpx;
align-items: flex-start;
margin-bottom: 0;
margin-bottom: 30rpx;
margin-top: 25rpx;
}
.addressTextarea{
height: 100%;
margin-left: 5rpx;
}
.saveAddress{
position: absolute;
/* position: absolute;
left: 50%;
bottom: 45rpx;
transform: translateX(-50%);
transform: translateX(-50%); */
width:652rpx;
height:70rpx;
}
@@ -144,6 +149,7 @@
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 15rpx;
}
.userMsgtitle{
line-height: 24rpx;
@@ -157,4 +163,60 @@
height: 65rpx;
border: 2rpx solid #aaaaaa;
border-radius: 20rpx;
line-height: 65rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:300;
padding: 0 30rpx;
box-sizing: border-box;
color: black;
}
.codeFrame{
width: 650rpx;
display: flex;
align-items: center;
justify-content: flex-end;
margin-bottom: 15rpx;
}
.codeGroup{
width: 540rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.getCodeBtn{
width: 160rpx;
height: 50rpx;
background-color: #2b558a;
line-height: 50rpx;
font-size:26rpx;
font-family:PingFangSC;
font-weight:300;
color:rgba(255,255,255,1);
border-radius: 20rpx;
text-align: center;
}
.codeInput{
width:350rpx;
height: 65rpx;
border: 2rpx solid #aaaaaa;
border-radius: 20rpx;
line-height: 65rpx;
font-size:24rpx;
font-family:PingFangSC;
font-weight:300;
padding: 0 30rpx;
box-sizing: border-box;
color: black;
}
.getPhoneFrame{
position: absolute;
left: 0;
top: 0;
width:100%;
height: 70rpx;
z-index: 2;
}
.getPhoneBtn{
opacity: 0;
}

Chargement…
Annuler
Enregistrer