From d0ef3bb71221810c7f6ce67c1f22f4c641e4581e Mon Sep 17 00:00:00 2001 From: huang Date: Sat, 28 Mar 2026 12:54:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=94=99=E8=AF=AF=E7=9A=84?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/service/asset/service.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/internal/service/asset/service.go b/internal/service/asset/service.go index b7c5e46..1239e66 100644 --- a/internal/service/asset/service.go +++ b/internal/service/asset/service.go @@ -5,6 +5,7 @@ package asset import ( "context" + stderrors "errors" "sort" "time" @@ -520,7 +521,12 @@ func (s *Service) GetCurrentPackage(ctx context.Context, assetType string, id ui usage, err := s.packageUsageStore.GetActiveMainPackage(ctx, carrierType, id) if err != nil { - return nil, errors.New(errors.CodeNotFound, "当前无生效套餐") + // 记录不存在表示当前无生效套餐,属于正常业务状态,返回 nil 而非错误 + // 其他 DB 错误才作为服务端错误处理 + if stderrors.Is(err, gorm.ErrRecordNotFound) { + return nil, nil + } + return nil, errors.Wrap(errors.CodeDatabaseError, err, "查询当前生效套餐失败") } pkg, pkgErr := s.packageStore.GetByID(ctx, usage.PackageID)