| <template> | 
|     <div class="wrap" :style="{ | 
|       'background': `url(${$store.state.VUE_APP_CONFIG.BG_IMAGE})`, | 
|       'background-repeat': 'no-repeat', | 
|       'background-size': 'cover', | 
|       'background-clip': 'content-box', | 
|       'background-position': 'center', | 
|       }" | 
|     > | 
|       <div class="introduce"> | 
|         <div v-if="$store.state.VUE_APP_CONFIG.LOGO"> | 
|           <img :src="$store.state.VUE_APP_CONFIG.LOGO" alt=""> | 
|         </div> | 
|         <h2>{{ $store.state.VUE_APP_CONFIG.COMPANY_NAME }}</h2> | 
|          | 
|       </div> | 
|       <div class="login"> | 
|         <!-- <h1>系统登录 / LOGIN IN</h1> | 
|         <h3>{{test}}</h3> | 
|         <div class="info-input"> | 
|           <el-input v-model="username" placeholder="请输入用户名" prefix-icon="el-icon-user-solid" maxlength="50" v-trim/> | 
|           <div style="height: 15px;"></div> | 
|           <el-input v-model="password" placeholder="请输入密码" type="password" prefix-icon="eva-icon-password" maxlength="30" show-password/> | 
|           <div class="captcha-input"> | 
|             <el-input v-model="captcha.value" placeholder="图片验证码" prefix-icon="eva-icon-shield" maxlength="4" @keypress.enter.native="login"/> | 
|             <img v-if="!captcha.loading" :src="captcha.uri" @click="refreshCaptcha"> | 
|             <span v-else><i class="el-icon-loading"></i></span> | 
|           </div> | 
|         </div> | 
|         <el-button :loading="loading" @click="login">登  录</el-button> --> | 
|         正在授权登录... | 
|       </div> | 
|     </div> | 
|   </template> | 
|    | 
|   <script type="text/javascript"> | 
|    | 
|   import { autoLoginDemo1 } from '@/api/system/common' | 
|    | 
|   export default { | 
|     name: 'autoLogin', | 
|      | 
|     data () { | 
|       return { | 
|         test:'', | 
|         loading: false, | 
|         username: '', | 
|         password: '', | 
|         companyId: 8, | 
|         // 验证码 | 
|         captcha: { | 
|           loading: false, | 
|           value: '', | 
|           uuid: '', | 
|           uri: '' | 
|         } | 
|       } | 
|     }, | 
|     created () { | 
|       let query = window.location.href.split('?')[1].split('&') | 
|       let data = { | 
|         companyId: this.$store.state.VUE_APP_CONFIG.COMPANY_ID | 
|       } | 
|       query.forEach(item => { | 
|         let subQuery = item.split('=') | 
|         data[subQuery[0]] = subQuery[1] | 
|       }) | 
|       // console.log(data); | 
|       autoLoginDemo1(data) | 
|         .then(() => { | 
|           window.location.href = process.env.VUE_APP_CONTEXT_PATH | 
|         }) | 
|       // this.companyId = window.location.COMPANY_ID | 
|     }, | 
|     methods: { | 
|       | 
|       login () { | 
|         if (this.loading) { | 
|           return | 
|         } | 
|         if (!this.__check()) { | 
|           return | 
|         } | 
|         this.loading = true | 
|         loginByPassword({ | 
|           username: this.username.trim(), | 
|           password: this.password, | 
|           code: this.captcha.value.trim(), | 
|           companyId: this.companyId, | 
|           uuid: this.captcha.uuid | 
|         }) | 
|           .then(() => { | 
|             window.location.href = process.env.VUE_APP_CONTEXT_PATH | 
|           }) | 
|           .catch(e => { | 
|             this.refreshCaptcha() | 
|             this.$tip.apiFailed(e) | 
|           }) | 
|           .finally(() => { | 
|             this.loading = false | 
|           }) | 
|       }, | 
|       /** | 
|        * 刷新验证码 | 
|        */ | 
|       refreshCaptcha () { | 
|         this.captcha.loading = true | 
|         getCaptcha() | 
|           .then(data => { | 
|             this.captcha.uri = data.image | 
|             this.captcha.uuid = data.uuid | 
|           }) | 
|           .catch(e => { | 
|             this.$tip.apiFailed(e) | 
|           }) | 
|           .finally(() => { | 
|             setTimeout(() => { | 
|               this.captcha.loading = false | 
|             }, 150) | 
|           }) | 
|       }, | 
|       /** | 
|        * 登录前验证 | 
|        * | 
|        * @returns {boolean} | 
|        * @private | 
|        */ | 
|       __check () { | 
|         if (this.username.trim() === '') { | 
|           this.$tip.error('请输入用户名') | 
|           return false | 
|         } | 
|         if (this.password === '') { | 
|           this.$tip.error('请输入密码') | 
|           return false | 
|         } | 
|         if (this.captcha.value.trim() === '') { | 
|           this.$tip.error('请输入图片验证码') | 
|           return false | 
|         } | 
|         return true | 
|       }, | 
|        | 
|     }, | 
|      | 
|      | 
|   } | 
|   </script> | 
|    | 
|   <style scoped lang="scss"> | 
|   @import "@/assets/style/variables.scss"; | 
|   $input-gap: 30px; | 
|   .wrap { | 
|     display: flex; | 
|     width: 100%; | 
|     height: 100vh; | 
|     background-repeat: no-repeat; | 
|     background-size: cover; | 
|     background-clip: content-box; | 
|     background-position: center; | 
|     // 左边介绍 | 
|     .introduce { | 
|       // padding-left: 10%; | 
|       position: relative; | 
|       width: 100%; | 
|       height: 100%; | 
|       box-sizing: border-box; | 
|       color: #fff; | 
|       background: rgba(0, 0, 0, 0.4); | 
|       display: flex; | 
|       flex-direction: column; | 
|       justify-content: center; | 
|       div { | 
|         position: absolute; | 
|         top: 60px; | 
|         left: 60px; | 
|         width: 300px; | 
|         height: 60px; | 
|         img { | 
|           max-width: 100%; | 
|           // margin: auto; | 
|           height: 100%; | 
|         } | 
|       } | 
|       h2 { | 
|         align-items: center; | 
|         padding-left: 60px; | 
|         font-size:45px; | 
|         font-style: italic; | 
|         font-weight: 900; | 
|         margin-top: 50px; | 
|       } | 
|       // h3 { | 
|       //   font-size: 49px; | 
|       //   font-weight: 300; | 
|       //   margin: 25px 0; | 
|       // } | 
|     } | 
|     // 右边登录 | 
|     .login { | 
|       height: 100%; | 
|       width: 38%; | 
|       max-width: 560px; | 
|       min-width: 460px; | 
|       flex-shrink: 0; | 
|       text-align: center; | 
|       background: #fff; | 
|       padding: 0 80px; | 
|       display: flex; | 
|       flex-direction: column; | 
|       justify-content: center; | 
|       box-sizing: border-box; | 
|       h1 { | 
|         font-size: 28px; | 
|         font-weight: 500; | 
|       } | 
|       .info-input { | 
|         margin-top: $input-gap; | 
|         margin-bottom: 60px; | 
|         ::v-deep .el-input { | 
|           margin-top: 30px; | 
|           .el-input__inner { | 
|             // height: 50px; | 
|             background: #F9F9F9; | 
|             border: 1px solid transparent; | 
|             &:focus { | 
|               border: 1px solid $primary-color; | 
|             } | 
|           } | 
|         } | 
|       } | 
|       // 验证码输入 | 
|       .captcha-input { | 
|         display: flex; | 
|         margin-top: $input-gap; | 
|         height: 30px; | 
|         .el-input { | 
|           width: 100%; | 
|           margin-top: 0; | 
|         } | 
|         span, img { | 
|           width: 40%; | 
|           height: 100%; | 
|           flex-shrink: 0; | 
|           margin-left: 16px; | 
|         } | 
|         span { | 
|           display: flex; | 
|           align-items: center; | 
|           justify-content: center; | 
|           background: #f7f7f7; | 
|           border-radius: 8px; | 
|         } | 
|       } | 
|       .el-button { | 
|         height: 50px; | 
|         width: 100%; | 
|         color: #fff; | 
|         font-size: 16px; | 
|         background: linear-gradient(130deg, $primary-title-start-color 0%, $icon-background-color 100%); | 
|       } | 
|     } | 
|   } | 
|   </style> | 
|    |