diff --git a/server/shopping-cart/internal/logic/getcartslogic.go b/server/shopping-cart/internal/logic/getcartslogic.go index fcb5ea7e..e2e4c9ef 100644 --- a/server/shopping-cart/internal/logic/getcartslogic.go +++ b/server/shopping-cart/internal/logic/getcartslogic.go @@ -44,6 +44,22 @@ func (l *GetCartsLogic) GetCarts(req *types.GetCartsReq, userinfo *auth.UserInfo if req.CurrentPage <= 0 { req.CurrentPage = constants.DEFAULT_PAGE } + //获取全部购物车id + allCratIds, count, err := l.svcCtx.AllModels.FsShoppingCart.GetAllCartsByParam(l.ctx, gmodel.GetAllCartsByParamReq{ + UserId: userinfo.UserId, + Fields: "id", + Sort: "id DESC", + Page: 1, + Limit: 1000, + }) + if err != nil { + logx.Error(err) + return resp.SetStatusWithMessage(basic.CodeDbSqlErr, "system err:failed to get your shopping carts") + } + ids := make([]int64, 0, count) + for _, v := range allCratIds { + ids = append(ids, v.Id) + } limit := 10 //获取用户购物车列表 carts, total, err := l.svcCtx.AllModels.FsShoppingCart.GetAllCartsByParam(l.ctx, gmodel.GetAllCartsByParamReq{ @@ -206,7 +222,8 @@ func (l *GetCartsLogic) GetCarts(req *types.GetCartsReq, userinfo *auth.UserInfo CurrentPage: req.CurrentPage, PerPage: limit, }, - CartList: list, + AllCartIdArray: ids, + CartList: list, }) } diff --git a/server/shopping-cart/internal/types/types.go b/server/shopping-cart/internal/types/types.go index 39699f48..1a2832fe 100644 --- a/server/shopping-cart/internal/types/types.go +++ b/server/shopping-cart/internal/types/types.go @@ -34,8 +34,9 @@ type GetCartsReq struct { } type GetCartsRsp struct { - Meta Meta `json:"meta"` //分页信息 - CartList []CartItem `json:"cart_list"` + Meta Meta `json:"meta"` //分页信息 + AllCartIdArray []int64 `json:"all_cartId_array"` //全部购物车id(不分页) + CartList []CartItem `json:"cart_list"` } type CartItem struct { diff --git a/server_api/shopping-cart.api b/server_api/shopping-cart.api index 8f778f48..0722912a 100644 --- a/server_api/shopping-cart.api +++ b/server_api/shopping-cart.api @@ -52,8 +52,9 @@ type GetCartsReq { CurrentPage int `form:"current_page"` //当前页 } type GetCartsRsp { - Meta Meta `json:"meta"` //分页信息 - CartList []CartItem `json:"cart_list"` + Meta Meta `json:"meta"` //分页信息 + AllCartIdArray []int64 `json:"all_cartId_array"` //全部购物车id(不分页) + CartList []CartItem `json:"cart_list"` } type CartItem { CartId int64 `json:"cart_id"`