<template>
	<view class="content">
		<view class="row1">
			<text class="tit">头像</text>
			<view class="background-img" @click="upload"><image class="background-img" v-model="avatar" :src="avatar" mode="aspectFill"></image></view>
		</view>
		<view class="row">
			<text class="tit">昵称</text>
			<input class="input" type="button" v-model="name" placeholder-class="placeholder" />
		</view>
		<view class="row">
			<text class="tit">修改密码</text>
			<input class="input" type="text" v-model="password" placeholder-class="placeholder" />
		</view>
		<view class="row">
			<text class="tit">请输入手机号</text>
			<input class="input" type="text" v-model="account" placeholder-class="placeholder" />
		</view>
		<view class="row">
			<text class="tit">验证码</text>
			<input class="input" type="text" v-model="captcha" placeholder-class="placeholder" />
			<view class="code" @click="verification">{{ countDown == 0 ? $t('password.a7') : countDown }}</view>
		</view>
		<view class="row">
			<text class="tit">账号</text>
			<input class="input" disabled type="text" v-model="phone" placeholder-class="placeholder" />
		</view>
		<button class="add-btn" @click="confirm">修改</button>
	</view>
</template>

<script>
import { mapState,mapMutations } from 'vuex';
import { userEdit,logout } from '@/api/set.js';
import { upload } from '@/api/order.js'
export default {
	data() {
		return {
			name: '', // 昵称
			password:'', //修改密码
			captcha:'', //验证码
			account:'', //请输入手机号
			phone:'',
			avatar: '',
		};
	},
	computed: {
		...mapState('user',['userInfo']),
		startDate() {
			console.log('start');
		},
		endDate() {
			console.log('end');
		}
	},
	onShow(option) {
		console.log('111',this.userInfo);
		this.name = this.userInfo.nickname + '';
		this.password = '',
		this.captcha = '',
		this.account = '',
		this.avatar = this.userInfo.avatar || '';
		this.phone = this.userInfo.phone || '';
	},
	methods: {
		...mapMutations('user', ['logout']),
		// 上传头像
		upload() {
			console.log("111111")
			upload({
				filename: ''
			}).then(data => {
				this.avatar = data[0].url;
				console.log(this.avatar, 'tup')
				setTimeout(() => {
					uni.hideLoading()
				}, 500)
			});
		},
		
		confirm() {
			userEdit({ 
			  nickname: this.name,
			  avatar: this.avatar, 
			  password: this.password,
			  captcha: this.captcha,
			  account: this.account
			}).then(e => {
					this.$api.msg('修改成功');
					// 清空输入框
					this.password = '',
					setTimeout(() => {
						uni.switchTab({
							url: '/pages/user/user'
						});
					}, 1000);
					console.log(e);
				})
				.catch(e => {
					console.log(e);
				});
		},
		//发送验证码
		verification() {
			let obj = this;
			if (this.account == '') {
				this.$api.msg('请输入电话号码');
				return;
			}
			if (this.account.length < 11) {
				this.$api.msg('请输入正确的手机号');
				return;
			}
			// 判断是否在倒计时
			if (obj.countDown > 0) {
				return false;
			} else {
				obj.countDown = 60;
				obj.time = setInterval(() => {
					obj.countDown--;
				}, 1000);
				//调用验证码接口
				verify({
					account: obj.account,
					type: 'login'
				})
					.then(({ data }) => {})
					.catch(err => {
						console.log(err);
					});
			}
		},
		// loginout() {
		// 	let obj = this;
		// 	uni.showModal({
		// 		content: '确定要退出登录么',
		// 		success: e => {
		// 			if (e.confirm) {
		// 				uni.removeStorageSync('canChange')
		// 				logout({}).then()
		// 				uni.navigateBack();
		// 				obj.logout();
		// 			}
		// 		}
		// 	});
		// }
		loginout() {
			uni.navigateTo({
				url: '/pages/switch/switch'
			})
		}
	}
};
</script>

<style lang="scss">
.content {
	background-color: #fff;
}

.row1 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	padding: 0 30upx;
	height: 110upx;
	background: #fff;
	.tit {
		flex-shrink: 0;
		width: 120upx;
		font-size: $font-lg;
	}
	.background-img {
		width: 80rpx;
		height: 80rpx;
		border-radius: 50%;
		background: #f2f2f2;
	}
}
.row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	padding: 0 30upx;
	height: 110upx;
	background: #fff;

	.tit {
		flex-shrink: 0;
		font-size: $font-lg;
		color: $font-color-dark;
	}
	.tit1 {
		flex-shrink: 0;
		width: 150upx;
		font-size: $font-lg;
		color: $font-color-dark;
		
	}
	.input {
		text-align: right;
		flex: 1;
		font-size: $font-base;
		color: $color-gray;
	}
	.iconlocation {
		font-size: 36upx;
		color: $font-color-light;
	}
}
.add-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 560upx;
	height: 80upx;
	margin: 60upx auto;
	font-size: $font-lg;
	color: #fff;
	background: $base-color;
	border-radius: 40upx;
}
.loginout {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 560upx;
	height: 80upx;
	margin: 60upx auto;
	font-size: $font-lg;
	color: #fff;
}
</style>
