refactor: 重构 API 层目录结构 & 样式模块化拆分

- API 层按业务域拆分(api/auth/, api/file/, api/system/*)
- 类型定义从 types/api/ 移入对应 api 模块内(就近原则)
- 公共类型统一为 api/common.ts,移除冗余类型重导出
- 样式文件按职责拆分(base/, layout/, vendors/),移除 common.scss
- 移除失效的单元测试文件
This commit is contained in:
Ray.Hao
2026-03-30 08:11:03 +08:00
parent 3a27da6607
commit 3fedf4943d
107 changed files with 464 additions and 8264 deletions

69
src/api/auth/index.ts Normal file
View File

@@ -0,0 +1,69 @@
import request from "@/utils/request";
import type { LoginRequest, LoginResponse, CaptchaInfo } from "./types";
const AUTH_BASE_URL = "/api/v1/auth";
const AuthAPI = {
/** 登录接口*/
login(data: LoginRequest) {
const payload: Record<string, any> = {
username: data.username,
password: data.password,
captchaId: data.captchaId,
captchaCode: data.captchaCode,
};
// tenantId 可选,仅在提供时包含(多租户功能)
if (typeof data.tenantId !== "undefined") {
payload.tenantId = data.tenantId;
}
return request<any, LoginResponse>({
url: `${AUTH_BASE_URL}/login`,
method: "post",
data: payload,
});
},
/** 切换租户(平台用户) - 返回新的 token */
switchTenant(tenantId: number) {
return request<any, LoginResponse>({
url: `${AUTH_BASE_URL}/switch-tenant`,
method: "post",
params: { tenantId },
});
},
/** 刷新 token 接口*/
refreshToken(refreshToken: string) {
return request<any, LoginResponse>({
url: `${AUTH_BASE_URL}/refresh-token`,
method: "post",
params: { refreshToken },
headers: {
Authorization: "no-auth",
},
});
},
/** 退出登录接口 */
logout() {
return request({
url: `${AUTH_BASE_URL}/logout`,
method: "delete",
});
},
/** 获取验证码接口*/
getCaptcha() {
return request<any, CaptchaInfo>({
url: `${AUTH_BASE_URL}/captcha`,
method: "get",
});
},
};
export default AuthAPI;
// 重导出类型
export * from "./types";