package controller import ( "context" "fmt" "video-factory/common" "video-factory/shortdrama/model/dto" "video-factory/shortdrama/service" "github.com/gogf/gf/v2/frame/g" ) type userModelConfig struct{} var UserModelConfig = new(userModelConfig) func (c *userModelConfig) GetUserConfig(ctx context.Context, req *dto.GetUserModelConfigReq) (res *dto.GetUserModelConfigRes, err error) { r := g.RequestFromCtx(ctx) userId := common.GetUserId(r) if userId <= 0 { return nil, fmt.Errorf("not logged in") } cfg := service.UserModelConfigService.GetUserConfig(ctx, userId, req.ModelType) return &dto.GetUserModelConfigRes{UserModelConfig: cfg}, nil } func (c *userModelConfig) SaveUserConfig(ctx context.Context, req *dto.SaveUserModelConfigReq) (res *struct{}, err error) { r := g.RequestFromCtx(ctx) userId := common.GetUserId(r) if userId <= 0 { return nil, fmt.Errorf("not logged in") } return nil, service.UserModelConfigService.SaveUserConfigs(ctx, userId, req.Configs) } func (c *userModelConfig) GetUserModelList(ctx context.Context, req *dto.GetUserModelListReq) (res *dto.GetUserModelListRes, err error) { r := g.RequestFromCtx(ctx) userId := common.GetUserId(r) if req.Page <= 0 { req.Page = 1 } if req.PageSize <= 0 { req.PageSize = 20 } return service.UserModelConfigService.GetUserModelListPage(ctx, userId, req.Page, req.PageSize, req.ModelType, req.Keyword), nil }