datai/datai-scenes/datai-scene-salesforce/docs/api-docs/file/SysFileInfoController/0004-add.md
Kris 2e6f087732 docs: 完成REQ-010-17和REQ-010-2的文档创建
- 完成REQ-010-17(性能优化和限流处理)的所有6个阶段
  - 创建ADR文档:0026-performance-optimization.md
  - 创建Prompt文档:027-performance-optimization.md
  - 创建会话记录:20260119-performance-optimization.md
  - 创建变更记录:20260119-performance-optimization.md
  - 创建复盘报告:20260119-performance-optimization-retro.md
  - 更新index.md和CHANGELOG.md

- 完成REQ-010-2(基础实体类和Mapper创建)的前3个阶段
  - 更新ADR文档:0011-entity-mapper-create.md
  - 创建Prompt文档:002-entity-mapper-create.md
  - 更新index.md

所有文档均按照SSOT方法论创建,包括需求定义、架构决策、提示词资产化、执行会话、变更记录和闭环复盘。
2026-01-19 10:06:09 +08:00

3.0 KiB
Raw Blame History

新增文件

接口信息

  • 接口名称: 新增文件
  • 接口路径: /file/info
  • 请求方法: POST
  • 模块归属: file
  • 版本号: v1.0.0
  • 创建日期: 2026-01-18
  • 最后更新: 2026-01-18

功能描述

新增文件记录到数据库。通常在文件上传成功后自动调用,也可以手动创建文件记录。

请求参数

请求体 (JSON)

{
  "fileName": "test.jpg",
  "filePath": "/upload/2026/01/18/1234567890_test.jpg",
  "storageType": "minio",
  "fileType": "jpg",
  "fileSize": 102400,
  "md5": "d41d8cd98f00b204e9800998ecf8427e"
}
参数名 类型 必填 描述 示例
fileName String 原始文件名 test.jpg
filePath String 统一逻辑路径(/开头) /upload/2026/01/18/1234567890_test.jpg
storageType String 存储类型local/minio/oss minio
fileType String 文件类型/后缀 jpg
fileSize Long 文件大小(字节) 102400
md5 String 文件MD5 d41d8cd98f00b204e9800998ecf8427e

响应数据

成功响应

HTTP 状态码: 200 OK

{
  "code": 200,
  "msg": "操作成功",
  "data": 1
}
字段名 类型 描述 示例
data Integer 影响的行数 1

失败响应

HTTP 状态码: 401 Unauthorized

{
  "code": 401,
  "msg": "没有权限访问",
  "data": null
}

HTTP 状态码: 500 Internal Server Error

{
  "code": 500,
  "msg": "新增文件失败",
  "data": null
}

接口示例

请求示例

curl -X POST "http://localhost:8080/file/info" \
  -H "Authorization: Bearer [token]" \
  -H "Content-Type: application/json" \
  -d '{
    "fileName": "test.jpg",
    "filePath": "/upload/2026/01/18/1234567890_test.jpg",
    "storageType": "minio",
    "fileType": "jpg",
    "fileSize": 102400,
    "md5": "d41d8cd98f00b204e9800998ecf8427e"
  }'

响应示例

成功:

{
  "code": 200,
  "msg": "操作成功",
  "data": 1
}

错误处理

  • 没有权限访问时返回 401 错误
  • 参数错误时返回 400 错误
  • 数据库操作失败时返回 500 错误

注意事项

  • 需要权限system:file:add
  • 使用 @Log 注解记录操作日志
  • fileName、filePath、storageType 为必填字段
  • filePath 必须以 / 开头
  • storageType 必须是有效的存储类型local/minio/oss
  • 创建人和创建时间会自动设置

相关接口

实现细节

  • 使用 ISysFileInfoService.insertSysFileInfo() 插入文件记录
  • 使用 @Log 注解记录操作日志,业务类型为 INSERT
  • 使用 @PreAuthorize 注解进行权限控制
  • 继承 BaseController 获取基础功能
  • 使用 toAjax() 方法封装响应