<template>
	<view class="login">
		<view class="dk" style="margin-top: 30px">
			<view class="bg">
				<text class="icon">&#xe8b9;</text>
				<input type="number" maxlength="11" v-model="form.phone" placeholder="请输入手机号" />
			</view>
			<view class="bg">
				<text class="icon">&#xe624;</text>
				<input type="number" v-model="form.smsCode" placeholder="验证码" />
				<view class="label">获取验证码</view>
			</view>
			<view class="bg">
				<text class="icon">&#xe8b2;</text>
				<input :password="show" v-model="form.password" placeholder="请输入密码" />
				<view class="label"><view class="icon" :class="{ active: !show }" @click="show = !show">&#xe7a6;</view></view>
			</view>
			<view class="bg">
				<text class="icon">&#xe8b2;</text>
				<input :password="show" v-model="form.rePassword" placeholder="确认密码" />
				<view class="label"><view class="icon" :class="{ active: !show }" @click="show = !show">&#xe7a6;</view></view>
			</view>
			<view class="xy">
				<u-checkbox-group class="checkbox" v-model="form.checked">
					<u-checkbox size="15" shape="circle" label="我已阅读并同意" labelSize="13" name="true"></u-checkbox>
				</u-checkbox-group>
				<text class="a" @click="getAgreement(1)">《用户协议》</text>
				<text>和</text>
				<text class="a" @click="getAgreement(2)">《隐私政策》</text>
			</view>
			<button class="btn" @click="submit()">确定</button>
			<button class="btn register" @click="toLogin()">返回</button>
		</view>
	</view>
</template>

<script>
export default {
	data() {
		return {
			show: true,
			time: 60,
			code: '获取验证码',
			form: {}
		};
	},
	onLoad(option) {
		this.form.type = option.type;
	},
	created() {},
	methods: {
		startCount() {
			setTimeout(() => {
				let time = this.time;
				if (time == 0) {
					this.code = '重新获取';
					this.time = 60;
					return;
				}
				this.time = --time;
				this.code = time + '后重新获取';
				this.startCount();
			}, 1000);
		},
		getCode() {
			let time = this.time;
			if (time > 0 && time < 60) {
				return;
			}
			let phone = this.form.phone;
			if (!this.$common.isPhone(phone)) {
				this.$common.toast('请输入正确的手机号');
				return;
			}
			this.startCount();
			this.$api.getPhoneSmsCode().then(resp => {
				this.$common.toast('已发送');
			});
		},
		submit() {
			let rule = [
				{ name: 'phone', checkType: 'phone', errorMsg: '请输入正确的手机号码' },
				{ name: 'smsCode', checkType: 'notnull', errorMsg: '请输入验证码' },
				{ name: 'password', checkType: 'notnull', errorMsg: '请输入密码' },
				{ name: 'rePassword', checkType: 'same', checkRule: this.form.password, errorMsg: '两次输入不一致' },
				{ name: 'checked', checkType: 'notnull', errorMsg: '请同意并勾选协议' }
			];
			if (!this.verify.check(this.form, rule)) {
				uni.showModal({ content: this.verify.error, showCancel: false });
				return false;
			}
			this.$api.doRefister(this.form).then(res => {
				if (res.code == 200) {
					uni.$u.toast('注册成功');
					uni.navigateTo({
						url: '/pages/login/login'
					});
				}
			});
		},
		toLogin() {
			uni.navigateTo({
				url: '/pages/login/login'
			});
		},
		getAgreement(id) {
			uni.navigateTo({ url: '/pages/login/userAgreement?id=' + id });
		}
	}
};
</script>

<style lang="scss"></style>
