From 30cb0df99ada7cffda1bd5b97c52ea3e45c4cda7 Mon Sep 17 00:00:00 2001 From: xuxy <1059738716@qq.com> Date: 星期一, 12 八月 2024 22:05:41 +0800 Subject: [PATCH] update --- pages/login/supplier-login.vue | 299 +++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 268 insertions(+), 31 deletions(-) diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue index b49218b..dcb669d 100644 --- a/pages/login/supplier-login.vue +++ b/pages/login/supplier-login.vue @@ -50,18 +50,22 @@ <button @tap="login()" class="bottom-button">登 录</button> <view class="flex"> - <view class="topic-font" v-if="loginType=='pwd'&&apitype!=='loginAdmin'" @click="loginType='code'">手机验证码登录</view> - <view class="topic-font" v-if="loginType=='code'&&apitype!=='loginAdmin'" @click="loginType='pwd'">账号密码登录</view> + <view class="topic-font" v-if="loginType=='pwd'&&apitype!=='loginAdmin'" + @click="loginType='code'">手机验证码登录</view> + <view class="topic-font" v-if="loginType=='code'&&apitype!=='loginAdmin'" + @click="loginType='pwd'">账号密码登录</view> <view class="topic-font m-l-a m-r-0" v-if="apitype!=='loginAdmin'" @click="toReg">前往注册</view> <!-- #ifdef PUB_CUSTOMER --> - <view class="topic-font m-l-a m-r-0" @click="toHome">返回首页</view> + <view class="topic-font m-l-a m-r-0" @click="toHome" v-if="!source">返回首页</view> + <view class="topic-font m-l-a m-r-0" @click="backpage" v-if="source==='jump'">返回上一页</view> + <!-- #endif --> <!-- #ifdef PUB_PARTNER --> <view class="topic-font m-l-a m-r-0" @click="()=>{ if(apitype==='loginPartner'){ - apitype = 'loginAdmin' + apitype = 'loginAdmin' loginType = 'pwd' }else{ apitype = 'loginPartner' @@ -74,34 +78,257 @@ </form> </view> + <!-- <view v-if="optionsStr"> + {{optionsStr}} + </view> --> </view> </view> </template> <script> - // import util from '@/utils/util.js' - // import gzmzApi from '@/api/gzmzApi.js' - // import myCache from '@/utils/myCache.js' export default { - // props: { - // // apitype: 'loginSupplier', - // apitype: { - // type: String, - // default () { - // // #ifdef PUB_SUPPLIER - // return 'loginSupplier' - // // #endif - // // #ifdef PUB_PARTNER - // return 'loginPartner' - // // #endif - // // #ifdef PUB_CUSTOMER - // return 'loginCustomer' - // // #endif - // // return 'loginPartner' - // } - // }, - // }, + async onLoad(options) { + this.source = options.source || '' + this.sharePartnerUserId = options.sharePartnerUserId || '' + // #ifdef PUB_CUSTOMER + var query = options.q && decodeURIComponent(options.q) || '' + var querydto = {} + if (query) { + try { + var keyvalues = query.split("?")[1].split("&") + for (var item of keyvalues) { + var tarr = item.split("=") + querydto[tarr[0]] = tarr[1] + } + } catch (e) { + console.error('error', e) + } + } + try { + if (!querydto.partnerUserId) { + if (options.query && options.query.scene) { + //说明是特殊小程序二维码扫码跳转的 + var keyvalues = decodeURIComponent(options.query.scene).split("&") + for (var item of keyvalues) { + var tarr = item.split("=") + querydto[tarr[0]] = tarr[1] + } + } + } + + } catch (e) { + console.error('error2', e) + } + + + console.log('options query111', options, querydto) + // this.optionsStr = JSON.stringify(options) || '' + if (querydto.partnerUserId) { + //通过接口获取名称,兼容,url上不能放中文的情况 + + + + if (this.$storage.getItem('token')) { + console.log('to login 1') + this.$message.showLoading() + //稍微等一会,避免currentInfo还在同步 + let tmp = this + setTimeout(async () => { + try { + tmp.$message.hideLoading() + if (tmp.currentInfo && tmp.currentInfo.id || tmp.$storage.getItem('token')) { + await tmp.$store.dispatch('getCurrentInfo'); + //已经登录的直接判断,并且绑定 + tmp.$nextTick(async () => { + if (!tmp.currentInfo.customerDTO) { + tmp.$message.showToast( + '您尚未完善信息无法绑定') + setTimeout(() => { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, 500) + return + } else { + if (tmp.currentInfo.customerDTO + .partnerId) { + tmp.$message.showToast( + '您已绑定,请联系客服解除绑定') + setTimeout(() => { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, 500) + return + } else { + //前往绑定页面 + //直接绑定 + //调用接口绑定 + tmp.$message.showLoading() + const { + code, + data + } = await tmp.$http.request('post', + '/api/customer/bind/partner', { + data: { + partnerUserId: querydto + .partnerUserId + } + }) + tmp.$message.hideLoading() + if (code == 0) { + tmp.$message.showToast(`绑定合伙人成功`) + await tmp.$store.dispatch('getCurrentInfo') + //跳转到个人页面 + setTimeout(() => { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, 500) + + } + + } + } + }) + + + + //这种已经登录的 + //确定是注册绑定还是重新绑定 + // tmp.$nextTick(() => { + // var tt = { + // title: '提示:您已登录,是直接用该账号绑定,还是退出并注册新账号绑定合伙人', + // content: '', + // showCancel: true, + // cancelText: '直接绑定', + // cancelColor: '#000000', + // confirmText: '退出注册', + // confirmColor: '#20613D' + // } + // uni.showModal({ + // ...tt, + // success: async (res) => { + + // if (res.confirm) { + // //清空登录信息, + // this.$store.commit('updateLogin', + // false) + // setTimeout(() => { + // uni.navigateTo({ + // url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + // }, 200) + // } + // if (res.cancel) { + // if (!tmp.currentInfo.customerDTO) { + // tmp.$message.showToast( + // '您尚未完善信息无法绑定') + // return + // } else { + // if (tmp.currentInfo.customerDTO + // .partnerId) { + // tmp.$message.showToast( + // '您已绑定,请联系客服解除绑定') + // return + // } else { + // //前往绑定页面 + // uni.reLaunch({ + // url: `/pages/user/supplier-user?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + // } + // } + // } + // }, + // fail(res) { + // console.log('res uni model', res) + // } + // }) + + // }) + + + } else { + console.log('to login 3') + //退出登录了,或者失效了 + // uni.navigateTo({ + // url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + if (!querydto.partnerUserName) { + tmp.$message.showLoading() + const resname = await tmp.$http.request('get', + '/api/customer/partner/name', { + params: { + id: querydto.partnerUserId + } + }) + tmp.$message.hideLoading() + if (resname.code == 0) { + querydto.partnerUserName = resname.data || '' + } + + } + uni.navigateTo({ + url: `/pages/login/supplier-reg?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + }) + } + } catch (e2) { + console.log('to login error', e2) + } + }, 2000) + + } else { + if (!querydto.partnerUserName) { + this.$message.showLoading() + const resname = await this.$http.request('get', '/api/customer/partner/name', { + params: { + id: querydto.partnerUserId + } + }) + this.$message.hideLoading() + if (resname.code == 0) { + querydto.partnerUserName = resname.data || '' + } + + } + // console.log('to login 2', + // `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // ) + // uni.navigateTo({ + // url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + uni.navigateTo({ + url: `/pages/login/supplier-reg?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + }) + } + + + } + // #endif + + }, + onShareAppMessage() { + let that = this; + var name = that.currentInfo.customerDTO&&that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO&&that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO&&that.currentInfo.partnerDTO.name || '' + var url = + `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + onShareTimeline() { + let that = this; + var name = that.currentInfo.customerDTO&&that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO&&that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO&&that.currentInfo.partnerDTO.name || '' + var url = + `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, data() { return { + optionsStr: '', openId: '-1', userName: '', password: '', @@ -110,6 +337,8 @@ phoneNumber: '', smsCode: '', + source: '', //来源 + sharePartnerUserId: '', //分享跳转登录的id checked: false, loginType: 'pwd', //pwd和code,密码和验证码登录 @@ -194,7 +423,7 @@ }, 1000) }, toHome() { - uni.redirectTo({ + uni.reLaunch({ url: '/pages/home/home' }) }, @@ -210,15 +439,21 @@ }) // #endif // #ifdef PUB_SUPPLIER - uni.redirectTo({ + uni.reLaunch({ url: '/pages/login/supplier-reg' }) // #endif // #ifdef PUB_CUSTOMER - addstr = '?source=step' - uni.navigateTo({ - url: '/sub_pages/customer/customer-info/customer-info' + addstr + // addstr = '?source=step' + // uni.navigateTo({ + // url: '/sub_pages/customer/customer-info/customer-info' + addstr + // }) + uni.reLaunch({ + url: '/pages/login/supplier-reg' }) + // todo 如果是有分享id的,可能需要提前进行绑定 + + // #endif }, changeAll(e) { @@ -243,7 +478,7 @@ icon: 'none' }); return; - } + } that.phoneNumber = '' } if (this.loginType == 'code') { @@ -290,6 +525,8 @@ // uni.navigateBack(); // }, 1000); + + } else { // uni.showToast({ // title: '登录失败!', -- Gitblit v1.9.3