| | |
| | | <template> |
| | | <div class="login"> |
| | | <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form"> |
| | | <h3 class="title">{{ title }}</h3> |
| | | <el-form-item prop="username"> |
| | | <el-input |
| | | v-model="loginForm.username" |
| | | type="text" |
| | | size="large" |
| | | auto-complete="off" |
| | | placeholder="账号" |
| | | > |
| | | <template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="password"> |
| | | <el-input |
| | | v-model="loginForm.password" |
| | | type="password" |
| | | size="large" |
| | | auto-complete="off" |
| | | placeholder="密码" |
| | | @keyup.enter="handleLogin" |
| | | > |
| | | <template #prefix><svg-icon icon-class="password" class="el-input__icon input-icon" /></template> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="code" v-if="captchaEnabled"> |
| | | <el-input |
| | | v-model="loginForm.code" |
| | | size="large" |
| | | auto-complete="off" |
| | | placeholder="验证码" |
| | | style="width: 63%" |
| | | @keyup.enter="handleLogin" |
| | | > |
| | | <template #prefix><svg-icon icon-class="validCode" class="el-input__icon input-icon" /></template> |
| | | </el-input> |
| | | <div class="login-code"> |
| | | <img :src="codeUrl" @click="getCode" class="login-code-img"/> |
| | | </div> |
| | | </el-form-item> |
| | | <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">记住密码</el-checkbox> |
| | | <el-form-item style="width:100%;"> |
| | | <el-button |
| | | :loading="loading" |
| | | size="large" |
| | | type="primary" |
| | | style="width:100%;" |
| | | @click.prevent="handleLogin" |
| | | > |
| | | <span v-if="!loading">登 录</span> |
| | | <span v-else>登 录 中...</span> |
| | | </el-button> |
| | | <div style="float: right;" v-if="register"> |
| | | <router-link class="link-type" :to="'/register'">立即注册</router-link> |
| | | </div> |
| | | </el-form-item> |
| | | </el-form> |
| | | <!-- 底部 --> |
| | | <div class="el-login-footer"> |
| | | <span>Copyright © 2018-2025 ruoyi.vip All Rights Reserved.</span> |
| | | <div class="login-card"> |
| | | <div class="title">陕西昭德环保型煤有限公司</div> |
| | | <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form" label-position="top"> |
| | | <el-form-item prop="username" label="账号"> |
| | | <el-input |
| | | v-model="loginForm.username" |
| | | type="text" |
| | | size="large" |
| | | clearable |
| | | auto-complete="off" |
| | | placeholder="请输入登录账号" |
| | | > |
| | | <template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item prop="password" label="密码"> |
| | | <el-input |
| | | v-model="loginForm.password" |
| | | type="password" |
| | | size="large" |
| | | clearable |
| | | auto-complete="off" |
| | | show-password |
| | | placeholder="请输入密码" |
| | | @keyup.enter="handleLogin" |
| | | > |
| | | <template #prefix><svg-icon icon-class="password" class="el-input__icon input-icon" /></template> |
| | | </el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item prop="code" v-if="captchaEnabled">--> |
| | | <!-- <el-input--> |
| | | <!-- v-model="loginForm.code"--> |
| | | <!-- size="large"--> |
| | | <!-- auto-complete="off"--> |
| | | <!-- placeholder="验证码"--> |
| | | <!-- style="width: 63%"--> |
| | | <!-- @keyup.enter="handleLogin"--> |
| | | <!-- >--> |
| | | <!-- <template #prefix><svg-icon icon-class="validCode" class="el-input__icon input-icon" /></template>--> |
| | | <!-- </el-input>--> |
| | | <!-- <div class="login-code">--> |
| | | <!-- <img :src="codeUrl" @click="getCode" class="login-code-img"/>--> |
| | | <!-- </div>--> |
| | | <!-- </el-form-item>--> |
| | | <el-form-item style="margin-top: 40px"> |
| | | <el-button |
| | | :loading="loading" |
| | | size="large" |
| | | type="primary" |
| | | style="width:100%;" |
| | | @click.prevent="handleLogin" |
| | | > |
| | | <span v-if="!loading">登 录</span> |
| | | <span v-else>登 录 中...</span> |
| | | </el-button> |
| | | <div style="float: right;" v-if="register"> |
| | | <router-link class="link-type" :to="'/register'">立即注册</router-link> |
| | | </div> |
| | | </el-form-item> |
| | | <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">记住密码</el-checkbox> |
| | | </el-form> |
| | | </div> |
| | | <!-- 底部 --> |
| | | <!-- <div class="el-login-footer">--> |
| | | <!-- <span>Copyright © 2018-2025 ruoyi.vip All Rights Reserved.</span>--> |
| | | <!-- </div>--> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | username: "admin", |
| | | password: "admin123", |
| | | rememberMe: false, |
| | | code: "", |
| | | // code: "", |
| | | uuid: "" |
| | | }) |
| | | |
| | | const loginRules = { |
| | | username: [{ required: true, trigger: "blur", message: "请输入您的账号" }], |
| | | password: [{ required: true, trigger: "blur", message: "请输入您的密码" }], |
| | | code: [{ required: true, trigger: "change", message: "请输入验证码" }] |
| | | // code: [{ required: true, trigger: "change", message: "请输入验证码" }] |
| | | } |
| | | |
| | | const codeUrl = ref("") |
| | |
| | | |
| | | <style lang='scss' scoped> |
| | | .login { |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | //display: flex; |
| | | //justify-content: center; |
| | | //align-items: center; |
| | | height: 100%; |
| | | background-image: url("../assets/images/login-background.jpg"); |
| | | background-image: url("../assets/images/login-background.png"); |
| | | background-size: cover; |
| | | position: relative; |
| | | } |
| | | .title { |
| | | margin: 0px auto 30px auto; |
| | | text-align: center; |
| | | color: #707070; |
| | | font-weight: 700; |
| | | font-size: 32px; |
| | | color: #165DFF; |
| | | } |
| | | |
| | | .login-card { |
| | | background: #ffffff; |
| | | width: 384px; |
| | | position: absolute; |
| | | top: 50%; |
| | | transform: translate(0, -50%); |
| | | right: 206px; |
| | | } |
| | | .login-form { |
| | | border-radius: 6px; |
| | | background: #ffffff; |
| | | width: 400px; |
| | | padding: 25px 25px 5px 25px; |
| | | z-index: 1; |
| | | .el-input { |
| | | height: 40px; |
| | |
| | | height: 40px; |
| | | padding-left: 12px; |
| | | } |
| | | :deep(.el-form-item__label) { |
| | | font-weight: 400; |
| | | font-size: 20px; |
| | | color: #000000; |
| | | } |
| | | </style> |