|
|
@ -1,22 +1,30 @@ |
|
|
|
<template> |
|
|
|
<div v-loading="loading" style="display: flex; justify-content: center; align-items: center;"> |
|
|
|
<div v-loading="loading" class="box"> |
|
|
|
<el-form ref="formSmsLogin" :model="loginData" :rules="rules" label-width="130px" label-position="top" size="large"> |
|
|
|
<div class="title" style="font-size:25px" margin-left="0px">重置密码</div> |
|
|
|
<el-row type="flex" justify="center" align="middle"> |
|
|
|
<el-col :span="13"> |
|
|
|
<el-col> |
|
|
|
<el-form-item label="新密码" prop="password" align="center"> |
|
|
|
<el-input v-model="loginData.password" placeholder="请输入新密码" /> |
|
|
|
<el-input v-model="loginData.password" placeholder="请输入新密码" :type="isShowPassword?'text':'password'"/> |
|
|
|
<el-icon style="position: absolute; right: 10px;cursor: pointer;" color="#a5a5a5" size="18" @click="isShowPassword = !isShowPassword"> |
|
|
|
<View v-if="!isShowPassword"/> |
|
|
|
<Hide v-if="isShowPassword"/> |
|
|
|
</el-icon> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="13"> |
|
|
|
<el-col> |
|
|
|
<el-form-item label="确认新密码" prop="againPassword"> |
|
|
|
<el-input v-model="loginData.againPassword" placeholder="请再次新密码" /> |
|
|
|
<el-input v-model="loginData.againPassword" placeholder="请再次新密码" :type="isShowAgainPassword?'text':'password'"/> |
|
|
|
<el-icon style="position: absolute; right: 10px;cursor: pointer;" color="#a5a5a5" size="18" @click="isShowAgainPassword = !isShowAgainPassword"> |
|
|
|
<View v-if="!isShowAgainPassword"/> |
|
|
|
<Hide v-if="isShowAgainPassword"/> |
|
|
|
</el-icon> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
|
<div class="dialog-footer"> |
|
|
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
|
|
|
<el-button type="primary" @click="submitForm" style="width: 100%;height: 40px;line-height: 40px;">确 定</el-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
@ -27,7 +35,7 @@ |
|
|
|
import { usePermissionStore } from '@/store/modules/permission' |
|
|
|
import { getTenantIdByName, sendSmsCode, smsLogin } from '@/api/login' |
|
|
|
import * as UserApi from '@/api/system/user' |
|
|
|
|
|
|
|
import { View,Hide } from '@element-plus/icons-vue' |
|
|
|
const { t } = useI18n() |
|
|
|
const message = useMessage() |
|
|
|
const permissionStore = usePermissionStore() |
|
|
@ -46,6 +54,9 @@ |
|
|
|
againPassword: '', |
|
|
|
mailKey: '', |
|
|
|
}) |
|
|
|
const isShowPassword = ref(false) |
|
|
|
const isShowAgainPassword = ref(false) |
|
|
|
|
|
|
|
const loading = ref(false); |
|
|
|
const submitForm = async () => { |
|
|
|
try { |
|
|
@ -75,4 +86,20 @@ |
|
|
|
.smsbtn { |
|
|
|
margin-top: 33px; |
|
|
|
} |
|
|
|
.box{ |
|
|
|
border: 1px solid #dedede; |
|
|
|
width: 500px; |
|
|
|
margin: 100px auto 0px; |
|
|
|
padding: 20px; |
|
|
|
box-shadow: 0px 0px 20px rgba($color: #000000, $alpha: 0.1); |
|
|
|
} |
|
|
|
.title{ |
|
|
|
text-align: center; |
|
|
|
font-size: 20px; |
|
|
|
font-weight: bold; |
|
|
|
padding-bottom: 20px; |
|
|
|
} |
|
|
|
::v-deep(.el-input--large .el-input__inner){ |
|
|
|
padding-right: 30px; |
|
|
|
} |
|
|
|
</style> |
|
|
|