refactor: 全量迁移前端 API 调用到统一 api-services 服务层

- 新建 api-services-raw.ts 导出原始 axios 方法供特殊端点使用
- 完成 api-services.ts 全领域覆盖(auth/employee/roster/dashboard/attendance/payroll/socialInsurance/commercialInsurance/termination/policies/evidence/audit/calendar/companyFiles/notifications/settings/ai/platform/portal/survey/search)
- 迁移所有 47+ 页面文件:pages/、pages/roster/、pages/portal/、pages/platform/、pages/auth/、pages/dashboard/、pages/compliance/
- 移除所有直接 import api from '../../lib/api' 引用
- 修复 Termination.tsx / WorkProcess.tsx 中 string|null 类型错误
- 修复 SocialInsurance.tsx 中 api-services-raw delete 导入名
- 修复 PlatformLogin.tsx 变量遮蔽问题
- tsc --noEmit 零错误,vite build 成功
This commit is contained in:
selfrelease
2026-08-01 16:13:19 +08:00
parent fb924dea98
commit 16f22e6622
64 changed files with 1197 additions and 597 deletions
@@ -3,7 +3,7 @@
*/
import { useEffect, useState } from 'react'
import { Search, Ban, CheckCircle } from 'lucide-react'
import api from '../../lib/api'
import { platformApi } from '../../lib/api-services'
import { Input, Select } from '../../components/ui/Input'
import Button from '../../components/ui/Button'
@@ -37,17 +37,17 @@ export default function PlatformUsers() {
const params: any = { page, pageSize }
if (search) params.search = search
if (orgFilter) params.orgId = orgFilter
const res = await api.get('/platform/users', { params }) as any
setUsers(res.data.list)
setTotal(res.data.total)
const res = await platformApi.users(params) as any
setUsers(res.list)
setTotal(res.total)
} finally {
setLoading(false)
}
}
useEffect(() => {
api.get('/platform/orgs', { params: { pageSize: 200 } }).then((res: any) => {
setOrgs(res.data.list.map((o: any) => ({ id: o.id, name: o.name })))
platformApi.orgs({ pageSize: 200 }).then((res: any) => {
setOrgs(res.list.map((o: any) => ({ id: o.id, name: o.name })))
})
}, [])
@@ -56,7 +56,7 @@ export default function PlatformUsers() {
const handleToggle = async (user: UserItem) => {
try {
await api.put(`/platform/users/${user.id}/toggle`)
await platformApi.toggleUser(user.id)
fetchUsers()
} catch (err: any) {
alert(err.response?.data?.error?.message || '操作失败')