上传完善
This commit is contained in:
		
							parent
							
								
									c08c1e7eba
								
							
						
					
					
						commit
						9363ca68b6
					
				| @ -22,13 +22,13 @@ func (p *FsResourceModel) FindOneById(ctx context.Context, resourceId string) (* | |||||||
| 	return &resp, nil | 	return &resp, nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func (p *FsResourceModel) CreateOrUpdate(ctx context.Context, req *FsResource) (resp *FsResource, err error) { | func (p *FsResourceModel) Create(ctx context.Context, req *FsResource) (resp *FsResource, err error) { | ||||||
| 	rowBuilder := p.db.Table(p.name).WithContext(ctx) | 	err = p.db.Table(p.name).WithContext(ctx).Create(req).Error | ||||||
| 	if req.ResourceId != "" { | 	return req, err | ||||||
| 		err = rowBuilder.Save(req).Error |  | ||||||
| 	} else { |  | ||||||
| 		err = rowBuilder.Create(req).Error |  | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | func (p *FsResourceModel) Update(ctx context.Context, req *FsResource) (resp *FsResource, err error) { | ||||||
|  | 	err = p.db.Table(p.name).WithContext(ctx).Where("resource_id =?", req.ResourceId).Save(req).Error | ||||||
| 	return req, err | 	return req, err | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,6 +1,7 @@ | |||||||
| package logic | package logic | ||||||
| 
 | 
 | ||||||
| import ( | import ( | ||||||
|  | 	"fusenapi/model/gmodel" | ||||||
| 	"fusenapi/utils/auth" | 	"fusenapi/utils/auth" | ||||||
| 	"fusenapi/utils/basic" | 	"fusenapi/utils/basic" | ||||||
| 
 | 
 | ||||||
| @ -10,6 +11,7 @@ import ( | |||||||
| 	"fusenapi/server/upload/internal/types" | 	"fusenapi/server/upload/internal/types" | ||||||
| 
 | 
 | ||||||
| 	"github.com/zeromicro/go-zero/core/logx" | 	"github.com/zeromicro/go-zero/core/logx" | ||||||
|  | 	"gorm.io/gorm" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type UploadCallbackLogic struct { | type UploadCallbackLogic struct { | ||||||
| @ -38,5 +40,31 @@ func NewUploadCallbackLogic(ctx context.Context, svcCtx *svc.ServiceContext) *Up | |||||||
| func (l *UploadCallbackLogic) UploadCallback(req *types.UploadCallbackReq, userinfo *auth.UserInfo) (resp *basic.Response) { | func (l *UploadCallbackLogic) UploadCallback(req *types.UploadCallbackReq, userinfo *auth.UserInfo) (resp *basic.Response) { | ||||||
| 	// 返回值必须调用Set重新返回, resp可以空指针调用 resp.SetStatus(basic.CodeOK, data) | 	// 返回值必须调用Set重新返回, resp可以空指针调用 resp.SetStatus(basic.CodeOK, data) | ||||||
| 	// userinfo 传入值时, 一定不为null | 	// userinfo 传入值时, 一定不为null | ||||||
|  | 
 | ||||||
|  | 	resourceModel := gmodel.NewFsResourceModel(l.svcCtx.MysqlConn) | ||||||
|  | 	err := resourceModel.Trans(l.ctx, func(ctx context.Context, connGorm *gorm.DB) (err error) { | ||||||
|  | 		resourceModelTS := gmodel.NewFsResourceModel(l.svcCtx.MysqlConn) | ||||||
|  | 		resourceInfo, err := resourceModelTS.FindOneById(ctx, req.ResourceId) | ||||||
|  | 		if err != nil { | ||||||
|  | 			return err | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		var fsResource = &gmodel.FsResource{} | ||||||
|  | 		fsResource.ResourceId = req.ResourceId | ||||||
|  | 		fsResource.ResourceType = &req.ResourceType | ||||||
|  | 		fsResource.ResourceUrl = &req.ResourceUrl | ||||||
|  | 		fsResource.Metadata = &req.Metadata | ||||||
|  | 		fsResource.ApiType = &req.ApiType | ||||||
|  | 		if resourceInfo.ResourceId == "" { | ||||||
|  | 			_, err = resourceModelTS.Create(ctx, fsResource) | ||||||
|  | 		} else { | ||||||
|  | 			_, err = resourceModelTS.Update(ctx, fsResource) | ||||||
|  | 		} | ||||||
|  | 		return err | ||||||
|  | 	}) | ||||||
|  | 	if err != nil { | ||||||
|  | 		logx.Error(err) | ||||||
|  | 		return resp.SetStatus(basic.CodeFileUploadErr, "file upload err,UploadCallback failed") | ||||||
|  | 	} | ||||||
| 	return resp.SetStatus(basic.CodeOK) | 	return resp.SetStatus(basic.CodeOK) | ||||||
| } | } | ||||||
|  | |||||||
| @ -185,7 +185,7 @@ func (l *UploadFilesBackendLogic) UploadFilesBackend(req *types.UploadFilesReq, | |||||||
| 				uploadUrl.ResourceUrl = url | 				uploadUrl.ResourceUrl = url | ||||||
| 				var version string = "0.0.1" | 				var version string = "0.0.1" | ||||||
| 				var nowTime = time.Now() | 				var nowTime = time.Now() | ||||||
| 				_, err = resourceModel.CreateOrUpdate(l.ctx, &gmodel.FsResource{ | 				_, err = resourceModel.Create(l.ctx, &gmodel.FsResource{ | ||||||
| 					ResourceId:   resourceId, | 					ResourceId:   resourceId, | ||||||
| 					UserId:       &userId, | 					UserId:       &userId, | ||||||
| 					GuestId:      &guestId, | 					GuestId:      &guestId, | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user