Updata:修正分页返回数据错误
This commit is contained in:
parent
2fd0f940a0
commit
d915175416
@ -135,23 +135,27 @@ func BundleListV2(req *bundle.BundleListRequest) (res *bundle.BundleListResponse
|
|||||||
res.Bundles = make([]*bundle.BundleProfile, 0)
|
res.Bundles = make([]*bundle.BundleProfile, 0)
|
||||||
bundles := make([]*model.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 != "" {
|
if req.Name != "" {
|
||||||
query = query.Where("name like ?", "%"+req.Name+"%")
|
baseQuery = baseQuery.Where("name like ?", "%"+req.Name+"%")
|
||||||
}
|
}
|
||||||
|
|
||||||
if req.Content != "" {
|
if req.Content != "" {
|
||||||
query = query.Where("content like ?", "%"+req.Content+"%")
|
baseQuery = baseQuery.Where("content like ?", "%"+req.Content+"%")
|
||||||
}
|
}
|
||||||
|
|
||||||
if req.Language != "" {
|
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 倒序
|
// 排序:sort 升序,相同 sort 按 created_at 倒序
|
||||||
|
query := baseQuery.Preload("BundleProfileLang")
|
||||||
query = query.Order("sort ASC").Order("created_at DESC")
|
query = query.Order("sort ASC").Order("created_at DESC")
|
||||||
if req.PageSize != 0 && req.Page != 0 {
|
if req.PageSize != 0 && req.Page != 0 {
|
||||||
query = query.Limit(int(req.PageSize)).Offset(int(req.Page-1) * int(req.PageSize))
|
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)
|
res.Total = int32(total)
|
||||||
|
|
||||||
return
|
return
|
||||||
|
Loading…
Reference in New Issue
Block a user