From 41423ca6660adced1f64568a7462e99191c754ef Mon Sep 17 00:00:00 2001 From: shanshanzhong Date: Sun, 17 Aug 2025 04:28:32 -0700 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=AE=A2=E9=98=85?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91=E5=B9=B6?= =?UTF-8?q?=E6=9B=B4=E6=96=B0Dockerfile=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复订阅列表查询中服务器组为空时的处理逻辑,避免潜在错误 在getSubscribeListLogic.go中添加服务器数量统计功能 更新Dockerfile添加logs目录拷贝 清理ppanel.yaml配置文件中的合并冲突和冗余配置 --- Dockerfile | 1 + etc/ppanel.yaml | 42 +------------------ .../admin/subscribe/getSubscribeListLogic.go | 7 ++++ .../subscribe/querySubscribeListLogic.go | 15 ++++--- 4 files changed, 19 insertions(+), 46 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3958b33..707fa0e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -38,6 +38,7 @@ WORKDIR /app COPY --from=builder /app/ppanel /app/ppanel COPY --from=builder /build/etc /app/etc +COPY --from=builder /build/logs /app/logs # Expose the port (optional) EXPOSE 8080 diff --git a/etc/ppanel.yaml b/etc/ppanel.yaml index d687631..672d6e2 100644 --- a/etc/ppanel.yaml +++ b/etc/ppanel.yaml @@ -1,44 +1,5 @@ Host: 0.0.0.0 Port: 8080 -<<<<<<< HEAD -TLS: - Enable: false - CertFile: "" - KeyFile: "" -Debug: true -JwtAuth: - AccessSecret: 89270267-f1dc-4136-9c9c-dc38c4685d63 - AccessExpire: 604800 -Logger: - ServiceName: PPanel - Mode: file - Encoding: json - TimeFormat: "2006-01-02 15:04:05.000" - Path: logs - Level: info - MaxContentLength: 0 - Compress: false - Stat: true - KeepDays: 0 - StackCooldownMillis: 100 - MaxBackups: 0 - MaxSize: 0 - Rotation: daily - FileTimeFormat: 2006-01-02T15:04:05.000Z07:00 -MySQL: - Addr: ppanel-db:3306 - Username: ppanel - Password: ppanelpassword - Dbname: ppanel - Config: charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai - MaxIdleConns: 10 - MaxOpenConns: 10 - SlowThreshold: 1000 -Redis: - Host: redis:6379 - Pass: - DB: 0 -======= Debug: false JwtAuth: AccessSecret: 1234567890 @@ -60,7 +21,7 @@ Logger: Rotation: daily FileTimeFormat: 2025-01-01T00:00:00.000Z00:00 MySQL: - Addr: 172.245.180.199:3306 + Addr: ppanel-db:3306 Dbname: ppanel Username: ppanel Password: ppanelpassword @@ -75,4 +36,3 @@ Redis: Administrator: Password: password Email: admin@ppanel.dev ->>>>>>> old diff --git a/internal/logic/admin/subscribe/getSubscribeListLogic.go b/internal/logic/admin/subscribe/getSubscribeListLogic.go index 7168afb..e9705f4 100644 --- a/internal/logic/admin/subscribe/getSubscribeListLogic.go +++ b/internal/logic/admin/subscribe/getSubscribeListLogic.go @@ -47,6 +47,13 @@ func (l *GetSubscribeListLogic) GetSubscribeList(req *types.GetSubscribeListRequ l.Logger.Error("[GetSubscribeListLogic] JSON unmarshal failed: ", logger.Field("error", err.Error()), logger.Field("discount", item.Discount)) } } + servers, err := l.svcCtx.ServerModel.FindServerListByGroupIds(l.ctx, sub.ServerGroup) + if err != nil { + l.Errorw("[QuerySubscribeListLogic] FindServerListByGroupIds error", logger.Field("error", err.Error())) + sub.ServerCount = 0 + } else { + sub.ServerCount = int64(len(servers)) + } sub.Server = tool.StringToInt64Slice(item.Server) sub.ServerGroup = tool.StringToInt64Slice(item.ServerGroup) resultList = append(resultList, sub) diff --git a/internal/logic/public/subscribe/querySubscribeListLogic.go b/internal/logic/public/subscribe/querySubscribeListLogic.go index 18299dd..a1b221a 100644 --- a/internal/logic/public/subscribe/querySubscribeListLogic.go +++ b/internal/logic/public/subscribe/querySubscribeListLogic.go @@ -50,12 +50,17 @@ func (l *QuerySubscribeListLogic) QuerySubscribeList() (resp *types.QuerySubscri } list[i] = sub // 通过服务组查询关联的节点数量 - servers, err := l.svcCtx.ServerModel.FindServerListByGroupIds(l.ctx, sub.ServerGroup) - if err != nil { - l.Errorw("[QuerySubscribeListLogic] FindServerListByGroupIds error", logger.Field("error", err.Error())) - sub.ServerCount = 0 + if item.ServerGroup != "" { + groupIds := tool.StringToInt64Slice(item.ServerGroup) + servers, err := l.svcCtx.ServerModel.FindServerListByGroupIds(l.ctx, groupIds) + if err != nil { + l.Errorw("[QuerySubscribeListLogic] FindServerListByGroupIds error", logger.Field("error", err.Error())) + sub.ServerCount = 0 + } else { + sub.ServerCount = int64(len(servers)) + } } else { - sub.ServerCount = int64(len(servers)) + sub.ServerCount = 0 } list[i] = sub }