<!-- pos机账号登录入口 -->
<template>
	<view class="page-content my-bg">
		<cu-custom class="main-topbar bg-main-oil" bgColor="bg-main-oil" :isBack="true">
			<block slot="content">星油云站</block>
		</cu-custom>
		<view class="bg-img margin flex padding-lg radius align-center text-center" :style="'background-image: url('+mainURL+'login-bg.png)'">
			<view class="padding-lg margin text-center text-lg text-white w100">
				<text class="">
					油站工作人员绑定油站
				</text>
			</view>

		</view>
		<view class="pannel">
			<view class="bg-white margin padding radius  shadow-warp">
				<view class="cu-form-group">
					<view class="title text-black">手机号</view>
					<input type="number" v-model="auth.phone" placeholder="请输入手机号" name="input"></input>
				</view>
				<view class="cu-form-group padding-top-sm" v-if="showRandom">
					<view class="title text-black">验证码</view>
					<input type="number" :maxlength="6" v-model="auth.captcha" placeholder="六位数字验证码" name="input"></input>
					<button class='cu-btn bg-main-oil shadow' @tap="sendMsg">验证码</button>
				</view>
				<view class="cu-form-group padding-top-sm" v-else>
					<view class="title text-black">密码</view>
					<input inpitype="password" v-model="auth.password" placeholder="请输入登入密码" name="input"></input>
				</view>
			</view>

			<view class="margin-left padding-left-lg" @tap="showRandom=true" v-if="!showRandom">
				<text class="text-sm">短信验证码登录</text>
			</view>
			<view class="margin-left padding-left-lg" @tap="showRandom=false" v-else>
				<text class="text-sm">密码登录</text>
			</view>
		</view>
		<view class="margin-lg  padding-lg bottom-bg">
			<button class="bg-main-oil round" v-if="showRandom" @tap="loginRandom">
				登录
			</button>
			<button class="bg-main-oil round" v-else @tap="loginPwd">
				登录
			</button>
		</view>
		<view class="bottom-part">
			<service-hotline />
		</view>
	</view>
</template>

<script>
	import cloudSiteApi from '@/api/cloud-site.js'
	import loginApi from '@/api/login.js'
	export default {
		data() {
			return {
				baseURL: this.global.baseURL,
				mainURL: this.global.mainURL,
				forcedLogin: true,
				oilSiteNo: '',
				showRandom: true,
				auth: {}
			}
		},
		created() {
			uni.showShareMenu()
			// this.loginWeixin()
		},
		methods: {
			loginPwd() {
				const data3 = {
					username: this.auth.phone,
					password: this.auth.password,
					IMEI: 'IMEI',
					androidMsgId: 'androidMsgId'
				}
				loginApi.loginApp(data3).then(res => {
					console.log('res', res)
					uni.showToast({
						title: res.msg,
						icon: 'none'
					})
				})
			},
			loginWeixin() {
				uni.login({
					provider: 'weixin',
					success: loginRes => {
						const code = loginRes.code
						console.log(code)
						loginApi.loginWeixin(code).then(res => {
							if (res.code === 20000) {
								uni.reLaunch({
									url: '/pages/index/index',
									fail: (err) => {
										console.log(err)
									}
								})
								uni.showToast({
									title: res.msg,
									icon: 'success',
									duration: 3000
								})
								uni.setStorage({
									key: 'Authorization',
									data: res.data.accessToken,
									success: () => {
										console.log('Authorization成功', res.data.accessToken)
									}
								})
								uni.setStorage({
									key: 'device',
									data: res.data.openid,
									success: () => {
										console.log('deviceopenid', res.data.openid)
									}
								})
								uni.setStorageSync('userMenu', res.data.loginUser.procedureAuthList)
								uni.setStorageSync('loginUser', {
									id: res.data.loginUser.id,
									name: res.data.loginUser.name
								})
							} else {
								console.log('res', res.code)
							}


						})
					},
					fail: err => {
						console.log(err)
					}
				});
			},
			sendMsg() {
				const data2 = {
					phone: this.auth.phone
				}
				loginApi.loginAppSendSms(data2).then(res => {
					console.log('res', res)
					uni.showToast({
						title: res.msg,
						icon: 'none'
					})
				})
			},
			loginRandom() {
				uni.login({
					provider: 'weixin',
					success: loginRes => {
						const code = loginRes.code
						console.log(code)
						const data2 = {
							phone: this.auth.phone,
							username: "mock", //类型：String  必有字段  备注：手机号
							verifyCode: "mock", //类型：String  必有字段  备注：验证码
							code: "mock" //类型：String  必有字段  备注：微信code
						}
						loginApi.loginWeiXinSMS(data2).then(res => {
							console.log('res', res)
							uni.showToast({
								title: res.msg,
								icon: 'none'
							})
						
							console.log('oilSiteCode', this.oilSiteNo)
							if (res.code === 20000) {
								// address: "安徽省合肥市庐阳区大杨镇"
								// fuelLogo: null
								// linkMan: "符红敏"
								// oilSiteCode: "1591260293"
								// oilSiteName: "杭州首鸿金融信息服务有限公司"
								// phone: "15617055136"
								uni.setStorage({
									key: 'oilSiteCode',
									data: this.oilSiteNo,
									success: () => {
										console.log('缓存成功')
									}
								})
								uni.setStorage({
									key: 'oilSite',
									data: res.data,
									success: () => {
										console.log('缓存成功')
									}
								})
								uni.navigateTo({
									url: '/pages/Auth/Auth'
								})
							}
						})
					},
					fail: err => {
						console.log(err)
					}
				});
				
				// uni.setStorage({
				// 	key: 'oilSiteCode',
				// 	data: this.oilSiteNo,
				// 	success: () => {
				// 		console.log('缓存成功')
				// 	}
				// })
				// uni.navigateTo({
				// 	url: '/pages/Auth/Auth'
				// })

			},
			getMsg() {
				uni.requestSubscribeMessage({
					tmplIds: ['W5XD3NQVa6knC5jXHeWT8GS7q5CHrDUMY_sF79kLkKk'],
					success: (res) => {
						console.log(res)
					}
				})
			},
			getUserInfo({
				detail
			}) {
				console.log('三方登录只演示登录api能力，暂未关联云端数据');
				console.log('detail', detail)
				if (detail.userInfo) {
					this.loginLocal(detail.userInfo.nickName);
				} else {
					uni.showToast({
						icon: 'none',
						title: '登陆失败'
					});
				}

			},
			loginLocal(nickName) {
				uni.setStorageSync('login_type', 'local')
				uni.setStorageSync('username', nickName)
				this.toMain(nickName);
			},
			toMain(userName) {
				// this.login(userName)
				console.log(userName)
				/**
				 * 强制登录时使用reLaunch方式跳转过来
				 * 返回首页也使用reLaunch方式
				 */
				if (this.forcedLogin) {
					uni.reLaunch({
						url: '/pages/index/index',
						success: () => {
							console.log('success')
						},
						fail: err => {
							console.log(err)
						}
					});
				} else {
					uni.navigateBack();
				}

			}
		}
	};
</script>

<style scoped>
	.page-content {
		min-height: 100%;
		position: relative;
	}

	.logo {
		min-width: 100%;
		text-align: center;
	}

	.logo img {
		width: 200upx;
		height: 200rpx;
		background-size: contain;
		margin: auto;
	}

	.bottom-bg {
		position: sticky;
		bottom: 50upx;
	}
</style>
