github.com/SupenBysz/gf-admin-community@v0.7.4/sys_service/sys_file.go (about) 1 // ================================================================================ 2 // Code generated and maintained by GoFrame CLI tool. DO NOT EDIT. 3 // You can delete these comments if you wish manually maintain this interface file. 4 // ================================================================================ 5 6 package sys_service 7 8 import ( 9 "context" 10 11 "github.com/SupenBysz/gf-admin-community/sys_model" 12 "github.com/SupenBysz/gf-admin-community/sys_model/sys_entity" 13 "github.com/SupenBysz/gf-admin-community/sys_model/sys_enum" 14 "github.com/SupenBysz/gf-admin-community/sys_model/sys_hook" 15 ) 16 17 type ( 18 IFile interface { 19 // InstallHook 安装Hook 20 InstallHook(state sys_enum.UploadEventState, hookFunc sys_hook.FileHookFunc) int64 21 // UnInstallHook 卸载Hook 22 UnInstallHook(savedHookId int64) 23 // CleanAllHook 清除Hook 24 CleanAllHook() 25 // Upload 统一上传文件 26 Upload(ctx context.Context, in sys_model.FileUploadInput) (*sys_entity.SysFile, error) 27 // GetUploadFile 根据上传ID 获取上传文件信息 28 GetUploadFile(ctx context.Context, uploadId int64, userId int64, message ...string) (*sys_model.FileInfo, error) 29 // SaveFile 保存文件 30 SaveFile(ctx context.Context, storageAddr string, info *sys_model.FileInfo) (*sys_model.FileInfo, error) 31 // UploadIDCard 上传身份证照片 32 UploadIDCard(ctx context.Context, in sys_model.OCRIDCardFileUploadInput) (*sys_model.IDCardWithOCR, error) 33 // UploadBankCard 上传银行卡照片 34 UploadBankCard(ctx context.Context, in sys_model.BankCardWithOCRInput) (*sys_model.BankCardWithOCR, error) 35 // UploadBusinessLicense 上传营业执照照片 36 UploadBusinessLicense(ctx context.Context, in sys_model.OCRBusinessLicense) (*sys_model.BusinessLicenseWithOCR, error) 37 // DownLoadFile 下载文件 38 DownLoadFile(ctx context.Context, savePath string, url string) (string, error) 39 // GetFileById 根据id获取并返回文件信息 40 GetFileById(ctx context.Context, id int64, errorMessage string) (*sys_model.FileInfo, error) 41 // MakeFileUrl 图像id换取url: 拼接三个参数,缓存fileInfo、然后返回url + 三参 42 MakeFileUrl(ctx context.Context, id int64) string 43 // MakeFileUrlByPath 文件path换取url: 拼接三个参数,缓存签名数据、然后返回url + 三参 44 MakeFileUrlByPath(ctx context.Context, path string) string 45 // GetFile 获取图片 公开 (srcBase64 + srcMd5 + fileId) ==> md5加密 46 GetFile(ctx context.Context, sign, srcBase64 string, id int64, cId int64) (*sys_model.FileInfo, error) 47 // UploadPicture 上传图片并审核 48 UploadPicture(ctx context.Context, input sys_model.PictureWithOCRInput) (*sys_model.PictureWithOCR, error) 49 // GetOssFileSingUrl 获取文件的签名访问URL 50 GetOssFileSingUrl(ctx context.Context, bucketName, objectKey string) (string, error) 51 // GetOssFileWithURL 根据文件的签名访问URL获取文件 52 GetOssFileWithURL(ctx context.Context, bucketName, filePath, singUrl string) (bool, error) 53 } 54 ) 55 56 var ( 57 localFile IFile 58 ) 59 60 func File() IFile { 61 if localFile == nil { 62 panic("implement not found for interface IFile, forgot register?") 63 } 64 return localFile 65 } 66 67 func RegisterFile(i IFile) { 68 localFile = i 69 }