This commit is contained in:
laodaming 2023-08-09 14:49:15 +08:00
parent d5e5cdc8f0
commit f92bf8bfee
7 changed files with 53 additions and 18 deletions

View File

@ -22,7 +22,6 @@ type ServiceContext struct {
} }
func NewServiceContext(c {{.config}}) *ServiceContext { func NewServiceContext(c {{.config}}) *ServiceContext {
initalize.InitRabbitMq(c.SourceRabbitMq, nil)
return &ServiceContext{ return &ServiceContext{
Config: c, Config: c,
MysqlConn: initalize.InitMysql(c.SourceMysql), MysqlConn: initalize.InitMysql(c.SourceMysql),

View File

@ -6,4 +6,10 @@ Auth:
AccessSecret: fusen2023 AccessSecret: fusen2023
AccessExpire: 2592000 AccessExpire: 2592000
RefreshAfter: 1592000 RefreshAfter: 1592000
SourceRabbitMq: amqp://rabbit001:rabbit001129@110.41.19.98:5672 SourceRabbitMq: amqp://rabbit001:rabbit001129@110.41.19.98:5672
AWS:
S3:
Credentials:
AccessKeyID: AKIAZB2JKUXDPNRP4YT2
Secret: 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
Token:

View File

@ -10,4 +10,13 @@ type Config struct {
SourceMysql string SourceMysql string
Auth types.Auth Auth types.Auth
SourceRabbitMq string SourceRabbitMq string
AWS struct {
S3 struct {
Credentials struct {
AccessKeyID string
Secret string
Token string
}
}
}
} }

View File

@ -6,6 +6,7 @@ import (
"fusenapi/constants" "fusenapi/constants"
"fusenapi/utils/auth" "fusenapi/utils/auth"
"fusenapi/utils/basic" "fusenapi/utils/basic"
"fusenapi/utils/file"
"fusenapi/utils/websocket_data" "fusenapi/utils/websocket_data"
"fusenapi/server/render/internal/svc" "fusenapi/server/render/internal/svc"
@ -62,15 +63,31 @@ func (l *RenderNotifyLogic) RenderNotify(req *types.RenderNotifyReq, userinfo *a
if req.Sign != sign { if req.Sign != sign {
return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "invalid sign") return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "invalid sign")
}*/ }*/
//创建/更新资源 // 上传文件
var upload = file.Upload{
Ctx: l.ctx,
MysqlConn: l.svcCtx.MysqlConn,
AwsSession: l.svcCtx.AwsSession,
}
uploadRes, err := upload.UploadFileByBase64(&file.UploadBaseReq{
FileHash: req.Info.TaskId,
FileData: req.Info.Image,
UploadBucket: 1,
ApiType: 2,
UserId: req.Info.UserId,
GuestId: req.Info.GuestId,
})
if err != nil {
logx.Error(err)
return resp.SetStatusWithMessage(basic.CodeFileUploadErr, "failed to upload render resource image")
}
//发送消息到对应的rabbitmq //发送消息到对应的rabbitmq
data := websocket_data.RenderImageNotify{ data := websocket_data.RenderImageNotify{
TaskId: req.Info.TaskId, TaskId: req.Info.TaskId,
Image: req.Info.Image, Image: uploadRes.ResourceUrl,
} }
d, _ := json.Marshal(data) d, _ := json.Marshal(data)
if err := l.svcCtx.RabbitMq.SendMsg(constants.RABBIT_MQ_RENDER_RESULT_DATA, d); err != nil { if err = l.svcCtx.RabbitMq.SendMsg(constants.RABBIT_MQ_RENDER_RESULT_DATA, d); err != nil {
logx.Error(err) logx.Error(err)
return resp.SetStatus(basic.CodeServiceErr, "failed to send data") return resp.SetStatus(basic.CodeServiceErr, "failed to send data")
} }

View File

@ -4,6 +4,9 @@ import (
"errors" "errors"
"fmt" "fmt"
"fusenapi/server/render/internal/config" "fusenapi/server/render/internal/config"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/credentials"
"github.com/aws/aws-sdk-go/aws/session"
"net/http" "net/http"
"fusenapi/initalize" "fusenapi/initalize"
@ -14,20 +17,23 @@ import (
) )
type ServiceContext struct { type ServiceContext struct {
Config config.Config Config config.Config
MysqlConn *gorm.DB
MysqlConn *gorm.DB AllModels *gmodel.AllModelsGen
AllModels *gmodel.AllModelsGen RabbitMq *initalize.RabbitMqHandle
RabbitMq *initalize.RabbitMqHandle AwsSession *session.Session
} }
func NewServiceContext(c config.Config) *ServiceContext { func NewServiceContext(c config.Config) *ServiceContext {
initalize.InitRabbitMq(c.SourceRabbitMq, nil) config := aws.Config{
Credentials: credentials.NewStaticCredentials(c.AWS.S3.Credentials.AccessKeyID, c.AWS.S3.Credentials.Secret, c.AWS.S3.Credentials.Token),
}
return &ServiceContext{ return &ServiceContext{
Config: c, Config: c,
MysqlConn: initalize.InitMysql(c.SourceMysql), MysqlConn: initalize.InitMysql(c.SourceMysql),
AllModels: gmodel.NewAllModels(initalize.InitMysql(c.SourceMysql)), AllModels: gmodel.NewAllModels(initalize.InitMysql(c.SourceMysql)),
RabbitMq: initalize.InitRabbitMq(c.SourceRabbitMq, nil), RabbitMq: initalize.InitRabbitMq(c.SourceRabbitMq, nil),
AwsSession: session.Must(session.NewSession(&config)),
} }
} }

View File

@ -29,7 +29,6 @@ func NewServiceContext(c config.Config) *ServiceContext {
config := aws.Config{ config := aws.Config{
Credentials: credentials.NewStaticCredentials(c.AWS.S3.Credentials.AccessKeyID, c.AWS.S3.Credentials.Secret, c.AWS.S3.Credentials.Token), Credentials: credentials.NewStaticCredentials(c.AWS.S3.Credentials.AccessKeyID, c.AWS.S3.Credentials.Secret, c.AWS.S3.Credentials.Token),
} }
initalize.InitRabbitMq(c.SourceRabbitMq, nil)
return &ServiceContext{ return &ServiceContext{
Config: c, Config: c,
MysqlConn: initalize.InitMysql(c.SourceMysql), MysqlConn: initalize.InitMysql(c.SourceMysql),

View File

@ -22,7 +22,6 @@ type ServiceContext struct {
} }
func NewServiceContext(c config.Config) *ServiceContext { func NewServiceContext(c config.Config) *ServiceContext {
initalize.InitRabbitMq(c.SourceRabbitMq, nil)
return &ServiceContext{ return &ServiceContext{
Config: c, Config: c,
MysqlConn: initalize.InitMysql(c.SourceMysql), MysqlConn: initalize.InitMysql(c.SourceMysql),