diff --git a/src/api/admin-audit.ts b/src/api/admin-audit.ts index 663db29..7263dbb 100644 --- a/src/api/admin-audit.ts +++ b/src/api/admin-audit.ts @@ -1,10 +1,9 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminAuditLogListData } from "@/types/api/admin-audit"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminAuditLogs(params?: { page?: number; diff --git a/src/api/admin-auth.ts b/src/api/admin-auth.ts index de1e8e2..6439823 100644 --- a/src/api/admin-auth.ts +++ b/src/api/admin-auth.ts @@ -10,7 +10,6 @@ import type { } from "@/types/api/admin-auth"; import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "@/api/paths"; /** `GET /api/v1/admin/auth/captcha`(无需 Token) */ export async function getAdminCaptcha(): Promise { @@ -19,7 +18,7 @@ export async function getAdminCaptcha(): Promise({ - url: `${API_V1_PREFIX}/admin/auth/captcha`, + url: `/admin/auth/captcha`, method: "GET", }); } catch { @@ -32,7 +31,7 @@ export async function postAdminLogin( body: AdminAuthLoginRequest, ): Promise { return publicAdminRequest({ - url: `${API_V1_PREFIX}/admin/auth/login`, + url: `/admin/auth/login`, method: "POST", data: body, }); @@ -40,5 +39,5 @@ export async function postAdminLogin( /** `GET /api/v1/admin/auth/me`(需 Token) */ export async function getAdminMe(): Promise { - return adminRequest.get(`${API_V1_PREFIX}/admin/auth/me`); + return adminRequest.get(`/admin/auth/me`); } diff --git a/src/api/admin-config.ts b/src/api/admin-config.ts index 81f4c03..5407f8c 100644 --- a/src/api/admin-config.ts +++ b/src/api/admin-config.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminPlayTypeRow, @@ -11,7 +10,7 @@ import type { RiskCapVersionDetail, } from "@/types/api/admin-config"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; type ConfigVersionListParams = { status?: string; diff --git a/src/api/admin-currencies.ts b/src/api/admin-currencies.ts index 11c8bf2..f55e98d 100644 --- a/src/api/admin-currencies.ts +++ b/src/api/admin-currencies.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminCurrencyCreatePayload, @@ -10,7 +9,7 @@ import type { AdminCurrencyUpdatePayload, } from "@/types/api/admin-currency"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminCurrencies(): Promise { return adminRequest.get(`${A}/currencies`); diff --git a/src/api/admin-dashboard.ts b/src/api/admin-dashboard.ts index 1f1da52..a932269 100644 --- a/src/api/admin-dashboard.ts +++ b/src/api/admin-dashboard.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminDashboardData } from "@/types/api/admin-dashboard"; import type { @@ -8,7 +7,7 @@ import type { AdminDashboardAnalyticsQuery, } from "@/types/api/admin-dashboard-analytics"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; /** 首页仪表盘聚合(大厅 + 当期财务/风控/异常转账等,按账号权限填充各块) */ export async function getAdminDashboard(): Promise { diff --git a/src/api/admin-draws.ts b/src/api/admin-draws.ts index 3fd8a6e..e883b30 100644 --- a/src/api/admin-draws.ts +++ b/src/api/admin-draws.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminDrawFinanceSummaryData } from "@/types/api/admin-draw-finance"; import type { @@ -16,7 +15,7 @@ import type { AdminDrawCreateResponse, } from "@/types/api/admin-draws"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export type AdminDrawListQuery = { page?: number; diff --git a/src/api/admin-integration-sites.ts b/src/api/admin-integration-sites.ts index bdd958b..b533767 100644 --- a/src/api/admin-integration-sites.ts +++ b/src/api/admin-integration-sites.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminIntegrationSiteConnectivityResult, @@ -12,7 +11,7 @@ import type { AdminIntegrationSiteWithSecrets, } from "@/types/api/admin-integration-site"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminIntegrationSites(): Promise { return adminRequest.get(`${A}/integration-sites`); diff --git a/src/api/admin-jackpot.ts b/src/api/admin-jackpot.ts index 3a05884..6d96db4 100644 --- a/src/api/admin-jackpot.ts +++ b/src/api/admin-jackpot.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminJackpotContributionsData, @@ -11,7 +10,7 @@ import type { AdminJackpotPoolRow, } from "@/types/api/admin-jackpot"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminJackpotPools(): Promise { return adminRequest.get(`${A}/jackpot/pools`); diff --git a/src/api/admin-ping.ts b/src/api/admin-ping.ts index 2f164d5..1e7fc31 100644 --- a/src/api/admin-ping.ts +++ b/src/api/admin-ping.ts @@ -1,7 +1,6 @@ import { adminRequest, hasLotteryAdminApiBaseUrl } from "@/lib/admin-http"; import type { AdminPingResponse } from "@/types/api/admin-ping"; -import { API_V1_PREFIX } from "@/api/paths"; /** `GET /api/v1/admin/ping`(需 Bearer Token) */ export async function getAdminPing(): Promise { @@ -10,7 +9,7 @@ export async function getAdminPing(): Promise { } try { return await adminRequest.get( - `${API_V1_PREFIX}/admin/ping`, + `/admin/ping`, ); } catch { return null; diff --git a/src/api/admin-player-tickets.ts b/src/api/admin-player-tickets.ts index c01a07c..1a5e7ae 100644 --- a/src/api/admin-player-tickets.ts +++ b/src/api/admin-player-tickets.ts @@ -1,10 +1,9 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminPlayerTicketItemsData } from "@/types/api/admin-player-tickets"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminPlayerTicketItems( playerId: number, diff --git a/src/api/admin-player.ts b/src/api/admin-player.ts index 4a33031..ab63791 100644 --- a/src/api/admin-player.ts +++ b/src/api/admin-player.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminPlayerListData, @@ -10,7 +9,7 @@ import type { AdminPlayerDeleteResult, } from "@/types/api/admin-player"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminPlayers(params?: { page?: number; diff --git a/src/api/admin-reconcile.ts b/src/api/admin-reconcile.ts index 6d1e762..3789814 100644 --- a/src/api/admin-reconcile.ts +++ b/src/api/admin-reconcile.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminReconcileItemsData, @@ -8,7 +7,7 @@ import type { AdminReconcileJobListData, } from "@/types/api/admin-reconcile"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminReconcileJobs(params?: { page?: number; diff --git a/src/api/admin-report-jobs.ts b/src/api/admin-report-jobs.ts index f5eec2c..f54316e 100644 --- a/src/api/admin-report-jobs.ts +++ b/src/api/admin-report-jobs.ts @@ -2,7 +2,6 @@ import { adminHttp, adminRequest } from "@/lib/admin-http"; import { withAdminAuthHeader } from "@/lib/admin-auth"; import { withAdminLocaleHeaders } from "@/lib/admin-locale"; -import { API_V1_PREFIX } from "./paths"; import type { AdminReportJobCreatePayload, @@ -11,7 +10,7 @@ import type { AdminReportJobRow, } from "@/types/api/admin-report-jobs"; -const A = `${API_V1_PREFIX}/admin/report-jobs`; +const A = `/admin/report-jobs`; export async function getAdminReportJobs(params?: { page?: number; diff --git a/src/api/admin-reports.ts b/src/api/admin-reports.ts index 1508782..ce83a69 100644 --- a/src/api/admin-reports.ts +++ b/src/api/admin-reports.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminReportDailyProfitRow, @@ -11,7 +10,7 @@ import type { AdminReportRebateCommissionRow, } from "@/types/api/admin-reports"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminReportDailyProfit( params: AdminReportQueryParams, diff --git a/src/api/admin-risk.ts b/src/api/admin-risk.ts index 5afb391..e506e88 100644 --- a/src/api/admin-risk.ts +++ b/src/api/admin-risk.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminRiskLockLogListData, @@ -9,7 +8,7 @@ import type { AdminRiskPoolShowData, } from "@/types/api/admin-risk"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export type AdminRiskPoolListQuery = { page?: number; diff --git a/src/api/admin-settings.ts b/src/api/admin-settings.ts index 562a8eb..36f9ccd 100644 --- a/src/api/admin-settings.ts +++ b/src/api/admin-settings.ts @@ -1,7 +1,6 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "@/api/paths"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export type AdminSettingItem = { key: string; diff --git a/src/api/admin-settlement.ts b/src/api/admin-settlement.ts index a6fde4a..8afab8d 100644 --- a/src/api/admin-settlement.ts +++ b/src/api/admin-settlement.ts @@ -2,7 +2,6 @@ import { adminHttp, adminRequest } from "@/lib/admin-http"; import { withAdminAuthHeader } from "@/lib/admin-auth"; import { withAdminLocaleHeaders } from "@/lib/admin-locale"; -import { API_V1_PREFIX } from "./paths"; import type { AdminSettlementBatchDetailsData, @@ -12,7 +11,7 @@ import type { AdminSettlementWorkflowResponse, } from "@/types/api/admin-settlement"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export type AdminSettlementBatchListQuery = { page?: number; diff --git a/src/api/admin-tickets.ts b/src/api/admin-tickets.ts index c6c426c..c02f65b 100644 --- a/src/api/admin-tickets.ts +++ b/src/api/admin-tickets.ts @@ -1,10 +1,9 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminTicketItemsData } from "@/types/api/admin-tickets"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export type TicketItemsListQuery = { page?: number; diff --git a/src/api/admin-users.ts b/src/api/admin-users.ts index 6fe26bf..6a60c42 100644 --- a/src/api/admin-users.ts +++ b/src/api/admin-users.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminPermissionCatalogData, @@ -18,7 +17,7 @@ import type { AdminUserUpdatePayload, } from "@/types/api/admin-user"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export async function getAdminUsers(params?: { page?: number; diff --git a/src/api/admin-wallet.ts b/src/api/admin-wallet.ts index cad492b..1d66103 100644 --- a/src/api/admin-wallet.ts +++ b/src/api/admin-wallet.ts @@ -1,6 +1,5 @@ import { adminRequest } from "@/lib/admin-http"; -import { API_V1_PREFIX } from "./paths"; import type { AdminPlayerWalletsData, @@ -8,7 +7,7 @@ import type { AdminWalletTxnListData, } from "@/types/api/admin-wallet"; -const A = `${API_V1_PREFIX}/admin`; +const A = `/admin`; export type TransferOrderListQuery = { page?: number; diff --git a/src/api/index.ts b/src/api/index.ts index f87fe1e..5768684 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,4 +1,4 @@ -export { API_V1_PREFIX } from "@/api/paths"; +export { ADMIN_API_BASE, LOTTERY_API_V1_BASE } from "@/api/paths"; export { getDrawCurrent } from "@/api/public-draw"; export { getAdminRiskPools } from "@/api/admin-risk"; export { getAdminCaptcha, getAdminMe, postAdminLogin } from "@/api/admin-auth"; diff --git a/src/api/paths.ts b/src/api/paths.ts index fd23d1a..8f45dc1 100644 --- a/src/api/paths.ts +++ b/src/api/paths.ts @@ -1,2 +1,5 @@ -/** Laravel `routes/api.php`:`api` 前缀 + `v1` 分组 */ -export const API_V1_PREFIX = "/api/v1"; +/** Laravel `routes/api.php`:`api` 前缀 + `v1` 分组;与 {@link adminHttp} `baseURL` 一致。 */ +export const LOTTERY_API_V1_BASE = "/api/v1"; + +/** 后台路由在 `v1` 下的 `admin` 分组 */ +export const ADMIN_API_BASE = "/admin"; diff --git a/src/api/public-draw.ts b/src/api/public-draw.ts index 6bc40c4..5e17650 100644 --- a/src/api/public-draw.ts +++ b/src/api/public-draw.ts @@ -1,7 +1,6 @@ import { hasLotteryAdminApiBaseUrl, publicAdminRequest } from "@/lib/admin-http"; import type { DrawCurrentSnapshot } from "@/types/api/public-draw"; -import { API_V1_PREFIX } from "@/api/paths"; /** 大厅当前期(无需 Bearer) */ export async function getDrawCurrent(): Promise { @@ -10,7 +9,7 @@ export async function getDrawCurrent(): Promise { } try { return await publicAdminRequest({ - url: `${API_V1_PREFIX}/draw/current`, + url: `/draw/current`, method: "GET", }); } catch { diff --git a/src/lib/admin-http.ts b/src/lib/admin-http.ts index 1f13058..521eb20 100644 --- a/src/lib/admin-http.ts +++ b/src/lib/admin-http.ts @@ -8,11 +8,12 @@ import { withAdminAuthHeader } from "@/lib/admin-auth"; import { withAdminLocaleHeaders } from "@/lib/admin-locale"; import { LotteryApiBizError, LotteryApiEnvelopeError } from "@/types/api/errors"; import { isApiEnvelope } from "@/types/api/envelope"; +import { LOTTERY_API_V1_BASE } from "@/api/paths"; export { hasLotteryAdminApiBaseUrl } from "@/lib/lottery-api-env"; export const adminHttp = axios.create({ - // API 路径统一由调用方传 `/api/v1/...`,避免与前缀重复拼接成 `/api/api/v1/...`。 + baseURL: LOTTERY_API_V1_BASE, timeout: 30_000, headers: { Accept: "application/json" }, });