refactor: 重命名 API 文件并更新引用路径

- 重命名 13 个 API 文件,去掉 -api 后缀
  * src/api/auth-api.ts  auth.ts
  * src/api/codegen-api.ts  codegen.ts
  * src/api/file-api.ts  file.ts
  * src/api/system/*.ts (9个文件)

- 批量更新 50+ 处 API 引用路径
- 修复 websocket 和枚举导入路径
- 确保零编码问题(使用 UTF-8 编码)
This commit is contained in:
Ray.Hao
2025-12-12 14:02:07 +08:00
parent 9fb1942619
commit 23b52872c5
48 changed files with 56 additions and 53 deletions

View File

@@ -53,7 +53,7 @@ import {
UploadRequestOptions, UploadRequestOptions,
} from "element-plus"; } from "element-plus";
import FileAPI, { FileInfo } from "@/api/file-api"; import FileAPI, { FileInfo } from "@/api/file";
const props = defineProps({ const props = defineProps({
/** /**

View File

@@ -40,7 +40,7 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { UploadRawFile, UploadRequestOptions, UploadUserFile } from "element-plus"; import { UploadRawFile, UploadRequestOptions, UploadUserFile } from "element-plus";
import FileAPI, { FileInfo } from "@/api/file-api"; import FileAPI, { FileInfo } from "@/api/file";
const props = defineProps({ const props = defineProps({
/** /**

View File

@@ -33,7 +33,7 @@
<script setup lang="ts"> <script setup lang="ts">
import { UploadRawFile, UploadRequestOptions } from "element-plus"; import { UploadRawFile, UploadRequestOptions } from "element-plus";
import FileAPI, { FileInfo } from "@/api/file-api"; import FileAPI, { FileInfo } from "@/api/file";
const props = defineProps({ const props = defineProps({
/** /**

View File

@@ -34,7 +34,7 @@ import { Toolbar, Editor } from "@wangeditor-next/editor-for-vue";
import { IToolbarConfig, IEditorConfig } from "@wangeditor-next/editor"; import { IToolbarConfig, IEditorConfig } from "@wangeditor-next/editor";
// 文件上传 API // 文件上传 API
import FileAPI from "@/api/file-api"; import FileAPI from "@/api/file";
// 上传图片回调函数类型 // 上传图片回调函数类型
type InsertFnType = (_url: string, _alt: string, _href: string) => void; type InsertFnType = (_url: string, _alt: string, _href: string) => void;

View File

@@ -3,7 +3,7 @@ import NoticeAPI, {
type NoticePageVO, type NoticePageVO,
type NoticeDetailVO, type NoticeDetailVO,
type NoticePageQuery, type NoticePageQuery,
} from "@/api/system/notice-api"; } from "@/api/system/notice";
import { useStomp } from "@/composables/websocket/useStomp"; import { useStomp } from "@/composables/websocket/useStomp";
import router from "@/router"; import router from "@/router";

View File

@@ -1,5 +1,5 @@
import { store } from "@/store"; import { store } from "@/store";
import DictAPI, { type DictItemOption } from "@/api/system/dict-api"; import DictAPI, { type DictItemOption } from "@/api/system/dict";
import { STORAGE_KEYS } from "@/constants"; import { STORAGE_KEYS } from "@/constants";
export const useDictStore = defineStore("dict", () => { export const useDictStore = defineStore("dict", () => {

View File

@@ -3,7 +3,7 @@ import { constantRoutes } from "@/router";
import { store } from "@/store"; import { store } from "@/store";
import router from "@/router"; import router from "@/router";
import MenuAPI, { type RouteVO } from "@/api/system/menu-api"; import MenuAPI, { type RouteVO } from "@/api/system/menu";
const modules = import.meta.glob("../../views/**/**.vue"); const modules = import.meta.glob("../../views/**/**.vue");
const Layout = () => import("../../layouts/index.vue"); const Layout = () => import("../../layouts/index.vue");

View File

@@ -1,5 +1,5 @@
import { store } from "@/store"; import { store } from "@/store";
import TenantAPI, { type TenantInfo } from "@/api/system/tenant-api"; import TenantAPI, { type TenantInfo } from "@/api/system/tenant";
import { STORAGE_KEYS } from "@/constants"; import { STORAGE_KEYS } from "@/constants";
/** /**

View File

@@ -1,13 +1,14 @@
import { store } from "@/store"; import { store } from "@/store";
import AuthAPI, { type LoginRequest } from "@/api/auth-api"; import AuthAPI from "@/api/auth";
import UserAPI, { type UserInfo } from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import type { LoginRequest } from "@/types/api";
import { AuthStorage } from "@/utils/auth"; import { AuthStorage } from "@/utils/auth";
import { usePermissionStoreHook } from "@/store/modules/permission-store"; import { usePermissionStoreHook } from "@/store/modules/permission-store";
import { useDictStoreHook } from "@/store/modules/dict-store"; import { useDictStoreHook } from "@/store/modules/dict-store";
import { useTagsViewStore } from "@/store"; import { useTagsViewStore } from "@/store";
import { cleanupWebSocket } from "@/plugins/websocket"; import { cleanupWebSocket } from "@/utils/websocket";
export const useUserStore = defineStore("user", () => { export const useUserStore = defineStore("user", () => {
// 用户信息 // 用户信息

View File

@@ -530,11 +530,11 @@ import GeneratorAPI, {
GenConfigForm, GenConfigForm,
TablePageQuery, TablePageQuery,
FieldConfig, FieldConfig,
} from "@/api/codegen-api"; } from "@/api/codegen";
import { ElLoading } from "element-plus"; import { ElLoading } from "element-plus";
import DictAPI from "@/api/system/dict-api"; import DictAPI from "@/api/system/dict";
import MenuAPI from "@/api/system/menu-api"; import MenuAPI from "@/api/system/menu";
interface TreeNode { interface TreeNode {
label: string; label: string;

View File

@@ -357,7 +357,7 @@ defineOptions({
}); });
import { dayjs } from "element-plus"; import { dayjs } from "element-plus";
import LogAPI, { VisitStatsVO, VisitTrendVO } from "@/api/system/log-api"; import LogAPI, { VisitStatsVO, VisitTrendVO } from "@/api/system/log";
import { useUserStore } from "@/store/modules/user-store"; import { useUserStore } from "@/store/modules/user-store";
import { formatGrowthRate } from "@/utils"; import { formatGrowthRate } from "@/utils";
import { useTransition, useDateFormat } from "@vueuse/core"; import { useTransition, useDateFormat } from "@vueuse/core";

View File

@@ -68,10 +68,10 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import DeptAPI from "@/api/system/dept-api"; import DeptAPI from "@/api/system/dept";
import RoleAPI from "@/api/system/role-api"; import RoleAPI from "@/api/system/role";
import type { UserForm, UserPageQuery } from "@/api/system/user-api"; import type { UserForm, UserPageQuery } from "@/api/system/user";
import type { IObject, IModalConfig, IContentConfig, ISearchConfig } from "@/components/CURD/types"; import type { IObject, IModalConfig, IContentConfig, ISearchConfig } from "@/components/CURD/types";
import { DeviceEnum } from "@/enums/settings/device-enum"; import { DeviceEnum } from "@/enums/settings/device-enum";
import { useAppStore } from "@/store"; import { useAppStore } from "@/store";

View File

@@ -1,4 +1,4 @@
import UserAPI, { type UserForm } from "@/api/system/user-api"; import UserAPI, { type UserForm } from "@/api/system/user";
import type { IModalConfig } from "@/components/CURD/types"; import type { IModalConfig } from "@/components/CURD/types";
import { deptArr, roleArr } from "./options"; import { deptArr, roleArr } from "./options";

View File

@@ -1,6 +1,6 @@
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import RoleAPI from "@/api/system/role-api"; import RoleAPI from "@/api/system/role";
import type { UserPageQuery } from "@/api/system/user-api"; import type { UserPageQuery } from "@/api/system/user";
import type { IContentConfig } from "@/components/CURD/types"; import type { IContentConfig } from "@/components/CURD/types";
const contentConfig: IContentConfig<UserPageQuery> = { const contentConfig: IContentConfig<UserPageQuery> = {

View File

@@ -1,4 +1,4 @@
import UserAPI, { type UserForm } from "@/api/system/user-api"; import UserAPI, { type UserForm } from "@/api/system/user";
import type { IModalConfig } from "@/components/CURD/types"; import type { IModalConfig } from "@/components/CURD/types";
import { DeviceEnum } from "@/enums/settings/device-enum"; import { DeviceEnum } from "@/enums/settings/device-enum";
import { useAppStore } from "@/store"; import { useAppStore } from "@/store";

View File

@@ -1,6 +1,6 @@
/** 公共下载数据,减少重复请求次数 */ /** 公共下载数据,减少重复请求次数 */
import DeptAPI from "@/api/system/dept-api"; import DeptAPI from "@/api/system/dept";
import RoleAPI from "@/api/system/role-api"; import RoleAPI from "@/api/system/role";
interface OptionType { interface OptionType {
label: string; label: string;

View File

@@ -1,4 +1,4 @@
import type { UserForm } from "@/api/system/user-api"; import type { UserForm } from "@/api/system/user";
import type { IModalConfig } from "@/components/CURD/types"; import type { IModalConfig } from "@/components/CURD/types";
import { deptArr } from "../config/options"; import { deptArr } from "../config/options";

View File

@@ -113,7 +113,7 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import type { IObject, IOperateData, PageModalInstance } from "@/components/CURD/types"; import type { IObject, IOperateData, PageModalInstance } from "@/components/CURD/types";
import usePage from "@/components/CURD/usePage"; import usePage from "@/components/CURD/usePage";
import addModalConfig from "./config/add"; import addModalConfig from "./config/add";

View File

@@ -141,7 +141,7 @@
<script setup lang="ts"> <script setup lang="ts">
import { useDictStoreHook } from "@/store/modules/dict-store"; import { useDictStoreHook } from "@/store/modules/dict-store";
import { useDateFormat } from "@vueuse/core"; import { useDateFormat } from "@vueuse/core";
import DictAPI, { DictItemForm } from "@/api/system/dict-api"; import DictAPI, { DictItemForm } from "@/api/system/dict";
import { useDictSync, DictMessage } from "@/composables"; import { useDictSync, DictMessage } from "@/composables";
// 性别字典编码 // 性别字典编码

View File

@@ -21,7 +21,7 @@
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import FileAPI from "@/api/file-api"; import FileAPI from "@/api/file";
const imgUrl = ref(""); const imgUrl = ref("");
const canvas = ref(); const canvas = ref();

View File

@@ -1,4 +1,4 @@
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import type { ISelectConfig } from "@/components/TableSelect/index.vue"; import type { ISelectConfig } from "@/components/TableSelect/index.vue";
const selectConfig: ISelectConfig = { const selectConfig: ISelectConfig = {

View File

@@ -142,12 +142,13 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import type { FormInstance } from "element-plus"; import type { FormInstance } from "element-plus";
import AuthAPI, { type LoginRequest } from "@/api/auth-api"; import AuthAPI from "@/api/auth";
import type { LoginRequest } from "@/types/api";
import router from "@/router"; import router from "@/router";
import { useUserStore } from "@/store"; import { useUserStore } from "@/store";
import CommonWrapper from "@/components/CommonWrapper/index.vue"; import CommonWrapper from "@/components/CommonWrapper/index.vue";
import { AuthStorage } from "@/utils/auth"; import { AuthStorage } from "@/utils/auth";
import { ApiCodeEnum } from "@/enums/api/code-enum"; import { ApiCodeEnum } from "@/enums";
const { t } = useI18n(); const { t } = useI18n();
const userStore = useUserStore(); const userStore = useUserStore();

View File

@@ -98,7 +98,8 @@
import type { FormInstance } from "element-plus"; import type { FormInstance } from "element-plus";
import { Lock } from "@element-plus/icons-vue"; import { Lock } from "@element-plus/icons-vue";
import { useI18n } from "vue-i18n"; import { useI18n } from "vue-i18n";
import AuthAPI, { type LoginRequest } from "@/api/auth-api"; import AuthAPI from "@/api/auth";
import type { LoginRequest } from "@/types/api";
const { t } = useI18n(); const { t } = useI18n();

View File

@@ -230,9 +230,9 @@ import UserAPI, {
MobileUpdateForm, MobileUpdateForm,
EmailUpdateForm, EmailUpdateForm,
UserProfileForm, UserProfileForm,
} from "@/api/system/user-api"; } from "@/api/system/user";
import FileAPI from "@/api/file-api"; import FileAPI from "@/api/file";
import { useUserStoreHook } from "@/store"; import { useUserStoreHook } from "@/store";
import { Camera } from "@element-plus/icons-vue"; import { Camera } from "@element-plus/icons-vue";

View File

@@ -119,7 +119,7 @@ import NoticeAPI, {
type NoticePageVO, type NoticePageVO,
type NoticePageQuery, type NoticePageQuery,
type NoticeDetailVO, type NoticeDetailVO,
} from "@/api/system/notice-api"; } from "@/api/system/notice";
const queryFormRef = ref(); const queryFormRef = ref();
const pageData = ref<NoticePageVO[]>([]); const pageData = ref<NoticePageVO[]>([]);

View File

@@ -141,7 +141,7 @@ defineOptions({
inheritAttrs: false, inheritAttrs: false,
}); });
import ConfigAPI, { ConfigPageVO, ConfigForm, ConfigPageQuery } from "@/api/system/config-api"; import ConfigAPI, { ConfigPageVO, ConfigForm, ConfigPageQuery } from "@/api/system/config";
import { ElMessage, ElMessageBox } from "element-plus"; import { ElMessage, ElMessageBox } from "element-plus";
import { useDebounceFn } from "@vueuse/core"; import { useDebounceFn } from "@vueuse/core";

View File

@@ -163,7 +163,7 @@ defineOptions({
inheritAttrs: false, inheritAttrs: false,
}); });
import DeptAPI, { DeptVO, DeptForm, DeptQuery } from "@/api/system/dept-api"; import DeptAPI, { DeptVO, DeptForm, DeptQuery } from "@/api/system/dept";
const queryFormRef = ref(); const queryFormRef = ref();
const deptFormRef = ref(); const deptFormRef = ref();

View File

@@ -155,7 +155,7 @@
<script setup lang="ts"> <script setup lang="ts">
import type { TagProps } from "element-plus"; import type { TagProps } from "element-plus";
import DictAPI, { DictItemPageQuery, DictItemPageVO, DictItemForm } from "@/api/system/dict-api"; import DictAPI, { DictItemPageQuery, DictItemPageVO, DictItemForm } from "@/api/system/dict";
const route = useRoute(); const route = useRoute();

View File

@@ -137,7 +137,7 @@ defineOptions({
inherititems: false, inherititems: false,
}); });
import DictAPI, { DictPageQuery, DictPageVO, DictForm } from "@/api/system/dict-api"; import DictAPI, { DictPageQuery, DictPageVO, DictForm } from "@/api/system/dict";
import router from "@/router"; import router from "@/router";

View File

@@ -68,7 +68,7 @@ defineOptions({
inheritAttrs: false, inheritAttrs: false,
}); });
import LogAPI, { LogPageVO, LogPageQuery } from "@/api/system/log-api"; import LogAPI, { LogPageVO, LogPageQuery } from "@/api/system/log";
const queryFormRef = ref(); const queryFormRef = ref();

View File

@@ -340,7 +340,7 @@
import { useAppStore } from "@/store/modules/app-store"; import { useAppStore } from "@/store/modules/app-store";
import { DeviceEnum } from "@/enums/settings/device-enum"; import { DeviceEnum } from "@/enums/settings/device-enum";
import MenuAPI, { MenuQuery, MenuForm, MenuVO } from "@/api/system/menu-api"; import MenuAPI, { MenuQuery, MenuForm, MenuVO } from "@/api/system/menu";
import { MenuTypeEnum } from "@/enums/system/menu-enum"; import { MenuTypeEnum } from "@/enums/system/menu-enum";
defineOptions({ defineOptions({

View File

@@ -265,8 +265,8 @@ import NoticeAPI, {
NoticeForm, NoticeForm,
NoticePageQuery, NoticePageQuery,
NoticeDetailVO, NoticeDetailVO,
} from "@/api/system/notice-api"; } from "@/api/system/notice";
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
const queryFormRef = ref(); const queryFormRef = ref();
const dataFormRef = ref(); const dataFormRef = ref();

View File

@@ -215,8 +215,8 @@
import { useAppStore } from "@/store/modules/app-store"; import { useAppStore } from "@/store/modules/app-store";
import { DeviceEnum } from "@/enums/settings/device-enum"; import { DeviceEnum } from "@/enums/settings/device-enum";
import RoleAPI, { RolePageVO, RoleForm, RolePageQuery } from "@/api/system/role-api"; import RoleAPI, { RolePageVO, RoleForm, RolePageQuery } from "@/api/system/role";
import MenuAPI from "@/api/system/menu-api"; import MenuAPI from "@/api/system/menu";
defineOptions({ defineOptions({
name: "Role", name: "Role",

View File

@@ -21,7 +21,7 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import DeptAPI from "@/api/system/dept-api"; import DeptAPI from "@/api/system/dept";
const props = defineProps({ const props = defineProps({
modelValue: { modelValue: {
type: [String, Number], type: [String, Number],

View File

@@ -89,7 +89,7 @@
<script lang="ts" setup> <script lang="ts" setup>
import { ElMessage, type UploadUserFile } from "element-plus"; import { ElMessage, type UploadUserFile } from "element-plus";
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import { ApiCodeEnum } from "@/enums/api/code-enum"; import { ApiCodeEnum } from "@/enums/api/code-enum";
const emit = defineEmits(["import-success"]); const emit = defineEmits(["import-success"]);

View File

@@ -253,15 +253,15 @@ import { useDebounceFn } from "@vueuse/core";
import { ElMessage, ElMessageBox, type FormInstance } from "element-plus"; import { ElMessage, ElMessageBox, type FormInstance } from "element-plus";
// ==================== 3. 类型定义 ==================== // ==================== 3. 类型定义 ====================
import type { UserForm, UserPageQuery, UserPageVO } from "@/api/system/user-api"; import type { UserForm, UserPageQuery, UserPageVO } from "@/api/system/user";
// ==================== 3.5 工具函数 ==================== // ==================== 3.5 工具函数 ====================
import { downloadFile } from "@/utils"; import { downloadFile } from "@/utils";
import { VALIDATORS } from "@/constants"; import { VALIDATORS } from "@/constants";
// ==================== 4. API 服务 ==================== // ==================== 4. API 服务 ====================
import UserAPI from "@/api/system/user-api"; import UserAPI from "@/api/system/user";
import DeptAPI from "@/api/system/dept-api"; import DeptAPI from "@/api/system/dept";
import RoleAPI from "@/api/system/role-api"; import RoleAPI from "@/api/system/role";
// ==================== 5. Store ==================== // ==================== 5. Store ====================
import { useUserStore, useAppStore } from "@/store"; import { useUserStore, useAppStore } from "@/store";