<template>
	<div>
		全局登录页面 账号 <input type="text" /> 密码
		<input type="text" />   验证码  <input type="text" v-model="loginForm.code" /><img :src="image" alt="" />
		<button @click="login">登录</button>
	</div>
</template>
<script>
import axios from 'axios';
import md5 from 'js-md5';
import { getAll,setToken } from '@/libs/micros'
import { Alert } from 'element-ui';
export default {
	data() {
		return {
			loginForm: {
				//租户ID
				tenantId: '000000',
				//部门ID
				deptId: '',
				//角色ID
				roleId: '',
				//用户名
				username: 'admin',
				//密码
				password: 'admin',
				//账号类型
				type: 'account',
				//验证码的值
				code: '',
				//验证码的索引
				key: '',
                grant_type: 'captcha',
                scope: 'all'
				//预加载白色背景
				
			},
            image: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7',
		}
	},
	methods: {
		login() {
			const v = this
			console.log(md5(v.loginForm.password))
			v.loginForm.password = md5(v.loginForm.password)
			axios({
				method:"post",
				url:'/api/blade-auth/oauth/token',
				params:this.loginForm,
				headers:{
					'Captcha-Key':this.loginForm.key,
					'Captcha-Code':this.loginForm.code,
					'Tenant-Id': this.loginForm.tenantId
				},
			}).then(res=>{
				console.log(res)
				if(res.status == 200 && res.data){
					setToken(res.data)
					alert('登录成功')
					setTimeout(()=>{
						v.$router.push("/main")
					},1000)
				}
				// window.localStorage.setItem("token",JSON.stringify(res.data))
                // v.$router.push("/emailHome")
			})
			
		},
		getCodeImg() {
			this.$get('/api/blade-auth/oauth/captcha').then((res) => {
                const data = res
                this.loginForm.key = data.key
                this.image = data.image
            })
		},
	},
	created() {
		this.getCodeImg()
	},
}
</script>

