From f8867b8df117d1ac0f1311970994e15059c3da03 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期四, 05 九月 2024 15:57:36 +0800
Subject: [PATCH] add 兼容扫码问题
---
pages/login/supplier-login.vue | 335 +++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 282 insertions(+), 53 deletions(-)
diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue
index 6e36103..b9a78cd 100644
--- a/pages/login/supplier-login.vue
+++ b/pages/login/supplier-login.vue
@@ -1,5 +1,5 @@
<template>
- <view class="main-container login-container img100 relative" style="margin-top: 0rpx;">
+ <view class="main-container login-container img100 relative" style="margin-top: 0rpx;min-height: 100vh;">
<!-- background-image:url('@/static/images/supplier/login/bg.png') -->
<image class="component-bg"
@@ -46,6 +46,43 @@
</view>
+ <view class="flex flex-wrap-normal" v-if="true">
+ <view :style="{'margin-top': '24rpx','margin-right': '12rpx','font-size':'24rpx'}"
+ @click="protocal=!protocal" class="component-radio" :class="[protocal?'cur':'']">
+
+ </view>
+ <!-- /pages/help/content?id=新手帮助 -->
+ <!-- 用户协议,隐私政策、卖家入驻协议、合伙人入驻协议 -->
+
+ <!-- #ifdef PUB_PARTNER -->
+ <view class="topic-gray">
+ 请仔细阅读<span class="t-red" @click="goto('/pages/help/content?id=用户协议',false)">《用户协议》</span>、
+ <span class="t-red" @click="goto('/pages/help/content?id=隐私政策',false)">《隐私政策》</span>
+ 、<span class="t-red" @click="goto('/pages/help/content?id=合伙人入驻协议',false)">《合伙人入驻协议》</span>
+ 如您同意该指引,请勾选开始使用本小程序
+ </view>
+ <!-- #endif -->
+ <!-- #ifdef PUB_SUPPLIER -->
+ <view class="topic-gray">
+ 请仔细阅读<span class="t-red" @click="goto('/pages/help/content?id=用户协议',false)">《用户协议》</span>、
+ <span class="t-red" @click="goto('/pages/help/content?id=隐私政策',false)">《隐私政策》</span>
+ 、<span class="t-red" @click="goto('/pages/help/content?id=卖家入驻协议',false)">《卖家入驻协议》</span>
+ 如您同意该指引,请勾选开始使用本小程序
+ </view>
+ <!-- #endif -->
+ <!-- #ifdef PUB_CUSTOMER -->
+ <view class="topic-gray">
+ 请仔细阅读<span class="t-red" @click="goto('/pages/help/content?id=用户协议',false)">《用户协议》</span>和
+ <span class="t-red" @click="goto('/pages/help/content?id=隐私政策',false)">《隐私政策》</span>
+ 如您同意该指引,请勾选开始使用本小程序
+ </view>
+ <!-- #endif -->
+
+ </view>
+
+
+
+
<button @tap="login()" class="bottom-button">登 录</button>
@@ -58,7 +95,9 @@
<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="()=>{
@@ -76,74 +115,226 @@
</form>
</view>
+ <!-- <view v-if="optionsStr">
+ {{optionsStr}}
+ </view> -->
</view>
</view>
</template>
<script>
export default {
- onLoad(options) {
+ async onLoad(options) {
+ this.source = options.source || ''
+ this.sharePartnerUserId = options.sharePartnerUserId || ''
// #ifdef PUB_CUSTOMER
- if (options.partnerUserId) {
+ 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 || options.scene) {
+ //说明是特殊小程序二维码扫码跳转的
+ var keyvalues = decodeURIComponent(options.query&&options.query.scene || options.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(() => {
- tmp.$message.hideLoading()
- if (tmp.currentInfo.id || tmp.$storage.getItem('token')) {
- //这种已经登录的
- //确定是注册绑定还是重新绑定
- var t = {
- title: '提示,您已登录,是否退出并注册绑定合伙人',
- content: '',
- showCancel: true,
- cancelText: '使用当前账号绑定合伙人',
- cancelColor: '#000000',
- confirmText: '退出当前账号并注册、绑定',
- confirmColor: '#20613D'
- }
- uni.showModal({
- ...t,
- success: (res) => {
- if (res.confirm) {
- //清空登录信息,
- this.$store.commit('updateLogin', false)
+ 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.navigateTo({
- url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
+ uni.reLaunch({
+ url: '/pages/home/home'
})
- }, 200)
- }
- if (res.cancel) {
- if (!tmp.currentInfo.customer) {
- tmp.$message.showToast('您尚未完善信息无法绑定')
+ }, 500)
+ return
+ } else {
+ if (tmp.currentInfo.customerDTO
+ .partnerId) {
+ tmp.$message.showToast(
+ '您已绑定,请联系客服解除绑定')
+ setTimeout(() => {
+ uni.reLaunch({
+ url: '/pages/home/home'
+ })
+ }, 500)
return
} else {
- if (tmp.currentInfo.customer.partnerId) {
- tmp.$message.showToast('您已绑定,请联系客服解除绑定')
- return
- } else {
- //前往绑定页面
- uni.reLaunch({
- url: `/pages/user/supplier-user?partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
+ //前往绑定页面
+ //直接绑定
+ //调用接口绑定
+ 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)
+
}
+
}
}
- }
- })
+ })
- } else {
- //退出登录了,或者失效了
- uni.navigateTo({
- url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
- })
+
+
+ //这种已经登录的
+ //确定是注册绑定还是重新绑定
+ // 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: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
+ url: `/pages/login/supplier-reg?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}`
})
}
@@ -152,8 +343,31 @@
// #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: '',
@@ -162,6 +376,8 @@
phoneNumber: '',
smsCode: '',
+ source: '', //来源
+ sharePartnerUserId: '', //分享跳转登录的id
checked: false,
loginType: 'pwd', //pwd和code,密码和验证码登录
@@ -169,7 +385,8 @@
getCodeText: '获取验证码',
getCodeBtnColor: "#20613D",
getCodeisWaiting: false,
- Timer: undefined,
+ Timer: undefined,
+ protocal:false,
// #ifdef PUB_SUPPLIER
apitype: 'loginSupplier',
// #endif
@@ -246,7 +463,7 @@
}, 1000)
},
toHome() {
- uni.redirectTo({
+ uni.reLaunch({
url: '/pages/home/home'
})
},
@@ -262,21 +479,31 @@
})
// #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) {
this.pcfvalue = e.detail.value[0]
},
- async login() {
+ async login() {
+ if(!this.protocal){
+ this.$message.showToast('请同意用户协议')
+ return
+ }
uni.showLoading({
title: '登陆中'
});
@@ -342,6 +569,8 @@
// uni.navigateBack();
// }, 1000);
+
+
} else {
// uni.showToast({
// title: '登录失败!',
--
Gitblit v1.9.3