zhangjf 3b0b10d5b2 fix: 修复前端API路径与网关路由配置匹配
问题:前端API包含/api/v1导致路径重复
- 前端: /fund/sys/api/v1/auth/login
- 网关StripPrefix=2后: /api/v1/auth/login
- PrefixPath=/api/v1后: /api/v1/api/v1/auth/login 

修复:移除前端API中的/api/v1前缀

fund-admin修改:
- auth.ts: /sys/auth/login
- user.ts: /sys/sys/user/page
- tenant.ts: /sys/sys/tenant/page
- customer.ts: /cust/cust/customer/page
- project.ts: /proj/proj/project/page
- expense.ts: /exp/exp/expense/page
- receivable.ts: /receipt/receipt/receivable/page
- report.ts: /report/report/dashboard/stats
- file.ts: /file/file/upload
- menu.ts: /sys/sys/menu/tree
- role.ts: /sys/sys/role/page
- dept.ts: /sys/sys/dept/list
- config.ts: /sys/sys/config/page
- FileUpload组件: /fund/file/file/upload

fund-mobile修改:
- index.ts: 统一移除/api/v1,添加模块名重复

路由流程示例:
- 前端请求: /fund/sys/auth/login
- StripPrefix=2: /auth/login
- PrefixPath=/api/v1: /api/v1/auth/login ✓
2026-02-22 22:56:00 +08:00

69 lines
1.9 KiB
TypeScript

import request from './request'
// 用户认证
export function login(data: { username: string; password: string }) {
return request.post('/sys/auth/login', data)
}
export function getUserInfo() {
return request.get('/sys/auth/info')
}
export function logout() {
return request.post('/sys/auth/logout')
}
// 项目管理
export function getProjectList(params?: { pageNum: number; pageSize: number; projectName?: string }) {
return request.get('/proj/proj/project/page', { params })
}
export function getProjectById(id: number) {
return request.get(`/proj/proj/project/${id}`)
}
// 客户管理
export function getCustomerList(params?: { pageNum: number; pageSize: number; customerName?: string }) {
return request.get('/cust/cust/customer/page', { params })
}
// 支出管理
export function createExpense(data: any) {
return request.post('/exp/exp/expense', data)
}
export function getExpenseList(params: { pageNum: number; pageSize: number }) {
return request.get('/exp/exp/expense/page', { params })
}
// 应收款管理
export function getReceivableList(params: { pageNum: number; pageSize: number; status?: string }) {
return request.get('/receipt/receipt/receivable/page', { params })
}
export function getUpcomingDueList(daysWithin: number = 7) {
return request.get(`/receipt/receipt/receivable/upcoming-due?daysWithin=${daysWithin}`)
}
// 统计数据
export function getTodayIncome() {
return request.get('/receipt/receipt/receivable/stats/today-income')
}
export function getTodayExpense() {
return request.get('/exp/exp/expense/stats/today-expense')
}
export function getUnpaidAmount() {
return request.get('/receipt/receipt/receivable/stats/unpaid-amount')
}
export function getOverdueCount() {
return request.get('/receipt/receipt/receivable/stats/overdue-count')
}
// 支出类型
export function getExpenseTypeTree() {
return request.get('/exp/exp/expense-type/tree')
}