feat(plugin): the configure of saas plugin tab display

This commit is contained in:
lijunwen.gigoo
2025-10-14 13:51:58 +08:00
parent 58aa07ab7b
commit 778c73fba6
12 changed files with 977 additions and 40 deletions

View File

@ -18,10 +18,13 @@ package plugin
import (
"context"
"os"
"strconv"
"strings"
"time"
typesConsts "github.com/coze-dev/coze-studio/backend/types/consts"
"github.com/coze-dev/coze-studio/backend/api/model/app/bot_common"
productCommon "github.com/coze-dev/coze-studio/backend/api/model/marketplace/product_common"
productAPI "github.com/coze-dev/coze-studio/backend/api/model/marketplace/product_public_api"
@ -35,7 +38,6 @@ import (
"github.com/coze-dev/coze-studio/backend/domain/plugin/repository"
"github.com/coze-dev/coze-studio/backend/domain/plugin/service"
search "github.com/coze-dev/coze-studio/backend/domain/search/service"
entityUser "github.com/coze-dev/coze-studio/backend/domain/user/entity"
user "github.com/coze-dev/coze-studio/backend/domain/user/service"
"github.com/coze-dev/coze-studio/backend/infra/contract/storage"
"github.com/coze-dev/coze-studio/backend/pkg/errorx"
@ -591,35 +593,24 @@ func (p *PluginApplicationService) GetSaasProductCategoryList(ctx context.Contex
}
func (p *PluginApplicationService) GetProductCallInfo(ctx context.Context, req *productAPI.GetProductCallInfoRequest) (resp *productAPI.GetProductCallInfoResponse, err error) {
// userInfo, err := p.userSVC.GetSaasUserInfo(ctx)
// if err != nil {
// logs.CtxErrorf(ctx, "GetSaasUserInfo failed: %v", err)
// return &productAPI.GetProductCallInfoResponse{
// Code: -1,
// Message: "Failed to get user info",
// }, nil
// }
// benefit, err := p.userSVC.GetUserBenefit(ctx)
// if err != nil {
// logs.CtxErrorf(ctx, "GetUserBenefit failed: %v", err)
// return &productAPI.GetProductCallInfoResponse{
// Code: -1,
// Message: "Failed to get user benefit",
// }, nil
// }
//todo:: need to move
userInfo := &entityUser.SaasUserData{
UserName: "gigoo",
NickName: "gigoo",
AvatarURL: "https://p6-passport.byteacctimg.com/img/user-avatar/cae85f2778fc38b29f5930be8f954bed~300x300.image",
userInfo, err := p.userSVC.GetSaasUserInfo(ctx)
if err != nil {
logs.CtxErrorf(ctx, "GetSaasUserInfo failed: %v", err)
return &productAPI.GetProductCallInfoResponse{
Code: -1,
Message: "Failed to get user info",
}, nil
}
benefit := &entityUser.UserBenefit{
UsedCount: 10,
TotalCount: 100,
IsUnlimited: false,
benefit, err := p.userSVC.GetUserBenefit(ctx)
if err != nil {
logs.CtxErrorf(ctx, "GetUserBenefit failed: %v", err)
return &productAPI.GetProductCallInfoResponse{
Code: -1,
Message: "Failed to get user benefit",
}, nil
}
// Build response data
data := &productAPI.GetProductCallInfoData{
UserLevel: productAPI.UserLevel_Free,
@ -642,3 +633,19 @@ func (p *PluginApplicationService) GetProductCallInfo(ctx context.Context, req *
Data: data,
}, nil
}
func (p *PluginApplicationService) GetMarketPluginConfig(ctx context.Context, req *productAPI.GetMarketPluginConfigRequest) (resp *productAPI.GetMarketPluginConfigResponse, err error) {
enableSaasPluginEnv := os.Getenv(typesConsts.CozeSaasPluginEnabled)
enableSaasPlugin := enableSaasPluginEnv == "true"
resp = &productAPI.GetMarketPluginConfigResponse{
Code: 0,
Message: "success",
Data: &productAPI.Configuration{
EnableSaasPlugin: &enableSaasPlugin,
},
}
return resp, nil
}