作者 王军

连点

... ... @@ -29,13 +29,22 @@ Page({
// 预约
yuyuecancel: false,
yuyuesuccess: false,
// 防连点
isClick:false,
token:"",
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.getPersonMsg();
this.setData({
token:wx.getStorageSync("token")
})
if(this.data.token){
this.getPersonMsg();
}
// 获取首页信息
this.getIndexMsg();
},
... ... @@ -60,14 +69,26 @@ Page({
},
// 确定预约
confirmAppoint(){
let url = "/api/user/book";
app.post(url,"","post")
.then(res=>{
if(!this.data.isClick){
this.setData({
yuyuecancel: false,
yuyuesuccess:true
isClick:true
})
})
let url = "/api/user/book";
app.post(url, "", "post")
.then(res => {
this.setData({
yuyuecancel: false,
yuyuesuccess: true,
isClick:false
})
})
.catch(err=>{
this.setData({
isClick: false
})
})
}
},
cancelyuyue() {
this.setData({
... ...
... ... @@ -76,6 +76,11 @@ Page({
seconds: time
})
if (time <= 0) {
t.setData({
isCode: true,
isClick: false,
seconds:60
})
clearInterval(timeAuther)
}
}, 1000)
... ... @@ -87,10 +92,13 @@ Page({
.then(res => {
t.setData({
isClick: false,
})
})
.catch(err=>{
t.setData({
isClick: false,
})
})
}
} else {
wx.showToast({
... ...
... ... @@ -50,7 +50,7 @@
</view>
<view>
<view wx:if="{{isCode}}" class="get_code" bindtap='getCode'>获取验证码</view>
<view wx:else class="send_code">{{seconds}}秒后发送</view>
<view wx:else class="send_code">{{seconds}}秒后重新发送</view>
</view>
</view>
... ...
... ... @@ -108,7 +108,7 @@ image {
}
/* 获取验证码 */
.code_input{
width: 200rpx;
width: 160rpx;
margin-right: 48rpx
}
.get_code{
... ...
... ... @@ -7,6 +7,8 @@ Page({
*/
data: {
content:"",
// 防连点
isClick:false
},
/**
... ... @@ -22,23 +24,43 @@ Page({
},
// 意见反馈
submitSuggest(){
let url = "/api/user/feedBack";
let params = {
content:this.data.content
};
app.post(url,params,"post")
.then(res=>{
if (this.data.content){
if(!this.data.isClick){
let t = this;
t.setData({
isClick:true
})
let url = "/api/user/feedBack";
let params = {
content: t.data.content
};
app.post(url, params, "post")
.then(res => {
wx.showToast({
title: '反馈成功',
icon: 'success',
duration: 1500
})
setTimeout(function () {
wx.navigateBack({
delta: 1
})
}, 1500)
})
.catch(err=>{
t.setData({
isClick:false
})
})
}
}else{
wx.showToast({
title: '反馈成功',
icon:'success',
duration:1500
title: '请输入反馈建议',
icon:'none'
})
setTimeout(function(){
wx.navigateBack({
delta:1
})
},1500)
})
}
},
/**
* 生命周期函数--监听页面初次渲染完成
... ...
... ... @@ -15,6 +15,10 @@ Page({
token: "",
// 分享人的ID
shareId:"",
// 防连点
isClick:false,
// 是否已预约
isConfirm:true
},
/**
... ... @@ -23,7 +27,7 @@ Page({
onLoad: function(options) {
this.setData({
token: wx.getStorageSync("token"),
shareId:options.id
shareId:options.id
})
// 获取服务介绍详情
this.getServeiceDetail();
... ... @@ -61,41 +65,70 @@ Page({
submit() {
// 判断是否登录
let t = this;
if (t.data.token) {
if (t.data.region.length > 0 && t.data.name && t.data.phone && t.data.address) {
let url = "/api/user/freeBook";
let params = {
user_name: t.data.name,
mobile: t.data.phone,
address: t.data.address,
province: t.data.region[0],
city: t.data.region[1],
district: t.data.region[2]
};
app.post(url, params,"post")
.then(res => {
wx.showToast({
title: '预约成功',
icon:"success",
duration:1500,
if(!t.data.isClick){
t.setData({
isClick:true
})
if (t.data.token) {
if (t.data.region.length > 0 && t.data.name && t.data.phone && t.data.address) {
setTimeout(function(){
t.setData({
isClick:false
})
},1500)
let url = "/api/user/freeBook";
let params = {
user_name: t.data.name,
mobile: t.data.phone,
address: t.data.address,
province: t.data.region[0],
city: t.data.region[1],
district: t.data.region[2]
};
app.post(url, params, "post")
.then(res => {
console.log(res)
wx.showToast({
title: '预约成功',
icon: "success",
duration: 1500,
})
t.setData({
isClick: false,
isConfirm:false
})
// 分享
setTimeout(function () {
if(t.data.shareId){
t.showShare()
}else{
wx.navigateBack({
delta:1
})
}
}, 1500)
})
// 分享
setTimeout(function(){
this.showShare()
},1500)
} else {
wx.showToast({
title: '请输入完整信息',
icon: "none"
})
t.setData({
isClick:false
})
}
} else {
wx.showToast({
title: '请输入完整信息',
icon: "none"
t.setData({
isClick: false
})
// 未登录
wx.redirectTo({
url: '/pages/star/star',
})
}
}else{
// 未登录
wx.navigateTo({
url: '/pages/star/star',
})
}
},
... ... @@ -107,8 +140,8 @@ Page({
};
app.post(url,params,"post")
.then(res=>{
wx.redirectTo({
url: '/pages/homeindex/homeindex',
wx.navigateBack({
delta: 1
})
})
},
... ...
... ... @@ -56,7 +56,8 @@
</view>
</view>
<view class="queren" bindtap='submit'>确认</view>
<view class="queren" bindtap='submit' wx:if="{{isConfirm}}">确认</view>
<view class="queren" wx:else>已预约</view>
</view>
</view>
</view>
\ No newline at end of file
... ...
... ... @@ -12,6 +12,12 @@ Page({
nickName:"",
avatar:"",
},
// 暂不登录
noLogin(){
wx.navigateBack({
delta:1
})
},
// 获取用户信息(授权)
star(e) {
// console.log(e); // 此处会返回换取token必须的'encryptedData'和'iv'两个参数,
... ... @@ -51,8 +57,8 @@ Page({
wx.setStorageSync("is_vip", res.is_vip) //是否为vip
wx.setStorageSync("userId",res.id)
// 之后跳转页面/执行方法
wx.navigateBack({
delta:1
wx.redirectTo({
url: '/pages/homeindex/homeindex',
})
})
... ... @@ -69,22 +75,6 @@ Page({
this.setData({
code:res.code
})
console.log(res, "此处会返回一个code");
// var url = "用code换取'session_key'和'openid'的接口";
// let url = "api/user/getSessionKey";
// var params = {
// code: res.code //这是wx.login的方法返回的code
// };
// app.post(url, params).then(r => {
// console.log(r) //此处会返回用code换取的'session_key'和'openid'
// // 之后将他们赋值到data中,方便调用
// this.setData({
// session_key: r.session_key,
// openid: r.openid
// })
// }).catch(err => {
// console.log(err)
// })
}
})
},
... ...
... ... @@ -39,7 +39,7 @@
"list": []
},
"miniprogram": {
"current": 10,
"current": 11,
"list": [
{
"id": -1,
... ... @@ -115,6 +115,13 @@
"id": -1,
"name": "会员注册",
"pathName": "pages/register/register",
"query": "",
"scene": null
},
{
"id": -1,
"name": "授权",
"pathName": "pages/star/star",
"scene": null
}
]
... ...