Ver Fonte

fix:修改客服账号列表

jimmyyem há 1 mês atrás
pai
commit
931a2b0c2b

+ 1 - 8
desc/wechat/xunji_service.api

@@ -51,14 +51,7 @@ type (
     XunjiServiceListReq {
         PageInfo
 
-        // 微信ID 
-        Wxid  *string `json:"wxid,optional"`
-
-        // 大模型服务地址 
-        ApiBase  *string `json:"apiBase,optional"`
-
-        // 大模型服务密钥 
-        ApiKey  *string `json:"apiKey,optional"`
+        XunjiID *uint64 `json:"xunjiID,optional"`
     }
 
     // XunjiService information response | XunjiService信息返回体

+ 13 - 8
internal/logic/xunji_service/get_xunji_service_list_logic.go

@@ -2,6 +2,7 @@ package xunji_service
 
 import (
 	"context"
+	"github.com/zeromicro/go-zero/core/errorx"
 
 	"wechat-api/ent/predicate"
 	"wechat-api/ent/xunjiservice"
@@ -30,15 +31,19 @@ func NewGetXunjiServiceListLogic(ctx context.Context, svcCtx *svc.ServiceContext
 }
 
 func (l *GetXunjiServiceListLogic) GetXunjiServiceList(req *types.XunjiServiceListReq) (*types.XunjiServiceListResp, error) {
+	isAdmin := l.ctx.Value("isAdmin").(bool)
+
 	var predicates []predicate.XunjiService
-	if req.Wxid != nil {
-		predicates = append(predicates, xunjiservice.WxidContains(*req.Wxid))
-	}
-	if req.ApiBase != nil {
-		predicates = append(predicates, xunjiservice.APIBaseContains(*req.ApiBase))
-	}
-	if req.ApiKey != nil {
-		predicates = append(predicates, xunjiservice.APIKeyContains(*req.ApiKey))
+
+	if isAdmin {
+		if req.XunjiID != nil && *req.XunjiID > 0 {
+			predicates = append(predicates, xunjiservice.XunjiID(*req.XunjiID))
+		}
+	} else {
+		if req.XunjiID == nil || *req.XunjiID <= 0 {
+			return nil, errorx.NewInvalidArgumentError("父ID不能为空")
+		}
+		predicates = append(predicates, xunjiservice.XunjiID(*req.XunjiID))
 	}
 	data, err := l.svcCtx.DB.XunjiService.Query().Where(predicates...).WithAgent().Page(l.ctx, req.Page, req.PageSize)
 

+ 1 - 6
internal/types/types.go

@@ -4122,12 +4122,7 @@ type XunjiServiceListInfo struct {
 // swagger:model XunjiServiceListReq
 type XunjiServiceListReq struct {
 	PageInfo
-	// 微信ID
-	Wxid *string `json:"wxid,optional"`
-	// 大模型服务地址
-	ApiBase *string `json:"apiBase,optional"`
-	// 大模型服务密钥
-	ApiKey *string `json:"apiKey,optional"`
+	XunjiID *uint64 `json:"xunjiID,optional"`
 }
 
 // XunjiService information response | XunjiService信息返回体