From c72d0a7aa63cf51e30218882932954514c9ee339 Mon Sep 17 00:00:00 2001 From: liangzai <2440983361@qq.com> Date: Fri, 24 Oct 2025 13:42:26 +0800 Subject: [PATCH] fix --- .../api/internal/logic/admin_agent/admingetagentlistlogic.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/main/api/internal/logic/admin_agent/admingetagentlistlogic.go b/app/main/api/internal/logic/admin_agent/admingetagentlistlogic.go index 4f2c4dd..f74f358 100644 --- a/app/main/api/internal/logic/admin_agent/admingetagentlistlogic.go +++ b/app/main/api/internal/logic/admin_agent/admingetagentlistlogic.go @@ -6,6 +6,7 @@ import ( "tydata-server/app/main/api/internal/svc" "tydata-server/app/main/api/internal/types" "tydata-server/app/main/model" + "tydata-server/common/tool" "tydata-server/common/xerr" "tydata-server/pkg/lzkit/crypto" @@ -51,11 +52,13 @@ func (l *AdminGetAgentListLogic) AdminGetAgentList(req *types.AdminGetAgentListR for _, c := range closures { ids = append(ids, c.DescendantId) } + // 将int64切片转换为interface{}切片,以便squirrel正确处理IN查询 interfaceIds := make([]interface{}, len(ids)) for i, id := range ids { interfaceIds[i] = id } - builder = builder.Where("id IN (?)", interfaceIds...) + // 使用项目中的InPlaceholders函数生成正确数量的占位符 + builder = builder.Where("id IN ("+tool.InPlaceholders(len(interfaceIds))+")", interfaceIds...) } agents, total, err := l.svcCtx.AgentModel.FindPageListByPageWithTotal(l.ctx, builder, req.Page, req.PageSize, "id DESC")