|
|
<template> <div class="site-wrapper site-page--login"> <div class="site-content__wrapper"> <div class="site-content"> <div class="login-main"> <h3 class="login-title">用户登陆</h3>
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" status-icon><!-- <el-form-item>--><!-- <el-select v-model="dataForm.site" style="width: 230px"--><!-- placeholder="请选择工厂">--><!-- <el-option--><!-- v-for="(item,index) in siteList"--><!-- :key="index"--><!-- :label="item.siteID+' - '+item.siteName"--><!-- :value="item.siteID"--><!-- >--><!-- </el-option>--><!-- </el-select>--><!-- </el-form-item>--> <el-form-item prop="userName"> <el-input v-model="dataForm.userName" placeholder="帐号"></el-input> </el-form-item> <el-form-item prop="password"> <el-input v-model="dataForm.password" type="password" placeholder="密码"></el-input> </el-form-item> <el-form-item> <el-button class="login-btn-submit" type="primary" @click="dataFormSubmit()">登录</el-button> </el-form-item> </el-form> </div> </div> </div> </div></template>
<script> import { getSiteData, } from "@/api/base/site.js" import { getUUID } from '@/utils' export default { data () { return { src: 'http://192.168.1.83/upload/ifs.png', dataForm: { userName: '', password: '', uuid: '', captcha: '', site:'' }, siteList:[], dataRule: { userName: [ { required: true, message: '帐号不能为空', trigger: 'blur' } ], password: [ { required: true, message: '密码不能为空', trigger: 'blur' } ] }, captchaPath: '' } }, created () { this.userName(); // this.getSiteData();
}, methods: { // getSiteData(){
// let data={};
// getSiteData(data).then(({data}) => {
// this.siteList = data.rows
// if(this.siteList.length>0){
// this.dataForm.site=this.siteList[0].siteID
// }
// })
// },
// 获取上次登陆的用户名
userName(){ this.dataForm.userName = localStorage.getItem('userName') }, // 提交表单
dataFormSubmit () { this.$refs['dataForm'].validate((valid) => { if (valid) { this.$http({ url: this.$http.adornUrl('/sys/login'), method: 'post', data: this.$http.adornData({ 'username': this.dataForm.userName, 'password': this.dataForm.password, 'uuid': this.dataForm.uuid, 'site': this.dataForm.site, }) }).then(({data}) => { if (data && data.code === 0) { this.$cookie.set('token', data.token) this.$router.replace({ name: 'home' }) this.$i18n.locale=data.language localStorage.setItem('locale', data.language) localStorage.setItem('refresh', "0") localStorage.setItem('userName', this.dataForm.userName) // localStorage.setItem('accessSite', this.dataForm.site)
} else { this.$message.error(data.msg) } }) } }) }, } }</script>
<style lang="scss" scoped> .site-wrapper.site-page--login { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(38, 50, 56, 0); overflow: hidden; &:before { position: fixed; top: 0; left: 0; z-index: -1; width: 80%; height: 100%; content: ""; background-image: url(~@/assets/img/login_bg.jpg); background-size: cover; } .site-content__wrapper { position: absolute; top: 0; right: 0; bottom: 0; left: 0; padding: 0; margin: 0; overflow-x: hidden; overflow-y: auto; background-color: transparent; } .site-content { min-height: 100%; padding: 15% 500px 30px 30px; } .brand-info { margin: 220px 100px 0 90px; color: #fff; } .brand-info__text { margin: 0 0 22px 0; font-size: 48px; font-weight: 400; text-transform : uppercase; } .brand-info__intro { margin: 10px 0; font-size: 16px; line-height: 1.58; opacity: .6; } .login-main { position: absolute; top: 0; right: 0; padding: 15% 60px 180px; width: 350px; min-height: 100%; background-color: #fff; } .login-title { font-size: 30px; } .login-captcha { overflow: hidden; > img { width: 100%; cursor: pointer; } } .login-btn-submit { width: 100%;
} .login-main .el-input__inner{ margin-top: 10px; height: 45px; } .el-button--medium { margin-top: 0px; padding: 5px 11px; font-size: 16px; border-radius: 4px; } .el-form-item { margin-bottom: 5px; } }
</style>
|