diff --git a/miniprogram/pages/meeting/invite/invite.js b/miniprogram/pages/meeting/invite/invite.js index 93cddc8..6285990 100644 --- a/miniprogram/pages/meeting/invite/invite.js +++ b/miniprogram/pages/meeting/invite/invite.js @@ -11,6 +11,11 @@ import { selectCoordinateRq } from "../../../api/meeting/meetingRoom.js" +import { + loginRq, + registerPhone +} from "../../../api/login/login.js" + Page({ @@ -32,6 +37,10 @@ Page({ id: null, detail: null, address: {}, + openid: null, + authorizationShow: true, + participateShow: false, + openDoorShow: false, }, /** @@ -46,6 +55,8 @@ Page({ _this.getDetail(); // 获取地址信息 _this.getAddress() + // 自动登录获取openid + _this.autoLogin() }, // 获取地址信息 @@ -53,7 +64,7 @@ Page({ let _this = this; selectCoordinateRq().then(res => { _this.setData({ - address : res, + address: res, mapData: { latitude: res.lat, longitude: res.lng, @@ -82,6 +93,69 @@ Page({ }) }, + // 打开地图 + openMap(e) { + console.log('openMap', e); + let _this = this; + wx.openLocation({ + name: _this.data.address.address, + latitude: _this.data.address.lat, + longitude: _this.data.address.lng, + }) + }, + + // 自动登录获取openid + autoLogin() { + let _this = this; + wx.login({ + success(wxRes) { + loginRq({ + "jsCode": wxRes.code + }).then(res => { + console.log('loginRq', res); + _this.setData({ + openid: res.openid + }) + // 判断用户是否注册 + if (res.token) { + // 用户授权成功 + _this.userAuthorizationSuccess(res.openid, res.user, res.token.token) + } + }) + } + }) + }, + + // 获取手机号 + getPhoneNumber(e) { + let _this = this; + console.log('getPhoneNumber', e) + registerPhone({ + "code": e.detail.code, + "openid": _this.data.openid + }).then(res => { + console.log('registerPhone', res); + // 用户授权成功 + _this.userAuthorizationSuccess(res.openid, res.user, res.token.token) + }) + }, + // 用户授权成功 + userAuthorizationSuccess(openid, user, token) { + let _this = this; + _this.setData({ + authorizationShow : false + }) + + // 清空所有缓存 + wx.clearStorageSync() + // 存储用户信息 + wx.setStorageSync('openid', openid) + wx.setStorageSync('user', user) + wx.setStorageSync('userId', user.id) + wx.setStorageSync('token', token) + + }, + /** * 生命周期函数--监听页面初次渲染完成 */ diff --git a/miniprogram/pages/meeting/invite/invite.wxml b/miniprogram/pages/meeting/invite/invite.wxml index 524becf..5dae2da 100644 --- a/miniprogram/pages/meeting/invite/invite.wxml +++ b/miniprogram/pages/meeting/invite/invite.wxml @@ -7,13 +7,13 @@ - + 发起人 - + {{detail.userName}} {{detail.phone}} @@ -34,7 +34,12 @@ 会面时间 {{detail.timeSlot}} - - 接受邀请 - + + 授权登录 + + + + 接受邀请 + + 点击开门 \ No newline at end of file diff --git a/miniprogram/pages/meeting/invite/invite.wxss b/miniprogram/pages/meeting/invite/invite.wxss index a24f615..83cc483 100644 --- a/miniprogram/pages/meeting/invite/invite.wxss +++ b/miniprogram/pages/meeting/invite/invite.wxss @@ -71,7 +71,7 @@ font-size: 26rpx; } -.submitBtn{ +.submitBtn { box-sizing: border-box; position: absolute; width: 600rpx; @@ -86,6 +86,15 @@ text-align: center; } -.br{ +.loginBtn { + position: absolute; + width: 100%; + height: 100%; + left: 0; + top: 0; + opacity: 0; +} + +.br { height: 20rpx; } \ No newline at end of file