feat(frontend): 完成品牌 SVG 与后台 Phase 1 基础切片

This commit is contained in:
yml2213
2026-10-30 12:20:01 +08:00
parent 8d9481c251
commit 97167fa482
25 changed files with 2028 additions and 40 deletions
+49
View File
@@ -0,0 +1,49 @@
import { adminClient } from '@/shared/api/adminClient'
import type { ApiResponse } from '@/shared/api/types'
import type {
AdminCaptcha,
AdminLoginData,
AdminUser,
DashboardData,
} from '@/features/admin/types'
export async function fetchAdminCaptcha() {
const { data } = await adminClient.get<ApiResponse<AdminCaptcha>>('/admin/auth/captcha')
return data.data
}
export async function loginAdmin(
username: string,
password: string,
captchaId: string,
captchaCode: string
) {
const { data } = await adminClient.post<ApiResponse<AdminLoginData>>('/admin/auth/login', {
username,
password,
captcha_id: captchaId,
captcha_code: captchaCode,
})
return data.data
}
export async function fetchAdminMe() {
const { data } = await adminClient.get<ApiResponse<AdminUser>>('/admin/me')
return data.data
}
export async function logoutAdmin() {
await adminClient.post('/admin/auth/logout')
}
export async function changeAdminPassword(oldPassword: string, newPassword: string) {
await adminClient.put('/admin/admin-users/me/password', {
old_password: oldPassword,
new_password: newPassword,
})
}
export async function fetchAdminDashboard() {
const { data } = await adminClient.get<ApiResponse<DashboardData>>('/admin/dashboard')
return data.data
}