189 Commits

Author SHA1 Message Date
zhangjf
8a3d9017e1 feat(req): 优化请款管理模块实体类
-完善FundRequest请款实体类
- 优化字段定义和业务逻辑
-增强请款管理功能
2026-03-02 07:31:29 +08:00
zhangjf
46b6b2c396 feat(receipt):完善收款管理模块功能
- 优化FundReceipt收款实体类和Receivable应收实体类
- 更新DTO和VO数据传输对象
-增强收款管理业务逻辑
2026-03-02 07:31:21 +08:00
zhangjf
5425271f94 feat(proj): 优化项目管理模块实体类
-完善Project项目实体类和Requirement需求实体类
- 优化字段定义和业务逻辑
-增强项目管理功能
2026-03-02 07:31:14 +08:00
zhangjf
d69c9b060e feat(file): 优化文件管理模块实体类
-完善FileRecord文件记录实体类
- 优化字段定义和业务逻辑
-增强文件管理功能
2026-03-02 07:31:06 +08:00
zhangjf
dfea91308e feat(exp):完善支出管理模块功能
- 优化FundExpense支出实体类和控制器
-完善ExpenseType支出类型相关类
- 更新VO和Service实现类
-增强支出管理业务逻辑
2026-03-02 07:30:59 +08:00
zhangjf
c9ef7d7306 feat(cust): 优化客户管理模块实体类
- 完善CustomerContact客户联系人实体
- 优化实体类字段定义和注解配置
-增强数据校验和业务逻辑
2026-03-02 07:30:51 +08:00
zhangjf
6dfc8ea686 feat(common): 优化基础框架和认证模块
- 完善Token认证服务和用户上下文管理
- 优化BaseEntity基础实体类
- 更新pom.xml依赖配置
-增强通用工具类功能
2026-03-02 07:30:44 +08:00
zhangjf
ab412935e1 feat(管理端): 优化支出类型管理界面
-完善支出类型列表展示
- 优化表单验证逻辑
- 改进用户交互体验
-统一UI组件样式
2026-03-02 07:30:36 +08:00
zhangjf
e93488d3d8 feat(sql): 更新数据库初始化脚本
-完善各模块表结构定义
- 优化索引和约束配置
- 更新初始化数据
-统一SQL脚本格式
2026-03-02 07:30:29 +08:00
zhangjf
83e9b2b658 docs: 更新项目文档和功能清单
- 重新整理项目功能清单文档
- 更新架构设计文档
- 完善需求文档内容
-统一文档命名规范
2026-03-02 07:30:22 +08:00
zhangjf
7ecebc9518 feat(common): 新增雪花算法ID生成器用于分布式唯一ID生成
- 添加SnowflakeIdGenerator工具类
-支持生成19位字符串ID和Long类型ID
- 解决前端JavaScript大数精度丢失问题
- 为MyBatis Plus IdentifierGenerator提供支持
2026-03-02 07:30:14 +08:00
zhangjf
bc56bd672b revert: 恢复 expense API路径与 gateway 配置保持一致
架构说明:
- 前端 baseURL: /fund
- 网关路由:Path=/fund/exp/**
- StripPrefix=1: 去掉/fund 前缀
- PrefixPath=/api/v1: 自动添加/api/v1 前缀
- 后端 Controller: /api/v1/exp/expense-type

请求流程:
前端:GET /fund/exp/expense-type/page
网关:匹配 Path=/fund/exp/** → StripPrefix=1 → PrefixPath=/api/v1
后端:接收 /api/v1/exp/expense-type/page ✓

与其他模块保持一致:
- customer: GET /customer/page → /api/v1/customer/page
- project: GET /project/page → /api/v1/project/page
- expense: GET /exp/expense-type/page → /api/v1/exp/expense-type/page

设计原则:
- 前端不硬编码/api/v1,由网关统一处理
- 符合网关路由与 API路径分离的架构设计
2026-03-01 22:39:02 +08:00
zhangjf
256a592478 fix(管理端): 修复支出类型 API路径缺失/api/v1 前缀
问题现象:
- 管理端支出类型页面无法显示数据库数据
- 后端接口返回 404

根本原因:
- ExpenseTypeController 的路径是 /api/v1/exp/expense-type
- 前端 expense.ts 中所有 API 调用都缺少 /api/v1 前缀

修复内容:
- getExpenseTypeList: /exp/expense-type/page → /api/v1/exp/expense-type/page
- getExpenseTypeTree: /exp/expense-type/tree → /api/v1/exp/expense-type/tree
- createExpenseType: /exp/expense-type → /api/v1/exp/expense-type
- updateExpenseType: /exp/expense-type/{id} → /api/v1/exp/expense-type/{id}
- deleteExpenseType: /exp/expense-type/{id} → /api/v1/exp/expense-type/{id}
- getExpenseList: /exp/expense/page → /api/v1/exp/expense/page
- getExpenseById: /exp/expense/{id} → /api/v1/exp/expense/{id}
- createExpense: /exp/expense → /api/v1/exp/expense
- updateExpense: /exp/expense/{id} → /api/v1/exp/expense/{id}
- deleteExpense: /exp/expense/{id} → /api/v1/exp/expense/{id}
- 所有审批流程 API 同样添加 /api/v1 前缀
- exportExpense 导出 URL 也添加 /api/v1 前缀

技术细节:
- 统一 API路径规范,与后端 Controller 保持一致
- 符合项目 RESTful API 设计标准(/api/v1/模块/资源)
2026-03-01 22:28:14 +08:00
zhangjf
a74875eeda feat(移动端): 新增支出使用 COS 上传附件
1. API 增强 (src/api/index.ts):
   - 新增 uploadFile 函数:支持文件上传到腾讯云 COS
   - 新增 getFileList 函数:获取文件列表
   - 新增 deleteFile 函数:删除文件

2. 新增支出页面优化 (src/views/expense/Add.vue):
   - 修改附件上传逻辑:从 base64 改为 COS 上传
   - onAfterRead: 调用 uploadFile API 上传到 COS
   - 获取 COS 返回的文件路径并存储
   - 提交时将 COS 路径数组转为逗号分隔字符串
   - 图片预览直接使用 COS URL
   - 添加上传进度提示和成功/失败反馈

技术实现:
- 使用 FormData 进行 multipart/form-data 上传
- 业务类型标识为'expense'
- 附件以 COS 完整 URL 形式存储(逗号分隔)
- 支持多图片上传(最多 9 张)
- 每张图片独立上传到 COS,获得永久可访问链接
2026-03-01 22:23:59 +08:00
zhangjf
da4488dccc feat(移动端): 优化支出管理功能
1. 新增支出 (Add.vue):
   - 增加图片附件上传功能(限制为图片类型)
   - 支持最多上传 9 张图片
   - 实现图片预览和删除功能
   - 将图片转 base64 格式提交到后端 attachments 字段

2. 支出列表 (List.vue):
   - 重构卡片布局为 5 行展示:
     * 第一行:标题 + 支出时间(右侧对齐)
     * 第二行:支出类型(左)+ 支出金额(右,红色突出显示)
     * 第三行:收款单位
     * 第四行:支付描述(可选,有内容时显示)
     * 第五行:查看附件按钮(有附件时显示,蓝色可点击)
   - 添加 formatDateTime 函数格式化日期时间
   - 添加 getAttachmentCount 函数计算附件数量
   - 添加 previewAttachments 函数实现图片预览
   - 优化样式:分隔线、图标、标签等细节美化

技术实现:
- 使用 Vant 的 van-uploader 组件上传图片
- 使用 ImagePreview 组件预览图片
- 附件以 base64 逗号分隔字符串形式存储
- 响应式布局适配移动端
2026-03-01 22:17:20 +08:00
zhangjf
6923024650 修复前端登录租户ID 缺失问题 + 新增集成测试
1. 管理后台 (fund-admin):
   - src/api/auth.ts: 登录请求自动添加默认租户ID (tenantId: 1)
   - src/views/login/index.vue: 优化 MD5 加密注释

2. 移动端 (fund-mobile):
   - src/api/index.ts: 登录 API 自动添加默认租户ID (tenantId: 1)

3. 系统服务 (fund-sys):
   - 新增 AuthControllerIntegrationTest.java: 登录接口集成测试
   - 验证登录请求格式和响应格式的正确性
   - 演示完整的登录流程(需要数据库支持)

4. 依赖更新:
   - fund-admin/package-lock.json
   - fund-mobile/package-lock.json

技术细节:
- 解决后端要求 tenantId 必填导致的 400 错误
- 前后端一致的租户ID 默认值处理
- 端到端登录流程验证
2026-03-01 22:03:03 +08:00
zhangjf
455a20c1df 完善项目配置和测试用例
新增内容:
1. 添加 AGENTS.md 和 CLAUDE.md AI 助手配置文件
2. 添加安全修复说明文档 (doc/security-fixes.md)
3. 新增单元测试用例:
   - fund-common: TenantContextHolderTest, UserContextHolderTest, PageResultTest, ResultTest
   - fund-sys: AuthServiceImplTest, RoleServiceImplTest, TenantServiceImplTest

修改内容:
1. 数据库初始化脚本更新 (fund_sys_init.sql)
2. 前端依赖更新 (package.json)
3. 登录和密码管理功能优化:
   - 管理后台和移动端登录页面
   - 密码修改功能
4. 租户上下文处理优化 (TenantLineHandlerImpl)
5. 网关过滤器增强:
   - TenantGatewayFilter 租户过滤
   - TokenAuthFilter 认证过滤
6. Controller 层代码优化
7. DTO 和 Service 层代码改进

技术改进:
- 密码加密方式从 BCrypt 改为 MD5(前后端一致)
- 登录验证流程优化,支持多租户
- 增加日志输出便于调试
- 代码规范性和可维护性提升
2026-03-01 19:06:42 +08:00
zhangjf
645056eaf0 添加服务启动方式说明文档
更新内容:
1. 在单机部署文档中增加 4.8 节,详细说明服务启动方式
2. 在部署运维文档中增加 1.5 节,说明开发环境和生产环境的启动方式

关键约束:
- 明确说明不能使用 java -jar 方式启动(瘦包打包导致)
- 开发环境:使用 mvn spring-boot:run 或 IDE 直接运行
- 生产环境:使用 bin/start.sh 脚本启动
- 解释技术原因:Maven Assembly Plugin 瘦包打包、Manifest 配置缺失、类加载机制

调试建议:
- 开发环境推荐使用 IDE 或 Maven 插件
- 生产环境始终使用启动脚本
- 提供日志查看、进程检查等调试方法
2026-03-01 19:05:04 +08:00
zhangjf
46e30c8b06 优化用户登录密码加密方式:从 BCrypt 改为 MD5
主要变更:
1. 新增 Md5Util 工具类,提供 MD5 加密和密码验证方法
2. 修改 AuthServiceImpl 直接比对 MD5 值(前端已加密,无需再次加密)
3. 修改 UserServiceImpl 使用 MD5 加密用户密码
4. 前端 Login.vue 添加 MD5 加密函数,提交前对密码进行 MD5 加密
5. 更新数据库初始化脚本,将 admin 密码改为 MD5 值
6. 更新设计文档中的密码加密说明
7. 添加 Lombok 依赖到 fund-sys 模块
8. 增加日志打印,记录密码加密过程便于调试

技术细节:
- 前端流程:用户输入 → MD5 加密 → 传递给后端
- 后端流程:接收 MD5 值 → 与数据库 MD5 值直接 equals 比对
- 默认管理员密码:admin/admin123,MD5: 0192023a7bbd73250516f069df18b500
2026-02-28 06:51:20 +08:00
zhangjf
889ce77db4 feat: 创建资金服务平台专用agents集合 - 包含架构师、数据库设计师、前端开发专家、DevOps工程师和代码质量审查专家 2026-02-25 19:06:25 +08:00
zhangjf
fb6554f32c feat: 完善entity-db-sync和maven-assembly技能包 - 增强部署目录管理和实践规范 2026-02-25 18:59:33 +08:00
zhangjf
e5d9db10a8 feat: requirement表添加remark字段 2026-02-23 16:42:41 +08:00
zhangjf
852af7ee26 fix: 远程执行命令时加载环境变量
- 使用 bash -l 加载登录 shell 环境变量
- 解决 SSH 非交互式 shell 不加载 .bash_profile 导致 java 命令找不到的问题
2026-02-23 15:51:41 +08:00
zhangjf
112a970563 fix: 服务部署脚本优化,不再上传整个tar.gz
- 本地解压tar.gz提取jar文件
- 只上传服务jar和fund-common*.jar
- 大幅减少上传时间和带宽消耗
2026-02-23 15:35:17 +08:00
zhangjf
2a74f237df fix: 修复部署脚本路径问题
- 使用绝对路径获取项目根目录
- 修正打包文件路径引用
2026-02-23 15:26:23 +08:00
zhangjf
fe51e87c17 fix: 调整服务部署脚本
- 启动脚本路径改为 bin 目录
- 只更新服务jar和fund-common*.jar,不再全量覆盖lib目录
2026-02-23 15:08:04 +08:00
zhangjf
1e346c3a2e feat: 添加生产环境部署脚本
- deploy-config.sh: 部署配置文件(服务器信息、路径配置)
- deploy-mobile.sh: 移动端部署脚本
- deploy-admin.sh: 管理后台部署脚本
- deploy-service.sh: 服务部署脚本(只更新lib目录)
- deploy-all.sh: 全量部署脚本
2026-02-23 15:03:14 +08:00
zhangjf
06dfa26514 fix: 修复需求查询参数名requirementTitle改为requirementName 2026-02-23 14:47:23 +08:00
zhangjf
df2f1cdfa2 fix: 项目列表字段对齐,ProjectVO的id改为projectId,添加customerName 2026-02-23 14:36:59 +08:00
zhangjf
83e8712dfc fix: 新增支出页面添加收款单位必填字段 2026-02-23 14:23:27 +08:00
zhangjf
9498201313 fix: 新增需求页面添加需求编号和客户ID字段,修正需求名称字段 2026-02-23 14:14:38 +08:00
zhangjf
f87ee0b51d feat: 移动端新增项目添加项目编码和项目类型字段 2026-02-23 14:07:23 +08:00
zhangjf
ff9f4d05ad fix: 移动端列表页首次加载pageNum从1开始
**问题:**
- van-list组件的@load事件在挂载时自动触发
- 导致onLoad先执行pageNum++,首次请求时pageNum变成2

**修复:**
- 在onMounted中主动加载第一页数据
- onLoad只处理加载更多逻辑
- 统一所有列表页:customer, project, expense, requirement, receivable
2026-02-23 13:43:43 +08:00
zhangjf
9b545b3f00 fix: 客户列表查询失败问题修复
**问题根因:**
1. PageResult返回字段list与前端期望records不一致
2. CustomerVO字段名与前端期望不一致

**修改内容:**
- fund-common: PageResult字段list改为records
- fund-cust: CustomerVO字段id改为customerId
- fund-mobile: 客户列表页面字段对齐
- fund-admin: 客户管理页面字段对齐
2026-02-23 13:26:07 +08:00
zhangjf
011a6bfb3f fix: 移动端新增客户表单与后端字段对齐
- 新增联系人(contact)字段,设为必填
- 客户编码(customerCode)设为必填
- 移除后端不支持的字段:简称、客户等级、所属行业
- 表单字段与后端CustomerCreateDTO保持一致
2026-02-23 13:14:17 +08:00
zhangjf
965d98cab5 feat: 移动端新增客户页面添加客户编码字段
- 新增客户编码输入框(customerCode)
- 位于客户名称字段之前
2026-02-23 13:05:57 +08:00
zhangjf
69f437dbb3 fix: 移动端表单优化
1. 新增页面必填项标记
   - expense/Add.vue: 支出标题、支出类型、支出金额添加红色星号必填标记
   - 其他使用 van-form 的页面已有 required 属性标记

2. 错误提示优化
   - 将 showToast 改为 showFailToast 显示错误提示
   - showFailToast 使用红色背景,错误信息更清晰可见
   - 涉及文件:
     - expense/Add.vue
     - requirement/Add.vue
     - receivable/Add.vue
     - project/Add.vue
     - customer/Add.vue
     - my/ChangePassword.vue
2026-02-23 12:56:52 +08:00
zhangjf
b5a954f008 fix: 修复列表页浮动添加按钮被底部Tabbar遮挡的问题
将列表页浮动添加按钮的bottom值从24px调整为80px:
- receivable/List.vue
- expense/List.vue
- requirement/List.vue

Tabbar高度64px,添加按钮需要预留足够空间避免被遮挡
2026-02-23 12:43:42 +08:00
zhangjf
205af48cb6 fix: 修复底部工具栏遮挡页面提交按钮的问题
1. 在App.vue中统一添加padding-bottom: 80px
2. 移除各列表页面重复的padding-bottom设置
   - expense/List.vue
   - requirement/List.vue
   - receivable/List.vue
2026-02-23 12:37:20 +08:00
zhangjf
400b7272d4 feat: 移动端新增修改密码功能
1. 新增修改密码页面 (my/ChangePassword.vue)
   - 支持输入旧密码、新密码、确认密码
   - 密码验证:至少6位、两次输入一致性校验
   - 修改成功后自动清除登录信息并跳转到登录页

2. 新增API接口 (updatePassword)
   - PUT /sys/profile/password
   - 参数: oldPassword, newPassword, confirmPassword

3. 更新路由配置
   - 新增 /my/change-password 路由

4. 更新我的页面
   - 修改密码点击跳转到修改密码页面
2026-02-23 12:32:36 +08:00
zhangjf
e7f1b39ac8 style: 移动端首页UI调整
1. 删除顶部标题区域,节省页面垂直空间
2. 快捷操作调整为2行布局(第一行3个,第二行2个)
3. 优化快捷操作图标和文字大小
2026-02-23 12:26:58 +08:00
zhangjf
d3a77c23f1 feat: 移动端首页重构与业务模块完善
1. 首页布局调整
   - 保留今日概览板块
   - 快捷操作板块:新增需求工单、新增应收款、新增支出、新增项目、新增客户
   - 新增业务服务板块:需求工单、应收款管理、支出管理、项目管理、客户管理入口

2. 新增页面
   - 需求工单:列表页(支持搜索)、新增页
   - 支出管理:列表页(支持搜索)、保留新增页
   - 应收款:新增页、列表页添加搜索功能
   - 项目:新增页、列表页优化搜索参数
   - 客户:新增页、列表页优化搜索参数

3. API更新
   - 新增需求工单相关API(getRequirementList、getRequirementById、createRequirement)
   - 新增项目新增API(createProject)
   - 新增客户新增API(createCustomer)
   - 新增应收款新增API(createReceivable)
   - 更新搜索参数为统一的keyword格式

4. 路由更新
   - 新增需求工单列表/新增路由
   - 新增支出管理列表路由
   - 新增应收款新增路由
   - 新增项目新增路由
   - 新增客户新增路由
2026-02-23 11:51:52 +08:00
zhangjf
5e782ac8cc docs: 增加前端API集中管理设计规范
1. 架构设计文档 v1.7 -> v1.8
   新增 6.1.5 API集中管理规范:
   - 目录结构示例:api/index.ts + api/request.ts + api/modules/
   - api/index.ts 代码示例
   - Vue组件调用示例(正确vs错误对比)
   - 规范要求:禁止硬编码、统一入口、路径简化、便于维护

2. Agents.md v1.2 -> v1.3
   新增 5.6 前端API集中管理规范:
   - 目录结构说明
   - 规范要求表格
   - 正确/错误代码示例对比

规范要点:
- 采用独立目录或文件集中管理后台API请求
- Vue组件中禁止直接使用 request.get('/xxx/xxx') 硬编码URL
- 所有API函数从 @/api 统一导出,按模块分组
- API路径变更时只需修改 api/index.ts 一处
2026-02-23 11:26:18 +08:00
zhangjf
2e7fb5f5d4 fix: 修复移动端API路径错误,统一归集到api/index.ts
问题:
- Vue文件中直接使用错误的API路径 /api/v1/xxx
- 导致请求URL重复包含/api/v1,被当作静态资源处理

修复:
1. 重构src/api/index.ts,按模块分类集中定义所有API
   - 用户认证:login, getUserInfo, logout
   - 项目管理:getProjectList, getProjectById
   - 客户管理:getCustomerList
   - 支出管理:createExpense, getExpenseList, getExpenseTypeTree, getTodayExpense
   - 应收款管理:getReceivableList, getUpcomingDueList, getTodayIncome, getUnpaidAmount, getOverdueCount

2. 修复各Vue文件,使用集中的API定义
   - Home.vue: 使用getTodayIncome, getTodayExpense, getUnpaidAmount
   - receivable/List.vue: 使用getReceivableList
   - expense/Add.vue: 使用createExpense, getExpenseTypeTree
   - Login.vue: 使用login

正确的API路径:
- 前端请求: /fund/receipt/receivable/page
- Gateway转发: /api/v1/receipt/receivable/page
2026-02-23 11:18:44 +08:00
zhangjf
610054918a docs: 架构设计文档和Agents.md增加前端部署路径设计
1. 架构设计文档 v1.6 -> v1.7
   新增 6.1 前端部署路径设计章节:
   - 6.1.1 部署路径规划表
   - 6.1.2 Nginx配置示例
   - 6.1.3 前端构建配置(VITE_BASE等)
   - 6.1.4 API请求路径规范
   - 原有章节编号顺延(6.1->6.3, 6.2->6.4)

2. Agents.md v1.1 -> v1.2
   15.2 访问地址 改为 15.2 前端部署路径:
   - 新增前端部署路径规划表
   - 补充移动端H5开发环境访问地址
2026-02-23 11:01:19 +08:00
zhangjf
f8e0a51314 docs: 更新文档中的前端部署路径地址
部署路径更新:
- fund-admin 部署路径: /fadmin/
- fund-mobile 部署路径: /fmobile/
- API网关前缀: /fund

更新内容:
1. 部署运维文档.md
   - 本地开发访问地址添加移动端H5
   - Docker Compose架构图更新前端访问路径
   - 服务清单添加访问路径说明
   - Nginx配置示例更新为子路径部署

2. 单机部署文档.md
   - 部署架构图更新前端路径
   - 前端打包说明添加部署脚本和子路径说明
   - 新增4.5 Nginx配置章节
   - 添加前端解压部署步骤
2026-02-23 10:53:04 +08:00
zhangjf
807f894828 fix: 修复Login.vue登录API路径错误
- 将 '/sys/api/v1/auth/login' 修正为 '/auth/login'
- baseURL已配置为/fund,最终请求地址为 /fund/auth/login
2026-02-23 10:47:30 +08:00
zhangjf
1a5b583c2f feat: fund-mobile支持Nginx子路径/fmobile部署
- 新增.env.development/.env.production环境配置
- vite.config.ts支持VITE_BASE动态base路径
- router使用import.meta.env.BASE_URL
- API baseURL使用环境变量
- 新增vite-env.d.ts类型声明
2026-02-23 10:28:51 +08:00
zhangjf
bd5f8ab468 fix: 数据库脚本与实体类一致性修复 + fund-admin Nginx子路径部署支持
1. 数据库脚本修复:
   - fund_sys_init.sql: sys_config表添加group_code/group_name/sort_order/remark字段
   - fund_proj_init.sql: 添加requirement表(需求工单)
   - fund_exp_init.sql: 添加fund_expense表缺失字段
   - 删除重复的doc/requirement.sql

2. fund-admin Nginx子路径部署支持:
   - 新增.env.development/.env.production环境配置
   - vite.config.ts支持VITE_BASE动态base路径
   - router使用import.meta.env.BASE_URL
   - API baseURL使用环境变量
   - deploy-frontend-nginx.sh支持/fadmin部署前缀

3. 架构文档更新:
   - 数据库设计文档新增4.4实体类与SQL脚本同步规范
   - 新增4.5自动化检查机制
2026-02-23 00:12:39 +08:00
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