|
|
@ -1,6 +1,7 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<div :class="prefixCls" class="login-background-img"> |
|
|
|
<div :class="prefixCls" class="login-background-img"> |
|
|
|
<AppLocalePicker v-if="showLocale" class="absolute top-4 right-4 enter-x xl:text-gray-600" :showText="false"/> |
|
|
|
11 |
|
|
|
|
|
|
|
<!-- <AppLocalePicker v-if="showLocale" class="absolute top-4 right-4 enter-x xl:text-gray-600" :showText="false"/> |
|
|
|
<AppDarkModeToggle class="absolute top-3 right-10 enter-x"/> |
|
|
|
<AppDarkModeToggle class="absolute top-3 right-10 enter-x"/> |
|
|
|
<div v-if="!getIsMobile" class="aui-logo"> |
|
|
|
<div v-if="!getIsMobile" class="aui-logo"> |
|
|
|
<div> |
|
|
|
<div> |
|
|
@ -130,9 +131,9 @@ |
|
|
|
<div class="aui-flex"> |
|
|
|
<div class="aui-flex"> |
|
|
|
<a class="aui-linek-code aui-flex-box" @click="codeHandleClick">{{ t('sys.login.qrSignInFormTitle') }}</a> |
|
|
|
<a class="aui-linek-code aui-flex-box" @click="codeHandleClick">{{ t('sys.login.qrSignInFormTitle') }}</a> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<!--<div class="aui-flex"> |
|
|
|
<!–<div class="aui-flex"> |
|
|
|
<a class="aui-linek-code aui-flex-box" @click="registerHandleClick">{{ t('sys.login.registerButton') }}</a> |
|
|
|
<a class="aui-linek-code aui-flex-box" @click="registerHandleClick">{{ t('sys.login.registerButton') }}</a> |
|
|
|
</div>--> |
|
|
|
</div>–> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<a-form> |
|
|
|
<a-form> |
|
|
@ -177,11 +178,11 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-show="type === 'codeLogin'" :class="`${prefixCls}-form`"> |
|
|
|
<div v-show="type === 'codeLogin'" :class="`${prefixCls}-form`"> |
|
|
|
<MiniCodelogin ref="codeRef" @go-back="goBack" @success="handleSuccess"/> |
|
|
|
<MiniCodelogin ref="codeRef" @go-back="goBack" @success="handleSuccess"/> |
|
|
|
</div> |
|
|
|
</div>--> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<script lang="ts" setup> |
|
|
|
<script lang="ts" setup> |
|
|
|
import { getCaptcha } from '/@/api/platform/core/controller/user'; |
|
|
|
/*/!*import { getCaptcha } from '/@/api/platform/core/controller/user'; |
|
|
|
import { onMounted, reactive, ref, toRaw, unref } from 'vue'; |
|
|
|
import { onMounted, reactive, ref, toRaw, unref } from 'vue'; |
|
|
|
import defaultCaptchaImg from '/@/assets/images/captcha.jpg'; |
|
|
|
import defaultCaptchaImg from '/@/assets/images/captcha.jpg'; |
|
|
|
import { useUserStore } from '/@/store/modules/user'; |
|
|
|
import { useUserStore } from '/@/store/modules/user'; |
|
|
@ -240,9 +241,9 @@ |
|
|
|
const loginLoading = ref<boolean>(false); |
|
|
|
const loginLoading = ref<boolean>(false); |
|
|
|
const { getIsMobile } = useAppInject(); |
|
|
|
const { getIsMobile } = useAppInject(); |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 获取验证码 |
|
|
|
* 获取验证码 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
async function handleChangeCheckCode() { |
|
|
|
async function handleChangeCheckCode() { |
|
|
|
formData.inputCode = ''; |
|
|
|
formData.inputCode = ''; |
|
|
|
try { |
|
|
|
try { |
|
|
@ -255,16 +256,16 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 切换登录方式 |
|
|
|
* 切换登录方式 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function loginClick(type) { |
|
|
|
function loginClick(type) { |
|
|
|
activeIndex.value = type; |
|
|
|
activeIndex.value = type; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 账号或者手机登录 |
|
|
|
* 账号或者手机登录 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
async function loginHandleClick() { |
|
|
|
async function loginHandleClick() { |
|
|
|
if (unref(activeIndex) === 'accountLogin') { |
|
|
|
if (unref(activeIndex) === 'accountLogin') { |
|
|
|
await accountLogin(); |
|
|
|
await accountLogin(); |
|
|
@ -310,9 +311,9 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 手机号登录 |
|
|
|
* 手机号登录 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
async function phoneLogin() { |
|
|
|
async function phoneLogin() { |
|
|
|
notification.success({ |
|
|
|
notification.success({ |
|
|
|
message: '功能待开发中.', |
|
|
|
message: '功能待开发中.', |
|
|
@ -320,14 +321,14 @@ |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 获取手机验证码 |
|
|
|
* 获取手机验证码 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
async function getLoginCode() { |
|
|
|
async function getLoginCode() { |
|
|
|
/*if (!phoneFormData.mobile) { |
|
|
|
/!*if (!phoneFormData.mobile) { |
|
|
|
createMessage.warn(t('sys.login.mobilePlaceholder')); |
|
|
|
createMessage.warn(t('sys.login.mobilePlaceholder')); |
|
|
|
return; |
|
|
|
return; |
|
|
|
}*/ |
|
|
|
}*!/ |
|
|
|
const TIME_COUNT = 60; |
|
|
|
const TIME_COUNT = 60; |
|
|
|
if (!unref(timer)) { |
|
|
|
if (!unref(timer)) { |
|
|
|
timeRuning.value = TIME_COUNT; |
|
|
|
timeRuning.value = TIME_COUNT; |
|
|
@ -344,10 +345,10 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 第三方登录 |
|
|
|
* 第三方登录 |
|
|
|
* @param type |
|
|
|
* @param type |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function onThirdLogin(type) { |
|
|
|
function onThirdLogin(type) { |
|
|
|
notification.success({ |
|
|
|
notification.success({ |
|
|
|
message: '功能待开发中.', |
|
|
|
message: '功能待开发中.', |
|
|
@ -355,9 +356,9 @@ |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 忘记密码 |
|
|
|
* 忘记密码 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function forgetHandelClick() { |
|
|
|
function forgetHandelClick() { |
|
|
|
type.value = 'forgot'; |
|
|
|
type.value = 'forgot'; |
|
|
|
setTimeout(() => { |
|
|
|
setTimeout(() => { |
|
|
@ -365,18 +366,18 @@ |
|
|
|
}, 300); |
|
|
|
}, 300); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 返回登录页面 |
|
|
|
* 返回登录页面 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function goBack() { |
|
|
|
function goBack() { |
|
|
|
activeIndex.value = 'accountLogin'; |
|
|
|
activeIndex.value = 'accountLogin'; |
|
|
|
type.value = 'login'; |
|
|
|
type.value = 'login'; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 忘记密码/注册账号回调事件 |
|
|
|
* 忘记密码/注册账号回调事件 |
|
|
|
* @param value |
|
|
|
* @param value |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function handleSuccess(value) { |
|
|
|
function handleSuccess(value) { |
|
|
|
Object.assign(formData, value); |
|
|
|
Object.assign(formData, value); |
|
|
|
Object.assign(phoneFormData, { mobile: '', smscode: '' }); |
|
|
|
Object.assign(phoneFormData, { mobile: '', smscode: '' }); |
|
|
@ -385,9 +386,9 @@ |
|
|
|
handleChangeCheckCode(); |
|
|
|
handleChangeCheckCode(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 注册 |
|
|
|
* 注册 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function registerHandleClick() { |
|
|
|
function registerHandleClick() { |
|
|
|
type.value = 'register'; |
|
|
|
type.value = 'register'; |
|
|
|
setTimeout(() => { |
|
|
|
setTimeout(() => { |
|
|
@ -395,9 +396,9 @@ |
|
|
|
}, 300); |
|
|
|
}, 300); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/!** |
|
|
|
* 二维码登录 |
|
|
|
* 二维码登录 |
|
|
|
*/ |
|
|
|
*!/ |
|
|
|
function codeHandleClick() { |
|
|
|
function codeHandleClick() { |
|
|
|
type.value = 'codeLogin'; |
|
|
|
type.value = 'codeLogin'; |
|
|
|
setTimeout(() => { |
|
|
|
setTimeout(() => { |
|
|
@ -407,8 +408,8 @@ |
|
|
|
|
|
|
|
|
|
|
|
onMounted(() => { |
|
|
|
onMounted(() => { |
|
|
|
//加载验证码 |
|
|
|
//加载验证码 |
|
|
|
handleChangeCheckCode(); |
|
|
|
handleC*!/hangeCheckCode(); |
|
|
|
}); |
|
|
|
});*/ |
|
|
|
</script> |
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
|
|
<style lang="less" scoped> |
|
|
|
<style lang="less" scoped> |
|
|
|