datai/docs/archive/api-docs/file/SysFileInfoController/0002-export.md

2.5 KiB
Raw Permalink Blame History

导出文件列表

接口信息

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

功能描述

导出文件列表到 Excel 文件,支持条件过滤。可以根据文件名、文件路径、存储类型、文件类型等条件进行筛选,然后导出符合条件的文件列表。

请求参数

请求体 (JSON)

{
  "fileName": "test",
  "filePath": "/upload/",
  "storageType": "minio",
  "fileType": "jpg"
}
参数名 类型 必填 描述 示例
fileName String 文件名(模糊查询) test.jpg
filePath String 文件路径(模糊查询) /upload/
storageType String 存储类型 minio, local, oss
fileType String 文件类型 jpg, png, pdf

响应数据

成功响应

HTTP 状态码: 200 OK

Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Content-Disposition: attachment; filename="文件数据.xlsx"

直接返回 Excel 文件流,浏览器会自动触发下载。

失败响应

HTTP 状态码: 401 Unauthorized

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

接口示例

请求示例

curl -X POST "http://localhost:8080/file/info/export" \
  -H "Authorization: Bearer [token]" \
  -H "Content-Type: application/json" \
  -d '{
    "fileName": "test",
    "storageType": "minio"
  }' \
  -o file_list.xlsx

响应示例

成功: 返回 Excel 文件流,浏览器自动下载文件

失败: 返回错误信息

错误处理

  • 没有权限访问时返回 401 错误
  • 参数错误时返回 400 错误

注意事项

  • 需要权限system:file:export
  • 导出文件名为:文件数据.xlsx
  • 使用 @Log 注解记录操作日志
  • 只导出删除标志为 0 的文件(未删除的文件)
  • 使用 ExcelUtil 工具类生成 Excel 文件

相关接口

实现细节

  • 使用 ISysFileInfoService.selectSysFileInfoList() 查询文件列表
  • 使用 ExcelUtil 工具类生成 Excel 文件
  • 使用 @Log 注解记录操作日志,业务类型为 EXPORT
  • 使用 @PreAuthorize 注解进行权限控制
  • 继承 BaseController 获取基础功能