zhangjf 8490b7a2c6 fix: 全面修复网关路由与前端API路径一致性问题
问题分析:
1. 后端Controller路径不一致:
   - fund-cust: /api/v1/customer (不是/api/v1/cust/customer)
   - fund-proj: /api/v1/project (不是/api/v1/proj/project)
   - fund-sys: /api/v1/auth 和 /api/v1/sys/* 两种路径

2. 之前的错误修改导致路径不匹配

解决方案:
- 网关: StripPrefix=1 + PrefixPath=/api/v1
- 前端: baseURL=/fund,路径直接对应后端路径

网关路由配置:
- fund-sys: /fund/auth/**,/fund/sys/** -> /api/v1/auth/*,/api/v1/sys/*
- fund-cust: /fund/customer/** -> /api/v1/customer/*
- fund-proj: /fund/project/**,/fund/requirement/** -> /api/v1/project/*,/api/v1/requirement/*
- fund-exp: /fund/exp/** -> /api/v1/exp/*
- fund-receipt: /fund/receipt/** -> /api/v1/receipt/*
- fund-report: /fund/report/** -> /api/v1/report/*
- fund-file: /fund/file/** -> /api/v1/file/*

前端API路径规范:
- 认证: /auth/login -> /api/v1/auth/login
- 用户: /sys/user/page -> /api/v1/sys/user/page
- 客户: /customer/page -> /api/v1/customer/page
- 项目: /project/page -> /api/v1/project/page
- 支出: /exp/expense/page -> /api/v1/exp/expense/page
- 收款: /receipt/receivable/page -> /api/v1/receipt/receivable/page
- 报表: /report/stats -> /api/v1/report/stats
- 文件: /file/upload -> /api/v1/file/upload

修改文件:
- fund-gateway/application.yml: 路由配置调整
- TenantGatewayFilter.java: 白名单路径修正
- TokenAuthFilter.java: 白名单路径修正
- fund-admin/src/api/*.ts: 所有API路径修正
- fund-mobile/src/api/index.ts: 所有API路径修正
- FileUpload组件: 上传路径修正
2026-02-22 23:06:54 +08:00

71 lines
1.4 KiB
TypeScript

import { request } from './request'
// 获取参数分组列表
export function getConfigGroups() {
return request.get('/sys/config/groups')
}
// 获取参数列表
export function getConfigList(groupCode?: string) {
return request.get('/sys/config/list', {
params: { groupCode }
})
}
// 获取参数分页
export function getConfigPage(params: {
pageNum: number
pageSize: number
configKey?: string
groupCode?: string
}) {
return request.get('/sys/config/page', { params })
}
// 获取参数详情
export function getConfigById(id: number) {
return request.get(`/sys/config/${id}`)
}
// 根据key获取参数值
export function getConfigByKey(configKey: string) {
return request.get(`/sys/config/key/${configKey}`)
}
// 创建参数
export function createConfig(data: {
configKey: string
configValue: string
configType?: string
description?: string
groupCode?: string
groupName?: string
sortOrder?: number
}) {
return request.post('/sys/config', data)
}
// 更新参数
export function updateConfig(data: {
id: number
configValue: string
description?: string
status?: number
sortOrder?: number
}) {
return request.put('/sys/config', data)
}
// 批量更新参数值
export function batchUpdateConfig(configs: Array<{
id: number
configValue: string
}>) {
return request.put('/sys/config/batch', configs)
}
// 删除参数
export function deleteConfig(id: number) {
return request.delete(`/sys/config/${id}`)
}