From 19757a9a495c7b9a4456fb1b18f1771bf81d9572 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=88=B4=E4=B8=9A=E4=BC=9F?= <806724993@qq.com>
Date: Mon, 22 Jan 2024 18:02:18 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E7=94=A8=E6=88=B7=E7=99=BB=E5=BD=95?=
=?UTF-8?q?=E5=92=8C=E7=94=A8=E6=88=B7=E6=9D=83=E9=99=90=E8=8F=9C=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/api/axios.ts | 3 +
src/api/http.ts | 4 -
src/api/system/user.ts | 10 +
.../Table/src/hooks/useDataSource.ts | 1 -
src/config/website.config.ts | 13 ++
src/enums/httpEnum.ts | 1 +
src/enums/pageEnum.ts | 11 +-
src/enums/storageEnum.ts | 4 +-
src/layout/components/Header/index.vue | 5 +-
src/layout/components/Sider/index.vue | 57 +++++-
src/router/base.ts | 64 ++++---
src/router/generator.ts | 126 +++++++++++++
src/router/icons.ts | 7 +
src/router/index.ts | 48 ++---
src/router/modules/system.router.ts | 52 -----
src/router/router-guards.ts | 120 ++++++++++--
src/store/modules/asyncRoute.ts | 107 +++++++++++
src/store/modules/user.ts | 106 +++++++++++
src/styles/index.scss | 12 +-
src/utils/domUtils.ts | 6 +-
src/utils/menu.ts | 2 +
src/utils/router.ts | 28 ++-
src/utils/storage.ts | 178 ++++++++++++------
src/views/login/index.vue | 64 +++----
src/views/redirect/index.vue | 22 +++
25 files changed, 789 insertions(+), 262 deletions(-)
create mode 100644 src/config/website.config.ts
create mode 100644 src/router/generator.ts
create mode 100644 src/router/icons.ts
delete mode 100644 src/router/modules/system.router.ts
create mode 100644 src/store/modules/asyncRoute.ts
create mode 100644 src/store/modules/user.ts
create mode 100644 src/views/redirect/index.vue
diff --git a/src/api/axios.ts b/src/api/axios.ts
index 5981971..dc33c67 100644
--- a/src/api/axios.ts
+++ b/src/api/axios.ts
@@ -2,6 +2,8 @@ import axios, { AxiosResponse, AxiosRequestConfig } from "axios";
import { ResultEnum } from "@/enums/httpEnum";
// import { ErrorPageNameMap } from "@/enums/pageEnum";
// import { redirectErrorPage } from "@/utils";
+import { storage } from "@/utils";
+import { StorageEnum } from "@/enums/storageEnum";
const axiosInstance = axios.create({
baseURL: import.meta.env.DEV
@@ -13,6 +15,7 @@ const axiosInstance = axios.create({
// 请求拦截器
axiosInstance.interceptors.request.use(
(config) => {
+ config.headers.Authorization = storage.get(StorageEnum.ZS_ACCESS_TOKEN);
return config;
},
(error: AxiosRequestConfig) => {
diff --git a/src/api/http.ts b/src/api/http.ts
index aefd735..7f8ad14 100644
--- a/src/api/http.ts
+++ b/src/api/http.ts
@@ -17,9 +17,6 @@ export const get = (url: string, params?: object) => {
url: url,
method: RequestHttpEnum.GET,
params: params,
- headers: {
- Authorization: "7df1bd95-bf13-4660-a07d-90b8b1b314e8",
- },
});
};
@@ -30,7 +27,6 @@ export const post = (url: string, data?: object, headersType?: string) => {
data: data,
headers: {
"Content-Type": headersType || ContentTypeEnum.JSON,
- Authorization: "7df1bd95-bf13-4660-a07d-90b8b1b314e8",
},
});
};
diff --git a/src/api/system/user.ts b/src/api/system/user.ts
index c3d2b83..9f66119 100644
--- a/src/api/system/user.ts
+++ b/src/api/system/user.ts
@@ -3,12 +3,22 @@ import { get, post } from "@/api/http";
const fix = "/user";
const url = {
+ login: `${fix}/login`,
+ userInfo: `${fix}/userInfo`,
insert: `${fix}/insert`,
page: `${fix}/page`,
update: `${fix}/update`,
delete: `${fix}/delete`,
};
+export const login = (params: Object) => {
+ return post(url.login, params);
+};
+
+export const getUserInfo = () => {
+ return get(url.userInfo);
+};
+
export const insertUser = (params: Object) => {
return post(url.insert, params);
};
diff --git a/src/components/Table/src/hooks/useDataSource.ts b/src/components/Table/src/hooks/useDataSource.ts
index 6794165..8b7a7f2 100644
--- a/src/components/Table/src/hooks/useDataSource.ts
+++ b/src/components/Table/src/hooks/useDataSource.ts
@@ -54,7 +54,6 @@ export function useDataSource(
const sizeField = APISETTING.sizeField;
const totalField = APISETTING.totalField;
const listField = APISETTING.listField;
- console.log(listField);
const itemCount = APISETTING.countField;
let pageParams = {};
diff --git a/src/config/website.config.ts b/src/config/website.config.ts
new file mode 100644
index 0000000..c167fbd
--- /dev/null
+++ b/src/config/website.config.ts
@@ -0,0 +1,13 @@
+import logoImage from "@/assets/images/logo.png";
+interface WebsiteConfig {
+ title: string;
+ logo: string;
+ loginImage: string;
+ loginDesc: string;
+}
+export const websiteConfig: WebsiteConfig = Object.freeze({
+ title: "中盛起元基础框架",
+ logo: logoImage,
+ loginImage: logoImage,
+ loginDesc: "中盛起元基础框架",
+});
diff --git a/src/enums/httpEnum.ts b/src/enums/httpEnum.ts
index da1e0ff..469b2f1 100644
--- a/src/enums/httpEnum.ts
+++ b/src/enums/httpEnum.ts
@@ -2,6 +2,7 @@
* @description: 请求结果集
*/
export enum ResultEnum {
+ STATUS = 200,
DATA_SUCCESS = 0,
SUCCESS = 2000,
SERVER_ERROR = 500,
diff --git a/src/enums/pageEnum.ts b/src/enums/pageEnum.ts
index 7edd7df..986340f 100644
--- a/src/enums/pageEnum.ts
+++ b/src/enums/pageEnum.ts
@@ -1,12 +1,17 @@
import { ResultEnum } from "@/enums/httpEnum";
export enum PageEnum {
+ // 登录
+ BASE_LOGIN = "/login",
+ BASE_LOGIN_NAME = "lOGIN",
+ //重定向
+ REDIRECT = "/redirect",
+ REDIRECT_NAME = "Redirect",
+ // 首页
+ BASE_HOME = "/system/menu",
// 错误
ERROR_PAGE_NAME_403 = "ErrorPage403",
ERROR_PAGE_NAME_404 = "ErrorPage404",
- BASE_LOGIN = "/login",
- REDIRECT = "/redirect",
- REDIRECT_NAME = "Redirect",
// ERROR_PAGE_NAME_500 = "ErrorPage500",
}
diff --git a/src/enums/storageEnum.ts b/src/enums/storageEnum.ts
index 14cd505..2a6ede5 100644
--- a/src/enums/storageEnum.ts
+++ b/src/enums/storageEnum.ts
@@ -2,7 +2,9 @@ export enum StorageEnum {
// 全局设置
ZS_SYSTEM_SETTING_STORE = "YSTEM_SETTING",
// token 等信息
- ZS_ACCESS_TOKEN_STORE = "ACCESS_TOKEN",
+ ZS_ACCESS_TOKEN = "ACCESS_TOKEN",
// 登录信息
ZS_LOGIN_INFO_STORE = "LOGIN_INFO",
+ // 当前用户信息
+ ZS_CURRENT_USER = "CURRENT_USER",
}
diff --git a/src/layout/components/Header/index.vue b/src/layout/components/Header/index.vue
index 953e443..f92dd2c 100644
--- a/src/layout/components/Header/index.vue
+++ b/src/layout/components/Header/index.vue
@@ -1,6 +1,7 @@
diff --git a/src/layout/components/Sider/index.vue b/src/layout/components/Sider/index.vue
index efa6402..d73a60f 100644
--- a/src/layout/components/Sider/index.vue
+++ b/src/layout/components/Sider/index.vue
@@ -13,11 +13,12 @@