From d8ad0c1805b0701afadd069c79950edde490d5c9 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期一, 08 七月 2024 17:17:16 +0800
Subject: [PATCH] update 花店小程序

---
 pages/login/supplier-login.vue |  839 ++++++++++++++++++++++++++++++-----------------------------
 1 files changed, 421 insertions(+), 418 deletions(-)

diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue
index 51d8a60..5d7d5e5 100644
--- a/pages/login/supplier-login.vue
+++ b/pages/login/supplier-login.vue
@@ -1,419 +1,422 @@
-<template>
-	<view class="main-container login-container img100 relative" style="margin-top: 0rpx;">
-		<!-- background-image:url('@/static/images/supplier/login/bg.png') -->
-
-		<image class="component-bg"
-			src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png"
-			mode="scaleToFill" />
-		<view class="t-login top-bg">
-			<view class="nav-title">登录</view>
-			<view class="login">
-				<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>
-					</view>
-
-
-					<view class="t-a input" v-if="loginType=='code'">
-						<input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" />
-					</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 m-l-a m-r-0" @click="toReg">前往注册</view>
-					</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					
-					return ''
-					// return 'loginPartner'
-				}
-			},
-		},
-		data() {
-			return {
-				openId: '-1',
-				userName: 'gzm',
-				password: '123456',
-				// userName: '',
-				// password: '',
-
-				phoneNumber: '',
-				smsCode: '',
-
-				checked: false,
-				loginType: 'pwd', //pwd和code,密码和验证码登录
-				pcfvalue: undefined,
-				getCodeText: '获取验证码',
-				getCodeBtnColor: "#20613D",
-				getCodeisWaiting: false,
-				Timer: undefined
-			};
-		},
-		methods: {
-			async getCode() {
-				uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。
-				if (this.getCodeisWaiting) {
-					return;
-				}
-				if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //校验手机号码是否有误
-					this.$message.showToast('请填写正确手机号码')
-					return false;
-				}
-				this.getCodeText = "发送中..." //发送验证码
-				this.getCodeisWaiting = true;
-				this.getCodeBtnColor = "#000" //追加样式,修改颜色
-				//示例用定时器模拟请求效果
-				//setTimeout(()用于在指定的毫秒数后调用函数或计算表达式
-				const {
-					code
-				} = await this.$http.request('post', '/api/sms/send/code', {
-					data: {
-						tel: this.phoneNumber,
-						userType: 'supplier'
-					}
-				})
-				if (code == 0) {
-					uni.showToast({
-						title: '验证码已发送',
-						icon: "none"
-					});
-					this.setTimer(); //调用定时器方法
-				}
-				// setTimeout(() => {
-				// 	uni.showToast({
-				// 		title: '验证码已发送',
-				// 		icon: "none"
-				// 	}); //弹出提示框
-				// 	//示例默认1234,生产中请删除这一句。
-				// 	// this.code = '1234'; //发送验证码,进行填入
-				// 	this.setTimer(); //调用定时器方法
-				// }, 1000)
-			},
-			//setTimer: 需要每隔一段时间执行一件事的的时候就需要使用SetTimer函数
-			setTimer() {
-				let holdTime = 60; //定义变量并赋值
-				this.getCodeText = "重新获取(60)"
-				//setInterval()是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。
-				//setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。
-				this.Timer = setInterval(() => {
-					if (holdTime <= 0) {
-						this.getCodeisWaiting = false;
-						this.getCodeBtnColor = "#20613D";
-						this.getCodeText = "获取验证码"
-						clearInterval(this.Timer); //清除该函数
-						return; //返回前面
-					}
-					this.getCodeText = "重新获取(" + holdTime + ")"
-					holdTime--;
-				}, 1000)
-			},
-			toReg() {
-				// uni.switchTab({
-				// 	url: '/pages/index/index'
-				// })
-				uni.redirectTo({
-					url: '/sub_pages/supplier/supplier-reg/supplier-reg'
-				})
-
-			},
-			changeAll(e) {
-				this.pcfvalue = e.detail.value[0]
-			},
-			async login() {
-				uni.showLoading({
-					title: '登陆中'
-				});
-				var that = this;
-				if (this.loginType == 'pwd') {
-					if (!that.userName) {
-						uni.showToast({
-							title: '请输入用户名',
-							icon: 'none'
-						});
-						return;
-					}
-					if (!that.password) {
-						uni.showToast({
-							title: '请输入密码',
-							icon: 'none'
-						});
-						return;
-					}
-				}
-				if (this.loginType == 'code') {
-					if (!that.tel) {
-						uni.showToast({
-							title: '请输入手机号',
-							icon: 'none'
-						});
-						return;
-					}
-					if (!that.smsCode) {
-						uni.showToast({
-							title: '请输入手机验证码',
-							icon: 'none'
-						});
-						return;
-					}
-				}
-				// if (this.pcfvalue == undefined) {
-				// 	util.showMyToast('必须勾选《用户服务协议》及《隐私政策》');
-				// 	return;
-				// }
-				let post = {
-					username: this.userName,
-					password: this.password,
-					tel: this.phoneNumber,
-					smsCode: this.smsCode
-					// openId: '123456789'
-				}
-				// const {
-				// code
-				// } = await this.$http.request('get', '/api/login/admin')
-				const resp = await this.$store.dispatch(this.apitype, post);
-				// uni.hideLoading()
-
-				if (resp.code == 0) {
-
-					// myCache.cache("userToken", res.data.accessToken)
-					// let userRes = await gzmzApi.getMemberInfo();
-					// if (userRes.status) {
-					// 	myCache.cache("userInfo", JSON.stringify(userRes.data))
-					// }
-					// setTimeout(() => {
-					// 	uni.navigateBack();
-					// }, 1000);
-
-				} else {
-					uni.showToast({
-						title: '登录失败!',
-						icon: 'none'
-					});
-					return;
-				}
-
-			},
-			tc1(id) {
-				uni.navigateTo({
-					url: '/pages/users/xieyi?id=' + id,
-				});
-			}
-		}
-	};
-</script>
-
-<style lang="scss" scoped>
-	@import './login.scss';
-
-	.main-container {
-		margin: 20px 0;
-	}
-
-	.img-a {
-		position: absolute;
-		width: 100%;
-		top: -150rpx;
-		right: 0;
-	}
-
-	.img-b {
-		position: absolute;
-		width: 50%;
-		bottom: 0;
-		left: -120rpx;
-	}
-
-	.to-home {
-		margin-top: 30rpx;
-		font-size: 30rpx;
-		color: #5af;
-		display: flex;
-		flex-direction: row-reverse;
-	}
-
-	.t-login {
-		width: 100%;
-		margin: 0 auto;
-		font-size: 28rpx;
-		color: #000;
-	}
-
-	.t-login .bg {
-		width: 100%;
-		position: relative;
-	}
-
-	.t-login .login {
-		width: 650rpx;
-		margin: 60rpx auto;
-		margin-top: 0rpx;
-		font-size: 28rpx;
-		color: #000;
-	}
-
-	.t-login button {
-		font-size: 28rpx;
-		background: #5677fc;
-		color: #fff;
-		height: 90rpx;
-		line-height: 90rpx;
-		border-radius: 50rpx;
-		box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2);
-	}
-
-	.t-login input {
-		padding: 0 20rpx 0 120rpx;
-		height: 90rpx;
-		line-height: 90rpx;
-		margin-bottom: 50rpx;
-		background: #f8f7fc;
-		border: 1px solid #e9e9e9;
-		font-size: 28rpx;
-		border-radius: 50rpx;
-	}
-
-	.t-login .t-a {
-		position: relative;
-
-		.get-code {
-			position: absolute;
-			right: 40rpx;
-			top: 25rpx;
-		}
-	}
-
-	.t-login .t-a .icon {
-		width: 40rpx;
-		height: 40rpx;
-		position: absolute;
-		left: 24rpx;
-		top: 14rpx;
-		margin-right: 20rpx;
-	}
-
-	.t-login .t-a .line {
-		width: 2rpx;
-		height: 40rpx;
-		background-color: #dedede;
-		position: absolute;
-		top: 28rpx;
-		left: 98rpx;
-	}
-
-	.t-login .t-b {
-		text-align: left;
-		font-size: 46rpx;
-		color: #000;
-		padding: 300rpx 0 30rpx 0;
-		font-weight: bold;
-	}
-
-	.t-login .t-b2 {
-		text-align: left;
-		font-size: 32rpx;
-		color: #aaaaaa;
-		padding: 0rpx 0 120rpx 0;
-	}
-
-	.t-login .t-c {
-		position: absolute;
-		right: 22rpx;
-		top: 22rpx;
-		background: #5677fc;
-		color: #fff;
-		font-size: 24rpx;
-		border-radius: 50rpx;
-		height: 50rpx;
-		line-height: 50rpx;
-		padding: 0 25rpx;
-		z-index: 999;
-	}
-
-	.t-login .t-d {
-		text-align: center;
-		color: #999;
-		margin: 80rpx 0;
-	}
-
-	.t-login .t-e {
-		text-align: center;
-		width: 250rpx;
-		margin: 80rpx auto 0;
-	}
-
-	.t-login .t-g {
-		float: left;
-		width: 50%;
-	}
-
-	.t-login .t-e image {
-		width: 50rpx;
-		height: 50rpx;
-	}
-
-	.t-login .t-f {
-		text-align: center;
-		margin: 200rpx 0 0 0;
-		color: #666;
-	}
-
-	.t-login .t-f text {
-		margin-left: 20rpx;
-		color: #aaaaaa;
-		font-size: 27rpx;
-	}
-
-	.t-login .uni-input-placeholder {
-		color: #000;
-	}
-
-	.cl {
-		zoom: 1;
-	}
-
-	.cl:after {
-		clear: both;
-		display: block;
-		visibility: hidden;
-		height: 0;
-		content: '\20';
-	}
+<template>
+	<view class="main-container login-container img100 relative" style="margin-top: 0rpx;">
+		<!-- background-image:url('@/static/images/supplier/login/bg.png') -->
+
+		<image class="component-bg"
+			src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png"
+			mode="scaleToFill" />
+		<view class="t-login top-bg">
+			<view class="nav-title">登录</view>
+			<view class="login">
+				<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>
+					</view>
+
+
+					<view class="t-a input" v-if="loginType=='code'">
+						<input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" />
+					</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 m-l-a m-r-0" @click="toReg">前往注册</view>
+					</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'
+				}
+			},
+		},
+		data() {
+			return {
+				openId: '-1',
+				userName: 'gzm',
+				password: '123456',
+				// userName: '',
+				// password: '',
+
+				phoneNumber: '',
+				smsCode: '',
+
+				checked: false,
+				loginType: 'pwd', //pwd和code,密码和验证码登录
+				pcfvalue: undefined,
+				getCodeText: '获取验证码',
+				getCodeBtnColor: "#20613D",
+				getCodeisWaiting: false,
+				Timer: undefined
+			};
+		},
+		methods: {
+			async getCode() {
+				uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。
+				if (this.getCodeisWaiting) {
+					return;
+				}
+				if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //校验手机号码是否有误
+					this.$message.showToast('请填写正确手机号码')
+					return false;
+				}
+				this.getCodeText = "发送中..." //发送验证码
+				this.getCodeisWaiting = true;
+				this.getCodeBtnColor = "#000" //追加样式,修改颜色
+				//示例用定时器模拟请求效果
+				//setTimeout(()用于在指定的毫秒数后调用函数或计算表达式
+				const {
+					code
+				} = await this.$http.request('post', '/api/sms/send/code', {
+					data: {
+						tel: this.phoneNumber,
+						userType: 'supplier'
+					}
+				})
+				if (code == 0) {
+					uni.showToast({
+						title: '验证码已发送',
+						icon: "none"
+					});
+					this.setTimer(); //调用定时器方法
+				}
+				// setTimeout(() => {
+				// 	uni.showToast({
+				// 		title: '验证码已发送',
+				// 		icon: "none"
+				// 	}); //弹出提示框
+				// 	//示例默认1234,生产中请删除这一句。
+				// 	// this.code = '1234'; //发送验证码,进行填入
+				// 	this.setTimer(); //调用定时器方法
+				// }, 1000)
+			},
+			//setTimer: 需要每隔一段时间执行一件事的的时候就需要使用SetTimer函数
+			setTimer() {
+				let holdTime = 60; //定义变量并赋值
+				this.getCodeText = "重新获取(60)"
+				//setInterval()是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。
+				//setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。
+				this.Timer = setInterval(() => {
+					if (holdTime <= 0) {
+						this.getCodeisWaiting = false;
+						this.getCodeBtnColor = "#20613D";
+						this.getCodeText = "获取验证码"
+						clearInterval(this.Timer); //清除该函数
+						return; //返回前面
+					}
+					this.getCodeText = "重新获取(" + holdTime + ")"
+					holdTime--;
+				}, 1000)
+			},
+			toReg() {
+				// uni.switchTab({
+				// 	url: '/pages/index/index'
+				// })
+				uni.redirectTo({
+					url: '/sub_pages/supplier/supplier-reg/supplier-reg'
+				})
+
+			},
+			changeAll(e) {
+				this.pcfvalue = e.detail.value[0]
+			},
+			async login() {
+				uni.showLoading({
+					title: '登陆中'
+				});
+				var that = this;
+				if (this.loginType == 'pwd') {
+					if (!that.userName) {
+						uni.showToast({
+							title: '请输入用户名',
+							icon: 'none'
+						});
+						return;
+					}
+					if (!that.password) {
+						uni.showToast({
+							title: '请输入密码',
+							icon: 'none'
+						});
+						return;
+					}
+				}
+				if (this.loginType == 'code') {
+					if (!that.tel) {
+						uni.showToast({
+							title: '请输入手机号',
+							icon: 'none'
+						});
+						return;
+					}
+					if (!that.smsCode) {
+						uni.showToast({
+							title: '请输入手机验证码',
+							icon: 'none'
+						});
+						return;
+					}
+				}
+				// if (this.pcfvalue == undefined) {
+				// 	util.showMyToast('必须勾选《用户服务协议》及《隐私政策》');
+				// 	return;
+				// }
+				let post = {
+					username: this.userName,
+					password: this.password,
+					tel: this.phoneNumber,
+					smsCode: this.smsCode
+					// openId: '123456789'
+				}
+				// const {
+				// code
+				// } = await this.$http.request('get', '/api/login/admin')
+				const resp = await this.$store.dispatch(this.apitype, post);
+				// uni.hideLoading()
+
+				if (resp.code == 0) {
+
+					// myCache.cache("userToken", res.data.accessToken)
+					// let userRes = await gzmzApi.getMemberInfo();
+					// if (userRes.status) {
+					// 	myCache.cache("userInfo", JSON.stringify(userRes.data))
+					// }
+					// setTimeout(() => {
+					// 	uni.navigateBack();
+					// }, 1000);
+
+				} else {
+					uni.showToast({
+						title: '登录失败!',
+						icon: 'none'
+					});
+					return;
+				}
+
+			},
+			tc1(id) {
+				uni.navigateTo({
+					url: '/pages/users/xieyi?id=' + id,
+				});
+			}
+		}
+	};
+</script>
+
+<style lang="scss" scoped>
+	@import './login.scss';
+
+	.main-container {
+		margin: 20px 0;
+	}
+
+	.img-a {
+		position: absolute;
+		width: 100%;
+		top: -150rpx;
+		right: 0;
+	}
+
+	.img-b {
+		position: absolute;
+		width: 50%;
+		bottom: 0;
+		left: -120rpx;
+	}
+
+	.to-home {
+		margin-top: 30rpx;
+		font-size: 30rpx;
+		color: #5af;
+		display: flex;
+		flex-direction: row-reverse;
+	}
+
+	.t-login {
+		width: 100%;
+		margin: 0 auto;
+		font-size: 28rpx;
+		color: #000;
+	}
+
+	.t-login .bg {
+		width: 100%;
+		position: relative;
+	}
+
+	.t-login .login {
+		width: 650rpx;
+		margin: 60rpx auto;
+		margin-top: 0rpx;
+		font-size: 28rpx;
+		color: #000;
+	}
+
+	.t-login button {
+		font-size: 28rpx;
+		background: #5677fc;
+		color: #fff;
+		height: 90rpx;
+		line-height: 90rpx;
+		border-radius: 50rpx;
+		box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2);
+	}
+
+	.t-login input {
+		padding: 0 20rpx 0 120rpx;
+		height: 90rpx;
+		line-height: 90rpx;
+		margin-bottom: 50rpx;
+		background: #f8f7fc;
+		border: 1px solid #e9e9e9;
+		font-size: 28rpx;
+		border-radius: 50rpx;
+	}
+
+	.t-login .t-a {
+		position: relative;
+
+		.get-code {
+			position: absolute;
+			right: 40rpx;
+			top: 25rpx;
+		}
+	}
+
+	.t-login .t-a .icon {
+		width: 40rpx;
+		height: 40rpx;
+		position: absolute;
+		left: 24rpx;
+		top: 14rpx;
+		margin-right: 20rpx;
+	}
+
+	.t-login .t-a .line {
+		width: 2rpx;
+		height: 40rpx;
+		background-color: #dedede;
+		position: absolute;
+		top: 28rpx;
+		left: 98rpx;
+	}
+
+	.t-login .t-b {
+		text-align: left;
+		font-size: 46rpx;
+		color: #000;
+		padding: 300rpx 0 30rpx 0;
+		font-weight: bold;
+	}
+
+	.t-login .t-b2 {
+		text-align: left;
+		font-size: 32rpx;
+		color: #aaaaaa;
+		padding: 0rpx 0 120rpx 0;
+	}
+
+	.t-login .t-c {
+		position: absolute;
+		right: 22rpx;
+		top: 22rpx;
+		background: #5677fc;
+		color: #fff;
+		font-size: 24rpx;
+		border-radius: 50rpx;
+		height: 50rpx;
+		line-height: 50rpx;
+		padding: 0 25rpx;
+		z-index: 999;
+	}
+
+	.t-login .t-d {
+		text-align: center;
+		color: #999;
+		margin: 80rpx 0;
+	}
+
+	.t-login .t-e {
+		text-align: center;
+		width: 250rpx;
+		margin: 80rpx auto 0;
+	}
+
+	.t-login .t-g {
+		float: left;
+		width: 50%;
+	}
+
+	.t-login .t-e image {
+		width: 50rpx;
+		height: 50rpx;
+	}
+
+	.t-login .t-f {
+		text-align: center;
+		margin: 200rpx 0 0 0;
+		color: #666;
+	}
+
+	.t-login .t-f text {
+		margin-left: 20rpx;
+		color: #aaaaaa;
+		font-size: 27rpx;
+	}
+
+	.t-login .uni-input-placeholder {
+		color: #000;
+	}
+
+	.cl {
+		zoom: 1;
+	}
+
+	.cl:after {
+		clear: both;
+		display: block;
+		visibility: hidden;
+		height: 0;
+		content: '\20';
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3