<template>
	<view class="app">
		<image src="../../static/logo.png" mode=""></image>
		<!-- <view class="text">
			新医路健康服务平台
		</view> -->
		<button class="loginbtn" open-type="getPhoneNumber" @getphonenumber="getPhoneNumberp">手机号快捷登录</button>
		<u-toast ref="uToast" />
	</view>
</template>
<script>
	import {
		appLoginpwd,
		getWeChatUser,
		isRegistered,
	} from '../../api/pages/login/index.js'
	import {
		getCurrentUser,
	} from '@/api/pages/homepage/homepage.js'
	import {
		createMobileToken
	} from '@/api/pages/login/index.js'
	export default {
		data() {
			return {
				phonecode: undefined,
				logincode: undefined,
				timer: undefined,
				cityCode: null,
				// scenenurseStationId: undefined,
			};
		},
		onShow() {
			if (uni.getStorageSync('location') && uni.getStorageSync('region')) {

				let location = uni.getStorageSync('location')
				let region = uni.getStorageSync('region')
			} else {
				this.getAddress()
			}
			this.phonecode = undefined
			this.logincode = undefined
			let that = this
			wx.login({
				provider: 'weixin',
				success: function(loginRes) {
					that.logincode = loginRes.code
				}
			});
			// this.scenenurseStationId = uni.getStorageSync('scenenurseStationId');
		},
		methods: {
			//获取当前位置
			getAddress() {
				let that = this;
				uni.getLocation({
					type: 'wgs84',
					success: (res) => {
						let location = res.latitude + ',' + res.longitude
						//调用逆解析接口
						uni.request({
							url: 'https://apis.map.qq.com/ws/geocoder/v1/?location=location', //腾讯官方逆解析接口，可直接复制
							data: {
								location: location,
								'key': "Q4DBZ-UIMC2-B63UX-CUZ6A-S3UT7-TBF3V", //自己申请的Key
							},
							method: "GET",
							success(res) {
								if (uni.getStorageSync('location')) {
									uni.setStorageSync('location', res.data.result.address_component
										.city)
									var address = uni.getStorageSync('location')
								}
								if (address == '德州市') {
									uni.setStorageSync("region", 1)
								} else if (address == '东营市') {
									uni.setStorageSync("region", 2)
								} else if (address == '济南市') {
									uni.setStorageSync("region", 3)
								}
							},
							fail: res => {
								console.log(res.errMsg, '解析失败返回的错误信息');
							}
						})
					},
					//失败
					fail: (res) => {
						uni.showToast({
							icon: 'none',
							title: '获取地址失败,请打开定位',
						})
					}
				})
			},
			getPhoneNumberp(val) {
				let that = this;
				if (val.detail.code) {

					that.phonecode = val.detail.code
					that.login();
				}
			},
			login() {
				wx.login({
					provider: 'weixin',
					success: function(loginRes) {
						that.logincode = loginRes.code
					}
				});
				let that = this;
				// console.log(that.logincode, that.phonecode)
				isRegistered(that.logincode, that.phonecode).then(resp => {
					if(resp.data.openid && resp.data.phone){
						uni.setStorageSync("openid", resp.data.openid)
						uni.setStorageSync("phone", resp.data.phone)
						
					}
				
					if (resp.data.code == '0') {
						that.$refs.uToast.show({
							title: '未注册,请先注册',
							type: 'error',
							duration: '1500',
						})
						if (that.timer) {
							learTimeout(that.timer)
						}
						that.timer = setTimeout(() => {
							uni.redirectTo({
								url: '/pages/register/register',
							})
						}, 1500)
					} else if(resp.data.code == '2'){
						that.$refs.uToast.show({
							title: '已被其他人注册， 不能再登录',
							type: 'error',
							duration: '1500',
						})

					}
					else if (resp.data.code == '1') {
						getCurrentUser(resp.data.openid).then(res => {
							if (res.code == 200) {
								console.log(res,'000')
								if(res.data){
									uni.setStorageSync('patientId', res.data.id);
									uni.setStorageSync('userinfo', res.data);
									
								}
							
								that.$refs.uToast.show({
									title: '登录成功',
									type: 'success',
									back: 1
								})
							} else {
								that.$refs.uToast.show({
									title: '登录失败',
									type: 'error',
								})
							}
						})
					}
				})
			},
			pwdlogin() {
				var that = this
				uni.clearStorageSync();
				that.login()
				// createMobileToken().then(res => {
				// 	uni.setStorageSync("token", res.data.token)
				// 	if (this.scenenurseStationId) {
				// 		uni.setStorageSync("scenenurseStationId", this.scenenurseStationId)
				// 	}
				// 	that.login()
				// })
			},
		}, //1.分享给朋友
		onShareAppMessage(res) {
			let pages = getCurrentPages();
			let url = pages[pages.length - 1].$page.fullPath
			return {
				title: '新医路健康服务平台',
				path: url,
			}
		},
		//2.分享到朋友圈
		onShareTimeline(res) {
			let pages = getCurrentPages();
			let url = pages[pages.length - 1].$page.fullPath
			return {
				title: '新医路健康服务平台',
				path: url,
			}
		},
	}
</script>

<style lang="scss">
	@import "./login.scss";
</style>
