<template>
	<view class="content">
		<view class="top">
		<!-- 	<view class="touxiang">
				<image src="../../static/logo.png" mode=""></image>
			</view> -->
			<view class="dalan">你好，</view>
			<view class="dalan">欢迎登陆商户端</view>
			
			<view class="box-box">
				<!-- <view class="bb-top"  v-if="shopinfo == 0" @click="shopinfo = 1">
					<view class="bb-bai">
						<text>商户登录</text>
					</view>
					<view class="bb-hui">
							<text>员工登录</text>
					</view>
				</view>
				<view class="bb-top"  v-if="shopinfo == 1" @click="shopinfo = 0">
					<view class="bb-hui">
						<text>商户登录</text>
					</view>
					<view class="bb-bai">
							<text>员工登录</text>
					</view>
				</view> -->
				<view class="bb-top"  >
					<view class="bb-bai" :class="{'shendu' : shopinfo == 0}" @click="shopinfo = 0">
						<text>商户登录</text>
					</view>
					<view class="bb-bai" :class="{'shendu' : shopinfo == 1}"  @click="shopinfo = 1">
						<text>官方登录</text>
					</view>
					<view class="bb-bai" :class="{'shendu' : shopinfo == 2}"  @click="shopinfo = 2">
						<text>员工登录</text>
					</view>
					
				</view>
				<view class="bb-baibox">
					<view class="inputs"  v-if="activeid == 0">
						<input type="text" v-model="tel" placeholder="请输入手机号">
					</view>
					<view class="inputs"  v-if="activeid == 1">
						<input type="text" v-model="tel" placeholder="请输入手机号">
					</view>
					<view class="inputs"  style="justify-content: space-between; "  v-if="activeid == 1">
						<input type="text" v-model="yzm" placeholder="请输入验证码">
						 <button  class="jsq"  :disabled="isButtonDisabled" @click="sendVerificationCode">{{ buttonText }}</button>	 
					</view>
					<view class="inputs" v-if="activeid == 0">
						<input type="password"  v-model="wrod" placeholder="请输入密码">
					</view>
					<view class="twotap" >
						<view  :class="{'blck':activeid == index}" v-for="(item,index) in qh " :key="index" @click="getxz(index)">{{item.text}}</view>
							<view  @click="getxz1()">忘记密码</view>
					</view>
					<view class="anniulanan" @click="getlogin()">
						<text>登录</text>
					</view>
				</view>
			</view>
				
		</view>
		
	
		<view class="dbottom">
			<view class="axquan"  v-if="yd == false" @click="yd = true"></view>
			<view class="axquanl" v-if="yd == true" @click="yd = false">
				<uni-icons type="checkmarkempty" color="#ffffff" size="14"></uni-icons>
			</view>
			<text>请您认真阅读</text>
			<text class="lan">《用户协议》</text>
			<text>和</text>
			<text class="lan">《隐私政策》</text>
		</view>
	</view>
</template>

<script>
	import request from '../../utils/request';
	import {setToken,setTenantId, getToken} from '@/utils/auth.js'
	import {
	  getTenantIdByWebsite
	} from '@/api/login.js'
	export default{
		data(){
			return{
				phoneNumber: "",
				shopinfo:0,
				yd:false,
				isButtonDisabled: false,
				countdownTime: 60,
				qh:[
					{text:'密码登录'},
					{text:'验证码登录'},
					// {text:'忘记密码'}
				],
				tel:'',
				yzm:'',
				wrod:'',
				activeid:0,
        tenantCode: 'lighting'
			}
		},
		mounted(){
		  getTenantIdByWebsite(this.tenantCode).then(res => {
		    const tenantId = res.data;
		    if (tenantId && tenantId >= 0) {
		      setTenantId(tenantId)
		    }
		  })
		},
		onLoad() {
			if(getToken()){
			   let info = uni.getStorageSync('userinfo')
			   if(info.roles[0].roleKey == "jcyh"){
				   uni.navigateTo({
				   	url:'/pages/index/index'
				   })
			   }else if(info){
				   uni.navigateTo({
				   	url:'/pages/staff/staff'
				   })
			   }
			   
			}
		},
		computed: {
		   buttonText() {
		     if (this.isButtonDisabled) {
		       return `${this.countdownTime}s 后重新发送`;
		     } else {
		       return "获取验证码";
		     }
		   },
		 }, 
		methods:{
			//登录请求
			getlogin(){
				if(this.yd == false){
					uni.showToast({
						title:'请仔细阅读用户协议与隐私政策！',
						icon:'none'
					})
					return
				}
				if(this.tel == ''){
					uni.showToast({
						title:'输入框不能为空！',
						icon:'none'
					})
					return
				}
				
				if(this.activeid == 0){
					const data ={
						username:this.tel,
						password:this.wrod,
						type:0
					}
					request({
						url: '/rescue/loginApp',
						method: 'post',
						data: data
					}).then((res)=>{
						console.log('密码请求',res);
						if(res.code == 200){
							setToken(res.data.accessToken)
							this.userinfo()
						
						}
					})
					
				}
				if(this.activeid == 1){
					const data ={
						phone:this.tel,
						code:this.yzm,
						type:1
					}
					request({
						url: '/rescue/loginApp',
						method: 'post',
						data: data
					}).then((res)=>{
						console.log('验证码请求',res);
						if(res.code == 200){
							setToken(res.data.accessToken)
							this.userinfo()		
						}
					})
				}
			},
			userinfo(){
				if(this.shopinfo == 0){
					uni.showLoading({
						title: '加载中'
					});
					console.log('商户');
					request({
						url: '/getJcPartnerInfo',
						method: 'get',
						
					}).then((res)=>{
						if(res.code == 500){
							uni.showToast({
								title:"信息有误"
							})
							return
						}
						if(res.code == 200){
							uni.setStorageSync('userinfo',res.user)
							uni.setStorageSync('roleSelect','shop')
							uni.hideLoading();
							this.goselect()
						}
					})
					
				}
				if(this.shopinfo == 2){
					uni.showLoading({
						title: '加载中'
					});
					console.log('员工');
					request({
						url: '/getJcWorkerInfo',
						method: 'get',
						
					}).then((res)=>{
						if(res.code == 200){
							uni.setStorageSync('staffinfo',res.user)
							uni.setStorageSync('partnerId',res.partnerInfo.partnerId)
							uni.setStorageSync('roleSelect','worker')
							uni.hideLoading();
							uni.redirectTo({
								url:'/pages/staff/staff'
							})
						}
					})
					
				}
				if(this.shopinfo == 1){
					uni.showLoading({
						title: '加载中'
					});
					console.log('官方');
					request({
						url: '/rescue/getJcgfInfo',
						method: 'get',
						
					}).then((res)=>{
						if(res.code == 200){
							// uni.setStorageSync('staffinfo',res.user)
							// uni.setStorageSync('partnerId',res.partnerInfo.partnerId)
							uni.setStorageSync('roleSelect','jcgf')
							uni.setStorageSync('userinfo',res.user)
							console.log(res);
							uni.hideLoading();
							uni.redirectTo({
								url:'/pages/authority/authority'
							})
						}
					})
					
				}
				
			
			},
			getxz(index){
				this.activeid = index
			
			},
			getxz1(){
			
				uni.navigateTo({
					url:'/pages/Login/modify'
				})
			
			},
			goregister(){
				uni.navigateTo({
					url:'/pages/login/register'
				})
			},
			goforgot(){
				uni.navigateTo({
					url:'/pages/login/forgot'
				})
			},
			goselect(){
				console.log('执行');
				uni.reLaunch({
					url:'/pages/index/synthesis'
				})
			},
			// 验证码方法
			sendVerificationCode() {
				let reg = /^((13[0-9])|(14[0-9])|(15[0-9])|(17[0-9])|(18[0-9]))\d{8}$/;
				if (!reg.test(this.tel)) {
					uni.showToast({
						icon: 'none',
						title: '请输入正确的11位手机号'
					})
					this.tel = '';
					return false;
				}
			  if (this.isButtonDisabled) {
			    return; // 如果按钮已禁用，则直接返回
			  }
						const data = {
							  phone:this.tel,
						  }
						request({
						  url: '/loginSmsCode',
						  method: 'post',
						  params: data
						}).then((res)=>{
							console.log('验证码',res);
							if(res.code == 200){
								uni.showToast({
									title:'验证码已发送 请注意查收',
									icon:'none'
								})
							}else{
								uni.showToast({
									title:'网络不佳请稍后再试',
									icon:'none'
								})
							}
						})

						
			    this.disableButton(); // 禁用按钮
			    this.startCountdown(); // 启动倒计时
			 
			},
			disableButton() {
			  this.isButtonDisabled = true;
			},
			enableButton() {
			  this.isButtonDisabled = false;
			},
			startCountdown() {
			  let countdown = setInterval(() => {
			    this.countdownTime--;
			    if (this.countdownTime === 0) {
			      clearInterval(countdown);
			      this.enableButton(); // 启用按钮
			    }
			  }, 1000);
			},
		}
	}
	
</script>

<style scoped lang="scss">
	.jsq{
		border: none !important;
		font-size: 12px;
		height: 30px;
		font-weight: 400;
		color: #0078FF;
	}
	button {
	  border: none !important;
	  background: none !important;
	  margin: 0px;
	   display: block;
	}
	button:focus {
		color: #0078FF;
	  outline: none;
	  box-shadow: none;
	}
	.content{
		box-sizing: border-box;
		background: linear-gradient(180deg, rgba(13,46,141,0.2) 0%, rgba(255,255,255,0) 100%);
	}
	
	.top{
		box-sizing: border-box;
		padding: 0px 27px;
		padding-top: 100px;
		// background-color:lightseagreen;
		background-image: url('../../static/detection/loginbj.png');
		background-size: cover;
		// background-position: center;
		width: 100%;
		height: calc(100vh);
	}
	.touxiang{
		width: 88px;
		height: 88px;
		border-radius: 10px;
		background: #D7D7D7;
		margin: 0 auto;
		margin-bottom: 40px;
		overflow: hidden;
		image{
			width: 100%;
			height: 100%;
		}
	}
	.twotap{
		margin-top: 10px;
		width: 100%;
		display: flex;
		align-items: center;
		view{
			font-size: 12px;
			font-family: Microsoft YaHei;
			font-weight: 400;
			color: #666666;
			margin-right: 38.5px;
		}
	}
	.blck{
		color: #333333 !important;
		font-weight: bold !important;
	}
	.inputs{
		height: 54px;
		box-sizing: border-box;
		padding: 16px 0px;
		display: flex;
		align-items: center;
		border-bottom: 2px solid #E8E8E8 ;
		// margin-top: 20px;
	}
	.wjworb{
		margin-top: 5px;
		width: 100%;
		display: flex;
		font-size: 12px;
		color: #0078FF;
		justify-content: flex-end;
		align-items: center;
		
	}
	.dl{
		width: 90%;
		height: 44px;
		background: linear-gradient(-46deg, #0853C4 0%, #4282D8 80%);
		border-radius: 5px;
		margin: 0 auto;
		font-size: 16px;
		color: #FFFFFF;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-top: 22px;
	}
	.hging{
		width: 100%;
		text-align: center;
		font-size: 14px;
		font-weight: 400;
		color: #636363;
		margin-top: 20px;
	}
	.wx{
		width: 38px;
		height: 38px;
		overflow: hidden;
		box-sizing: border-box;
		margin: 0px auto;
		margin-top: 20px;
		image{
			width: 100%;
			height: 100%;
		}
	}
	.hui{
		font-size: 10px;
		width: 100%;
		text-align: center;
		font-weight: 400;
		color: #666666;
	}
	.dbottom{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		text-align: center;
		font-size: 12px;
		color: #333333;
		margin-top: 40px;
		position: fixed;
		bottom: 25px;
	}
	
	.lan{
		color: #0D2E8D;
	}
	.box-box{
		width: 95%;
		margin: 20px auto;
		border-radius: 8px;
		overflow: hidden;
	}
	.bb-top{
		height: 55px;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		background: #FFFFFF;
	}
	.bb-bai{
		width: 33%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 17px;
		font-weight: bold;
		background: #FFFFFF;
		// color: #0D2E8D;
		color: #B5BACA;
	}
	.shendu{
		color: #0D2E8D !important;
	}
	.bb-hui{
			height: 100%;
		width: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		background: #B5BACA;
		font-size: 17px;	
		font-weight: 400;
		color: #FFFFFF;
	}
	.bb-baibox{
		box-sizing: border-box;
		width: 100%;
		padding: 15px;
		background-color: white;
		
	}
	.anniulanan{
		width: 90%;
		height: 42px;
		margin: 20px auto;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50px;
		background-color: #0D2E8D;
		color: white;
	}
	.dalan{
		font-size: 25px;
		font-weight: bold;
		color: #0D2E8D;
		margin-left: 10px;
	}
	.axquan{
		width: 14px;
		height: 14px;
		border-radius: 50%;
		border: 1px solid #AAAAAA;
		margin-right: 5px;
	}
	.axquanl{
		width: 14px;
		height: 14px;
		border-radius: 50%;
		border: 1px solid #AAAAAA;
		margin-right: 5px;
		background-color: #0D2E8D;
	}
	
</style>