import { File } from '@/api/interface/file'; import http from '@/api'; import { AxiosRequestConfig } from 'axios'; import { ResPage } from '../interface'; import { TimeoutEnum } from '@/enums/http-enum'; import { ReqPage } from '@/api/interface'; export const GetFilesList = (params: File.ReqFile) => { return http.post('files/search', params, TimeoutEnum.T_5M); }; export const GetUploadList = (params: File.SearchUploadInfo) => { return http.post>('files/upload/search', params); }; export const GetFilesTree = (params: File.ReqFile) => { return http.post('files/tree', params); }; export const CreateFile = (form: File.FileCreate) => { return http.post('files', form); }; export const DeleteFile = (form: File.FileDelete) => { return http.post('files/del', form); }; export const BatchDeleteFile = (form: File.FileBatchDelete) => { return http.post('files/batch/del', form); }; export const ChangeFileMode = (form: File.FileCreate) => { return http.post('files/mode', form); }; export const CompressFile = (form: File.FileCompress) => { return http.post('files/compress', form); }; export const DeCompressFile = (form: File.FileDeCompress) => { return http.post('files/decompress', form); }; export const GetFileContent = (params: File.ReqFile) => { return http.post('files/content', params); }; export const SaveFileContent = (params: File.FileEdit) => { return http.post('files/save', params); }; export const CheckFile = (path: string) => { return http.post('files/check', { path: path }); }; export const UploadFileData = (params: FormData, config: AxiosRequestConfig) => { return http.upload('files/upload', params, config); }; export const ChunkUploadFileData = (params: FormData, config: AxiosRequestConfig) => { return http.upload('files/chunkupload', params, config); }; export const RenameRile = (params: File.FileRename) => { return http.post('files/rename', params); }; export const ChangeOwner = (params: File.FileOwner) => { return http.post('files/owner', params); }; export const WgetFile = (params: File.FileWget) => { return http.post('files/wget', params); }; export const MoveFile = (params: File.FileMove) => { return http.post('files/move', params); }; export const DownloadFile = (params: File.FileDownload) => { return http.download('files/download', params, { responseType: 'blob', timeout: TimeoutEnum.T_40S }); }; export const ComputeDirSize = (params: File.DirSizeReq) => { return http.post('files/size', params); }; export const FileKeys = () => { return http.get('files/keys'); }; export const getRecycleList = (params: ReqPage) => { return http.post>('files/recycle/search', params); }; export const reduceFile = (params: File.RecycleBinReduce) => { return http.post('files/recycle/reduce', params); }; export const clearRecycle = () => { return http.post('files/recycle/clear'); }; export const SearchFavorite = (params: ReqPage) => { return http.post>('files/favorite/search', params); }; export const AddFavorite = (path: string) => { return http.post('files/favorite', { path: path }); }; export const ReadByLine = (req: File.FileReadByLine) => { return http.post('files/read', req); }; export const RemoveFavorite = (id: number) => { return http.post('files/favorite/del', { id: id }); }; export const BatchChangeRole = (params: File.FileRole) => { return http.post('files/batch/role', params); };