From 802290838fd05c7236dae780900b4bacb20c82df Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期五, 02 八月 2024 16:27:26 +0800
Subject: [PATCH] add 二维码格式

---
 pages/login/supplier-login.vue |  256 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 196 insertions(+), 60 deletions(-)

diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue
index 5d7d5e5..6e36103 100644
--- a/pages/login/supplier-login.vue
+++ b/pages/login/supplier-login.vue
@@ -11,70 +11,152 @@
 				<form class="cl">
 					<view class="t-a titles-top">
 						<view class="title-1">HELLO</view>
-						<view class="title-2">欢迎登录<span class="title-3">花满芜</span></view>
-					</view>
-					<view class="t-a input" v-if="loginType=='pwd'">
-						<input type="text" name="userName" placeholder="请输入账号" v-model="userName" />
-					</view>
-					<view class="t-a input" v-if="loginType=='pwd'">
-						<input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" />
-					</view>
-					<view class="t-a input" v-if="loginType=='code'">
-
-
-						<input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" />
-						<view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()">
-							{{getCodeText}}
+						<view class="title-2">欢迎登录<span class="title-3">花满芫</span>
+							<!-- #ifdef PUB_SUPPLIER -->
+							<span>供应商管理平台</span>
+							<!-- #endif -->
+							<!-- #ifdef PUB_PARTNER -->
+							<span>合伙人管理平台</span>
+							<!-- #endif -->
 						</view>
 					</view>
+					<view class="t-a input form-input" v-if="loginType=='pwd'">
+						<!-- <input type="text" name="userName" placeholder="请输入账号" v-model="userName" /> -->
+						<u-input placeholder="请输入账号" :border="false" v-model="userName"></u-input>
 
-
-					<view class="t-a input" v-if="loginType=='code'">
-						<input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" />
 					</view>
+					<view class="t-a input form-input" v-if="loginType=='pwd'">
+						<u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input>
+					</view>
+					<view class="t-a input form-input" v-if="loginType=='code'">
+
+
+						<u-input placeholder="请输入手机号" :border="false" v-model="phoneNumber">
+							<template slot="suffix">
+								<view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()">
+									{{ getCodeText }}
+								</view>
+							</template>
+						</u-input>
+					</view>
+
+
+					<view class="t-a form-input" v-if="loginType=='code'">
+						<u-input placeholder="请输入手机验证码" :border="false" v-model="smsCode"></u-input>
+
+					</view>
+
 
 					<button @tap="login()" class="bottom-button">登 录</button>
 
 					<view class="flex">
-						<view class="topic-font" v-if="loginType=='pwd'" @click="loginType='code'">手机验证码登录</view>
-						<view class="topic-font" v-if="loginType=='code'" @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" @click="toReg">前往注册</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>
+						<!-- #endif -->
+						<!-- #ifdef PUB_PARTNER -->
+						<view class="topic-font m-l-a m-r-0" @click="()=>{
+							if(apitype==='loginPartner'){
+								apitype = 'loginAdmin'
+								loginType = 'pwd'
+							}else{
+								apitype = 'loginPartner'
+							}
+						}">
+							切换为{{apitype!=='loginPartner'?'合伙人':'质检人员'}}登录
+						</view>
+						<!-- #endif -->
 					</view>
+
 				</form>
 			</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 ''
-					// return 'loginPartner'
+		onLoad(options) {
+			// #ifdef PUB_CUSTOMER
+			if (options.partnerUserId) {
+				if (this.$storage.getItem('token')) {
+					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(() => {
+											uni.navigateTo({
+												url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
+											})
+										}, 200)
+									}
+									if (res.cancel) {
+										if (!tmp.currentInfo.customer) {
+											tmp.$message.showToast('您尚未完善信息无法绑定')
+											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}`
+												})
+											}
+										}
+									}
+								}
+							})
+
+						} else {
+							//退出登录了,或者失效了
+							uni.navigateTo({
+								url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
+							})
+						}
+					}, 2000)
+
+				} else {
+					uni.navigateTo({
+						url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${options.partnerUserId}&partnerUserName=${options.partnerUserName}`
+					})
 				}
-			},
+
+
+			}
+			// #endif
+
 		},
 		data() {
 			return {
 				openId: '-1',
-				userName: 'gzm',
-				password: '123456',
+				userName: '',
+				password: '',
 				// userName: '',
 				// password: '',
 
@@ -87,11 +169,22 @@
 				getCodeText: '获取验证码',
 				getCodeBtnColor: "#20613D",
 				getCodeisWaiting: false,
-				Timer: undefined
+				Timer: undefined,
+				// #ifdef PUB_SUPPLIER
+				apitype: 'loginSupplier',
+				// #endif
+				// #ifdef PUB_PARTNER
+				apitype: 'loginPartner',
+				// #endif
+				// #ifdef PUB_CUSTOMER
+				apitype: 'loginCustomer',
+				// #endif
+				// return 'loginPartner'
 			};
 		},
 		methods: {
 			async getCode() {
+				console.log('getCode')
 				uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。
 				if (this.getCodeisWaiting) {
 					return;
@@ -110,7 +203,7 @@
 				} = await this.$http.request('post', '/api/sms/send/code', {
 					data: {
 						tel: this.phoneNumber,
-						userType: 'supplier'
+						userType: this.apitype.replace("login", "").toLowerCase()
 					}
 				})
 				if (code == 0) {
@@ -119,6 +212,10 @@
 						icon: "none"
 					});
 					this.setTimer(); //调用定时器方法
+				} else {
+					this.getCodeText = "获取验证码" //发送验证码
+					this.getCodeisWaiting = false;
+					this.getCodeBtnColor = "#20613D";
 				}
 				// setTimeout(() => {
 				// 	uni.showToast({
@@ -148,14 +245,33 @@
 					holdTime--;
 				}, 1000)
 			},
+			toHome() {
+				uni.redirectTo({
+					url: '/pages/home/home'
+				})
+			},
 			toReg() {
 				// uni.switchTab({
 				// 	url: '/pages/index/index'
 				// })
-				uni.redirectTo({
-					url: '/sub_pages/supplier/supplier-reg/supplier-reg'
+				var addstr = ''
+				// #ifdef PUB_PARTNER
+				addstr = '?source=step'
+				uni.navigateTo({
+					url: '/sub_pages/partner/partner-info/partner-info' + addstr
 				})
-
+				// #endif
+				// #ifdef PUB_SUPPLIER
+				uni.redirectTo({
+					url: '/pages/login/supplier-reg'
+				})
+				// #endif
+				// #ifdef PUB_CUSTOMER
+				addstr = '?source=step'
+				uni.navigateTo({
+					url: '/sub_pages/customer/customer-info/customer-info' + addstr
+				})
+				// #endif
 			},
 			changeAll(e) {
 				this.pcfvalue = e.detail.value[0]
@@ -180,9 +296,10 @@
 						});
 						return;
 					}
+					that.phoneNumber = ''
 				}
 				if (this.loginType == 'code') {
-					if (!that.tel) {
+					if (!that.phoneNumber) {
 						uni.showToast({
 							title: '请输入手机号',
 							icon: 'none'
@@ -214,7 +331,7 @@
 				const resp = await this.$store.dispatch(this.apitype, post);
 				// uni.hideLoading()
 
-				if (resp.code == 0) {
+				if (resp.code === 0) {
 
 					// myCache.cache("userToken", res.data.accessToken)
 					// let userRes = await gzmzApi.getMemberInfo();
@@ -226,10 +343,10 @@
 					// }, 1000);
 
 				} else {
-					uni.showToast({
-						title: '登录失败!',
-						icon: 'none'
-					});
+					// uni.showToast({
+					// 	title: '登录失败!',
+					// 	icon: 'none'
+					// });
 					return;
 				}
 
@@ -242,7 +359,26 @@
 		}
 	};
 </script>
+<style lang="scss" scoped>
+	.form-input {
+		background-color: #f8f7fc;
+		border-radius: 50rpx;
+		margin-bottom: 50rpx;
+		border: 1px solid #e9e9e9;
 
+		/deep/ .u-input {
+			padding-left: 60rpx !important;
+			padding-right: 40rpx !important;
+		}
+
+		/deep/ input {
+			height: 70rpx;
+			line-height: 70rpx;
+
+		}
+
+	}
+</style>
 <style lang="scss" scoped>
 	@import './login.scss';
 
@@ -303,7 +439,7 @@
 	}
 
 	.t-login input {
-		padding: 0 20rpx 0 120rpx;
+		padding: 0 20rpx 0 60rpx;
 		height: 90rpx;
 		line-height: 90rpx;
 		margin-bottom: 50rpx;
@@ -317,9 +453,9 @@
 		position: relative;
 
 		.get-code {
-			position: absolute;
-			right: 40rpx;
-			top: 25rpx;
+			// position: absolute;
+			// right: 40rpx;
+			// top: 25rpx;
 		}
 	}
 
@@ -404,9 +540,9 @@
 		font-size: 27rpx;
 	}
 
-	.t-login .uni-input-placeholder {
-		color: #000;
-	}
+	// .t-login .uni-input-placeholder {
+	// 	color: #000;
+	// }
 
 	.cl {
 		zoom: 1;

--
Gitblit v1.9.3