github.com/SupenBysz/gf-admin-community@v0.7.4/sys_controller/sys_file.go (about) 1 package sys_controller 2 3 import ( 4 "context" 5 "github.com/SupenBysz/gf-admin-community/api_v1/sys_api" 6 "github.com/SupenBysz/gf-admin-community/sys_service" 7 "github.com/gogf/gf/v2/frame/g" 8 ) 9 10 // SysFile 文件 11 var SysFile = cSysFile{} 12 13 type cSysFile struct{} 14 15 // Upload 上传文件 16 func (c *cSysFile) Upload(ctx context.Context, req *sys_api.UploadReq) (res *sys_api.UploadFileRes, err error) { 17 result, err := sys_service.File().Upload(ctx, req.FileUploadInput) 18 if err != nil { 19 return nil, err 20 } 21 22 return (*sys_api.UploadFileRes)(result), nil 23 } 24 25 // UploadIDCardWithOCR 上传身份证 26 func (c *cSysFile) UploadIDCardWithOCR(ctx context.Context, req *sys_api.UploadIDCardWithOCRReq) (res *sys_api.IDCardWithOCRRes, err error) { 27 28 result, err := sys_service.File().UploadIDCard(ctx, req.OCRIDCardFileUploadInput) 29 30 return (*sys_api.IDCardWithOCRRes)(result), err 31 } 32 33 // UploadBusinessLicenseWithOCR 上传营业执照 34 func (c *cSysFile) UploadBusinessLicenseWithOCR(ctx context.Context, req *sys_api.UploadBusinessLicenseWithOCRReq) (*sys_api.UploadBusinessLicenseWithOCRRes, error) { 35 result, err := sys_service.File().UploadBusinessLicense(ctx, req.OCRBusinessLicense) 36 37 return (*sys_api.UploadBusinessLicenseWithOCRRes)(result), err 38 } 39 40 // UploadBankCardWithOCR 上传银行卡 41 func (c *cSysFile) UploadBankCardWithOCR(ctx context.Context, req *sys_api.UploadBankCardWithOCRReq) (res *sys_api.BankCardWithOCRRes, err error) { 42 result, err := sys_service.File().UploadBankCard(ctx, req.BankCardWithOCRInput) 43 44 return (*sys_api.BankCardWithOCRRes)(result), err 45 } 46 47 // GetFileById 通过图片ID获取图片文件 48 func (c *cSysFile) GetFileById(ctx context.Context, _ *sys_api.GetFileByIdReq) (res *sys_api.UploadFileRes, err error) { 49 // 获取图片id 还有图片类型 临时还是永久 50 id := g.RequestFromCtx(ctx).GetQuery("id").Int64() 51 52 file, err := sys_service.File().GetFileById(ctx, id, "文件加载失败") 53 54 // 加载显示图片 55 g.RequestFromCtx(ctx).Response.ServeFile(file.Src) 56 57 return (*sys_api.UploadFileRes)(&file.SysFile), err 58 } 59 60 // UploadPicture 上传图片并审核 61 func (c *cSysFile) UploadPicture(ctx context.Context, req *sys_api.UploadPictureReq) (res *sys_api.UploadPictureRes, err error) { 62 result, err := sys_service.File().UploadPicture(ctx, req.PictureWithOCRInput) 63 64 return (*sys_api.UploadPictureRes)(result), err 65 }