|
@@ -13,14 +13,7 @@ import {
|
|
|
} from 'element-plus'
|
|
|
import { reactive, ref, unref, onMounted, computed, watch } from 'vue'
|
|
|
import * as LoginApi from '@/api/login'
|
|
|
-import {
|
|
|
- setToken,
|
|
|
- setTenantId,
|
|
|
- getUsername,
|
|
|
- getRememberMe,
|
|
|
- getPassword,
|
|
|
- getTenantName
|
|
|
-} from '@/utils/auth'
|
|
|
+import { setToken, setTenantId } from '@/utils/auth'
|
|
|
import { usePermissionStore } from '@/store/modules/permission'
|
|
|
import { useRouter } from 'vue-router'
|
|
|
import { useI18n } from '@/hooks/web/useI18n'
|
|
@@ -29,6 +22,8 @@ import { Icon } from '@/components/Icon'
|
|
|
import { LoginStateEnum, useLoginState, useFormValid } from './useLogin'
|
|
|
import type { RouteLocationNormalizedLoaded } from 'vue-router'
|
|
|
import { Verify } from '@/components/Verifition'
|
|
|
+import Cookies from 'js-cookie'
|
|
|
+import { decrypt, encrypt } from '@/utils/jsencrypt'
|
|
|
|
|
|
const { currentRoute, push } = useRouter()
|
|
|
const permissionStore = usePermissionStore()
|
|
@@ -72,7 +67,7 @@ const captchaType = ref('blockPuzzle')
|
|
|
// 获取验证码
|
|
|
const getCode = async () => {
|
|
|
// 情况一,未开启:则直接登录
|
|
|
- if (!loginData.captchaEnable) {
|
|
|
+ if (loginData.captchaEnable === 'false') {
|
|
|
await handleLogin({})
|
|
|
return
|
|
|
}
|
|
@@ -88,15 +83,15 @@ const getTenantId = async () => {
|
|
|
}
|
|
|
// 记住我
|
|
|
const getCookie = () => {
|
|
|
- const username = getUsername()
|
|
|
- const password = getPassword()
|
|
|
- const rememberMe = getRememberMe()
|
|
|
- const tenantName = getTenantName()
|
|
|
+ const username = Cookies.get('username')
|
|
|
+ const password = Cookies.get('password') ? decrypt(Cookies.get('password')) : undefined
|
|
|
+ const rememberMe = Cookies.get('rememberMe')
|
|
|
+ const tenantName = Cookies.get('tenantName')
|
|
|
loginData.loginForm = {
|
|
|
...loginData.loginForm,
|
|
|
username: username ? username : loginData.loginForm.username,
|
|
|
password: password ? password : loginData.loginForm.password,
|
|
|
- rememberMe: rememberMe ? getRememberMe() : false,
|
|
|
+ rememberMe: rememberMe ? true : false,
|
|
|
tenantName: tenantName ? tenantName : loginData.loginForm.tenantName
|
|
|
}
|
|
|
}
|
|
@@ -114,6 +109,17 @@ const handleLogin = async (params) => {
|
|
|
if (!res) {
|
|
|
return
|
|
|
}
|
|
|
+ if (loginData.loginForm.rememberMe) {
|
|
|
+ Cookies.set('username', loginData.loginForm.username, { expires: 30 })
|
|
|
+ Cookies.set('password', encrypt(loginData.loginForm.password), { expires: 30 })
|
|
|
+ Cookies.set('rememberMe', loginData.loginForm.rememberMe, { expires: 30 })
|
|
|
+ Cookies.set('tenantName', loginData.loginForm.tenantName, { expires: 30 })
|
|
|
+ } else {
|
|
|
+ Cookies.remove('username')
|
|
|
+ Cookies.remove('password')
|
|
|
+ Cookies.remove('rememberMe')
|
|
|
+ Cookies.remove('tenantName')
|
|
|
+ }
|
|
|
setToken(res)
|
|
|
if (!redirect.value) {
|
|
|
redirect.value = '/'
|