index.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import request from '@/config/axios'
  2. export interface FilePageReqVO extends PageParam {
  3. path?: string
  4. type?: string
  5. createTime?: Date[]
  6. }
  7. // 文件预签名地址 Response VO
  8. export interface FilePresignedUrlRespVO {
  9. // 文件配置编号
  10. configId: number
  11. // 文件上传 URL
  12. uploadUrl: string
  13. // 文件 URL
  14. url: string
  15. }
  16. // 查询文件列表
  17. export const getFilePage = (params: FilePageReqVO) => {
  18. return request.get({ url: '/infra/file/page', params })
  19. }
  20. // 删除文件
  21. export const deleteFile = (id: number) => {
  22. return request.delete({ url: '/infra/file/delete?id=' + id })
  23. }
  24. // 获取文件预签名地址
  25. export const getFilePresignedUrl = (path: string) => {
  26. return request.get<FilePresignedUrlRespVO>({
  27. url: '/infra/file/presigned-url',
  28. params: { path }
  29. })
  30. }
  31. // 创建文件
  32. export const createFile = (data: any) => {
  33. return request.post({ url: '/infra/file/create', data })
  34. }
  35. // 上传文件
  36. export const updateFile = (data: any) => {
  37. return request.upload({ url: '/infra/file/upload', data })
  38. }