diff --git a/package.json b/package.json index a68b4e8..65a8aca 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,7 @@ "dayjs": "^1.11.13", "echarts": "^5.5.1", "element-resize-detector": "^1.2.4", + "jsencrypt": "3.5.4", "lodash-es": "^4.17.21", "mockjs": "^1.1.0", "naive-ui": "^2.39.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 23c9284..d4966c4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -38,6 +38,9 @@ importers: element-resize-detector: specifier: ^1.2.4 version: 1.2.4 + jsencrypt: + specifier: 3.5.4 + version: 3.5.4 lodash-es: specifier: ^4.17.21 version: 4.17.21 @@ -1389,6 +1392,7 @@ packages: acorn-import-assertions@1.9.0: resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} + deprecated: package has been renamed to acorn-import-attributes peerDependencies: acorn: ^8 @@ -2899,6 +2903,9 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true + jsencrypt@3.5.4: + resolution: {integrity: sha512-kNjfYEMNASxrDGsmcSQh/rUTmcoRfSUkxnAz+MMywM8jtGu+fFEZ3nJjHM58zscVnwR0fYmG9sGkTDjqUdpiwA==} + jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} @@ -7511,6 +7518,8 @@ snapshots: dependencies: argparse: 2.0.1 + jsencrypt@3.5.4: {} + jsesc@2.5.2: {} json-buffer@3.0.1: {} diff --git a/src/api/system/user.ts b/src/api/system/user.ts index a05819b..12d10f9 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -3,6 +3,7 @@ import { Alova } from '@/utils/http/alova/index'; export interface LoginParams { username: string; password: string; + isLock?: boolean; } export interface LoginData { @@ -17,14 +18,38 @@ export interface LoginData { export interface LoginRes { code: number; message: string; - data: LoginData; + data?: LoginData; +} + +export interface UserInfoData { + id: number; + username: string; + nickname: string; + avatarUrl: string; + userStatus: string; + permissions?: Array<{ + label: string; + value: string; + }>; +} + +export interface UserInfoRes { + code: number; + message: string; + data?: UserInfoData; +} + +export interface LogoutRes { + code: number; + message: string; + data?: string; } /** * @description: 获取用户信息 */ export function getUserInfo() { - return Alova.Get('/admin_info', { + return Alova.Get('/api/user/info', { meta: { isReturnNativeResponse: true, }, @@ -56,8 +81,10 @@ export function changePassword(params, uid) { /** * @description: 用户登出 */ -export function logout(params) { - return Alova.Post('/login/logout', { - params, +export function logout() { + return Alova.Get('/api/user/logout', { + meta: { + isReturnNativeResponse: true, + }, }); } diff --git a/src/enums/httpEnum.ts b/src/enums/httpEnum.ts index 9aa83e0..4135264 100644 --- a/src/enums/httpEnum.ts +++ b/src/enums/httpEnum.ts @@ -4,6 +4,7 @@ export enum ResultEnum { SUCCESS = 200, ERROR = -1, + LOGIN_EXPIRED = 50001, TIMEOUT = 10042, TYPE = 'success', } diff --git a/src/enums/pageEnum.ts b/src/enums/pageEnum.ts index d08ada9..6a51cc1 100644 --- a/src/enums/pageEnum.ts +++ b/src/enums/pageEnum.ts @@ -6,9 +6,9 @@ export enum PageEnum { REDIRECT = '/redirect', REDIRECT_NAME = 'Redirect', // 首页 - BASE_HOME = '/dashboard', + BASE_HOME = '/loan/application', //首页跳转默认路由 - BASE_HOME_REDIRECT = '/dashboard/console', + BASE_HOME_REDIRECT = '/loan/application', // 错误 ERROR_PAGE_NAME = 'ErrorPage', } diff --git a/src/layout/components/Header/index.vue b/src/layout/components/Header/index.vue index cf97ffe..fb885e2 100644 --- a/src/layout/components/Header/index.vue +++ b/src/layout/components/Header/index.vue @@ -72,78 +72,40 @@
-
- - - {{ item.tips }} - +
+
+ + + + {{ nickname }} +
- -
- - - 全屏 - -
- -
- -
- - - - - {{ username }} -
-
-
- -
- - - 项目配置 - +
+ + + + 退出登录
- -