From d91517541690b1be17117814d1a7c7d2591105f3 Mon Sep 17 00:00:00 2001 From: "jiaji.H" Date: Sat, 11 Oct 2025 16:52:23 +0800 Subject: [PATCH] =?UTF-8?q?Updata=EF=BC=9A=E4=BF=AE=E6=AD=A3=E5=88=86?= =?UTF-8?q?=E9=A1=B5=E8=BF=94=E5=9B=9E=E6=95=B0=E6=8D=AE=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/dao/bundleDao.go | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/internal/dao/bundleDao.go b/internal/dao/bundleDao.go index 26a4b87..592fdb3 100644 --- a/internal/dao/bundleDao.go +++ b/internal/dao/bundleDao.go @@ -135,23 +135,27 @@ func BundleListV2(req *bundle.BundleListRequest) (res *bundle.BundleListResponse res.Bundles = make([]*bundle.BundleProfile, 0) bundles := make([]*model.BundleProfile, 0) - query := app.ModuleClients.BundleDB.Model(&model.BundleProfile{}).Preload("BundleProfileLang") + baseQuery := app.ModuleClients.BundleDB.Model(&model.BundleProfile{}) if req.Name != "" { - query = query.Where("name like ?", "%"+req.Name+"%") + baseQuery = baseQuery.Where("name like ?", "%"+req.Name+"%") } if req.Content != "" { - query = query.Where("content like ?", "%"+req.Content+"%") + baseQuery = baseQuery.Where("content like ?", "%"+req.Content+"%") } if req.Language != "" { - query = query.Where("language like ?", req.Language) + baseQuery = baseQuery.Where("language like ?", req.Language) } - count := *query + var total int64 + if err = baseQuery.Count(&total).Error; err != nil { + return res, commonErr.ReturnError(err, msg.ErrorGetBundleList, "获取套餐总数失败: ") + } // 排序:sort 升序,相同 sort 按 created_at 倒序 + query := baseQuery.Preload("BundleProfileLang") query = query.Order("sort ASC").Order("created_at DESC") if req.PageSize != 0 && req.Page != 0 { query = query.Limit(int(req.PageSize)).Offset(int(req.Page-1) * int(req.PageSize)) @@ -223,10 +227,6 @@ func BundleListV2(req *bundle.BundleListRequest) (res *bundle.BundleListResponse } } - var total int64 - - count.Count(&total) - res.Total = int32(total) return