From eb9ae89c3e9f66fe5d0f39092a41e5c09bd86fc6 Mon Sep 17 00:00:00 2001 From: 付延余 <f-yanyu@outlook.com> Date: 星期五, 24 三月 2023 13:40:02 +0800 Subject: [PATCH] 获取司机定位微信接口签到,货代首页列表详情 --- pages/login/login.vue | 87 +++++++++++++++++++++++++++---------------- 1 files changed, 54 insertions(+), 33 deletions(-) diff --git a/pages/login/login.vue b/pages/login/login.vue index 961779e..d87737f 100644 --- a/pages/login/login.vue +++ b/pages/login/login.vue @@ -2,7 +2,7 @@ <view class="login"> <view class="logo">鏃犱汉鍊煎畧</view> <!--鐢ㄦ埛鍚嶅瘑鐮佺櫥褰�--> - <user-password /> + <user-password :btnText="0" /> <!-- 寰俊openid鐧诲綍 --> <view class="loginBtn"> <u-button class="button" @click.stop="beforeLoginEvent" :disabled="btnLoading" :loading="btnLoading" type="primary" text="寰俊涓�閿櫥褰�"></u-button> @@ -24,20 +24,27 @@ </view> </u-popup> </view> + <!-- 璇㈤棶鏄惁缁戝畾寰俊 --> + <view class="bindWxModel"> + <u-modal :show="bindWxModelShow" :title="bindWxModelTitle" showCancelButton :content="bindWxContent" @confirm="bindWxConfirm" @cancel="bindWxCancel"></u-modal> + </view> </view> </template> <script> -import { apiLogin, apiLogin2, apiLoginPassword } from '@/api/publicInterface.js'; +import { apiLoginWx, apiLoginPassword } from '@/api/publicInterface.js'; import { mapMutations } from 'vuex'; import userPassword from './userPassword.vue'; - +import { setToken, setRefreshToken, setUsernameKey, setCustomerId, redirectHome } from '@/utils/status.js'; export default { data() { return { - wxcode: '', // 鍙告満1 btnLoading: false, - loginPopupShow: false + loginPopupShow: false, + // 缁戝畾寰俊妯℃�佹 + bindWxModelShow: false, + bindWxModelTitle: '鎻愮ず', + bindWxContent: '濡傛灉宸叉嫢鏈夌郴缁熻处鍙凤紝鍙互鐩存帴璺宠浆缁戝畾寰俊椤甸潰' }; }, components: { @@ -54,8 +61,7 @@ uni.login({ success: res => { if (res.code) { - this.wxcode = res.code; - this.apiLogin(); + this.apiLogin(res.code); } else { uni.showToast({ title: '寰俊鐧诲綍澶辫触锛�', @@ -66,44 +72,59 @@ }); }, // 鐧诲綍鎺ュ彛 - apiLogin() { - // apiLogin2({ code: this.wxcode }) - // .then(res => { - // console.log('璇锋眰鐧诲綍', res); - // if (res.msg == '闇�缁戝畾') { - // uni.navigateTo({ - // url: `/pages/register/register?code=${res.data}` - // }); - // } - // if (res.msg == '鐧诲綍鎴愬姛') { - // uni.setStorageSync('userInfo', res.data); - // this.setUserTabbar(res.data.type); - // uni.switchTab({ - // url: '/pages/tabbar-page/index-tabbar/index-tabbar' - // }); - // } - // }) - // .catch(err => { - // console.log('閿欒', err); - // }); - + apiLogin(code) { /** * @openid * 鑾峰彇寰俊鐢ㄦ埛openid,寰俊涓�閿櫥褰曟殏鏃犵浉鍏虫帴鍙o紝鐢ㄤ簬娴嬭瘯鍛煎彨瀹㈡湇鍔熻兘 */ - + uni.showLoading({ + title: '鍔犺浇涓�...' + }); wx.request({ - url: `https://api.weixin.qq.com/sns/jscode2session?appid=wx30f254cbb0b90b3c&secret=938a068410796cda21e5e03b9435cdbf&js_code=${this.wxcode}&grant_type=authorization_code`, + url: `https://api.weixin.qq.com/sns/jscode2session?appid=wx4a62fc1684c429a9&secret=ee90afe376cdcec2fdd947c0a4db961a&js_code=${code}&grant_type=authorization_code`, success(res) { - let id = res.data.openid; - uni.setStorageSync('openid', id); + uni.setStorageSync('openid', res.data.openid); uni.showToast({ title: '鎴愬姛鑾峰彇娴嬭瘯openid', icon: 'none' }); } }); - this.loginPopupShow = false + this.$nextTick(() => { + apiLoginWx({ code: uni.getStorageSync('openid') }).then(res => { + if (res.code != 1) { + this.$u.toast('鎭枩鎮紝鐧诲綍鎴愬姛锛�'); + // 鐧婚檰鎴愬姛锛屽瓨鍌ㄧ浉鍏充俊鎭� + setToken(res.access_token); + setRefreshToken(res.refresh_token); + setUsernameKey(res.username); + //鏌ヨ鐢ㄦ埛璇︾粏淇℃伅骞跺偍瀛� + this.$reqGet('getUserEntity').then(res => { + this.setUserTabbar(res.data.type); + uni.setStorageSync('roleType', res.data.type); + setCustomerId(res.data.customerid); + uni.hideLoading(); + //璺宠浆椤甸潰 + this.$nextTick(() => { + redirectHome(); + }); + }); + } else { + this.$u.toast(res.msg); + this.bindWxModelShow = true; + } + }); + }); + this.loginPopupShow = false; + }, + bindWxConfirm() { + uni.navigateTo({ + url: `/pages/login/wxLogin?code=${uni.getStorageSync('openid')}` + }); + this.bindWxModelShow = false; + }, + bindWxCancel() { + this.bindWxModelShow = false; }, // 寮瑰嚭灞傛椂闂� closePopup() { -- Gitblit v1.9.1