From 519d9952e0f7df7ef07837aa032b639b7ee9bf20 Mon Sep 17 00:00:00 2001 From: laodaming <11058467+laudamine@user.noreply.gitee.com> Date: Thu, 29 Jun 2023 11:43:07 +0800 Subject: [PATCH] fix --- .../internal/logic/getproductlistlogic.go | 4 +- .../internal/logic/getsizebyproductlogic.go | 20 +++---- server/product/internal/types/types.go | 57 +++++++------------ server_api/product.api | 37 ++++-------- 4 files changed, 46 insertions(+), 72 deletions(-) diff --git a/server/product/internal/logic/getproductlistlogic.go b/server/product/internal/logic/getproductlistlogic.go index 134fdc42..5d680cf0 100644 --- a/server/product/internal/logic/getproductlistlogic.go +++ b/server/product/internal/logic/getproductlistlogic.go @@ -130,7 +130,7 @@ func (l *GetProductListLogic) GetProductList(req *types.GetProductListReq, useri return resp.SetStatusWithMessage(basic.CodeServiceErr, "get product size count err") } //拼接返回 - itemList := make([]*types.Items, 0, productLen) + itemList := make([]types.Items, 0, productLen) for _, v := range productList { minPrice, ok := mapProductMinPrice[v.Id] _, tmpOk := mapProductTemplate[v.Id] @@ -138,7 +138,7 @@ func (l *GetProductListLogic) GetProductList(req *types.GetProductListReq, useri if !ok || !tmpOk { continue } - item := &types.Items{ + item := types.Items{ Id: v.Id, Sn: *v.Sn, Title: *v.Title, diff --git a/server/product/internal/logic/getsizebyproductlogic.go b/server/product/internal/logic/getsizebyproductlogic.go index 2e87334c..cf8333e0 100644 --- a/server/product/internal/logic/getsizebyproductlogic.go +++ b/server/product/internal/logic/getsizebyproductlogic.go @@ -103,8 +103,8 @@ func (l *GetSizeByProductLogic) GetSizeByProduct(userinfo *auth.UserInfo) (resp } // 第一层子层 -func (l *GetSizeByProductLogic) GetFirstChildrenList(tag gmodel.FsTags, productList []gmodel.FsProduct, productSizeList []gmodel.FsProductSize, mapProductPrice map[int64]gmodel.FsProductPrice) (childrenList []*types.Children, err error) { - childrenList = make([]*types.Children, 0, len(productList)) +func (l *GetSizeByProductLogic) GetFirstChildrenList(tag gmodel.FsTags, productList []gmodel.FsProduct, productSizeList []gmodel.FsProductSize, mapProductPrice map[int64]gmodel.FsProductPrice) (childrenList []types.Children, err error) { + childrenList = make([]types.Children, 0, len(productList)) for _, product := range productList { if *product.Type != tag.Id { continue @@ -114,7 +114,7 @@ func (l *GetSizeByProductLogic) GetFirstChildrenList(tag gmodel.FsTags, productL return nil, err } //获取第二层子类 - data := &types.Children{ + data := types.Children{ Id: product.Id, Name: *product.Title, Cycle: int(*product.DeliveryDays + *product.ProduceDays), @@ -126,23 +126,23 @@ func (l *GetSizeByProductLogic) GetFirstChildrenList(tag gmodel.FsTags, productL } // 第2层子层 -func (l *GetSizeByProductLogic) GetSecondChildrenList(product gmodel.FsProduct, productSizeList []gmodel.FsProductSize, mapProductPrice map[int64]gmodel.FsProductPrice) (childrenObjList []*types.ChildrenObj, err error) { - childrenObjList = make([]*types.ChildrenObj, 0, len(productSizeList)) +func (l *GetSizeByProductLogic) GetSecondChildrenList(product gmodel.FsProduct, productSizeList []gmodel.FsProductSize, mapProductPrice map[int64]gmodel.FsProductPrice) (childrenObjList []types.ChildrenObj, err error) { + childrenObjList = make([]types.ChildrenObj, 0, len(productSizeList)) for _, productSize := range productSizeList { if product.Id != *productSize.ProductId { continue } - priceList := make([]*types.PriceObj, 0, len(productSizeList)) + priceList := make([]types.PriceObj, 0, len(productSizeList)) price, ok := mapProductPrice[productSize.Id] //无对应尺寸价格 if !ok { for i := 0; i < 3; i++ { - priceList = append(priceList, &types.PriceObj{ + priceList = append(priceList, types.PriceObj{ Num: 1, Price: 0, }) } - childrenObjList = append(childrenObjList, &types.ChildrenObj{ + childrenObjList = append(childrenObjList, types.ChildrenObj{ Id: productSize.Id, Name: *productSize.Capacity, PriceList: priceList, @@ -171,14 +171,14 @@ func (l *GetSizeByProductLogic) GetSecondChildrenList(product gmodel.FsProduct, index := 0 // 最小购买数量小于 最大阶梯数量+5 for int(*price.MinBuyNum) < (stepNum[len(stepNum)-1]+5) && index < 3 { - priceList = append(priceList, &types.PriceObj{ + priceList = append(priceList, types.PriceObj{ Num: int(*price.MinBuyNum * *price.EachBoxNum), Price: step_price.GetStepPrice(int(*price.MinBuyNum), stepNum, stepPrice), }) *price.MinBuyNum++ index++ } - data := &types.ChildrenObj{ + data := types.ChildrenObj{ Id: productSize.Id, Name: *productSize.Capacity, PriceList: priceList, diff --git a/server/product/internal/types/types.go b/server/product/internal/types/types.go index a56d6ddf..04901fbb 100644 --- a/server/product/internal/types/types.go +++ b/server/product/internal/types/types.go @@ -19,23 +19,8 @@ type GetProductListRsp struct { } type Ob struct { - Items []*Items `json:"items"` - Links *Links `json:"_links"` - Meta *Meta `json:"_meta"` -} - -type Meta struct { - TotalCount int32 `json:"totalCount"` - PageCount int32 `json:"pageCount"` - CurrentPage int32 `json:"currentPage"` - PerPage int32 `json:"perPage"` -} - -type Links struct { - Self HrefUrl `json:"self"` - First HrefUrl `json:"first"` - Last HrefUrl `json:"last"` - Next HrefUrl `json:"next"` + Items []Items `json:"items"` + Meta Meta `json:"_meta"` } type HrefUrl struct { @@ -73,22 +58,22 @@ type GetSuccessRecommandRsp struct { } type GetSizeByProductRsp struct { - Id int64 `json:"id"` - Name string `json:"name"` - Children []*Children `json:"children"` + Id int64 `json:"id"` + Name string `json:"name"` + Children []Children `json:"children"` } type Children struct { - Id int64 `json:"id"` - Name string `json:"name"` - Cycle int `json:"cycle"` - ChildrenList []*ChildrenObj `json:"children"` + Id int64 `json:"id"` + Name string `json:"name"` + Cycle int `json:"cycle"` + ChildrenList []ChildrenObj `json:"children"` } type ChildrenObj struct { - Id int64 `json:"id"` - Name string `json:"name"` - PriceList []*PriceObj `json:"price_list"` + Id int64 `json:"id"` + Name string `json:"name"` + PriceList []PriceObj `json:"price_list"` } type PriceObj struct { @@ -110,26 +95,28 @@ type GetProductDesignRsp struct { Info string `json:"info"` } +type Request struct { +} + type Response struct { Code int `json:"code"` Message string `json:"msg"` Data interface{} `json:"data"` } -type ResponseJwt struct { - Code int `json:"code"` - Message string `json:"msg"` - Data interface{} `json:"data"` - AccessSecret string `json:"accessSecret"` - AccessExpire int64 `json:"accessExpire"` -} - type Auth struct { AccessSecret string `json:"accessSecret"` AccessExpire int64 `json:"accessExpire"` RefreshAfter int64 `json:"refreshAfter"` } +type Meta struct { + TotalCount int64 `json:"totalCount"` + PageCount int64 `json:"pageCount"` + CurrentPage int `json:"currentPage"` + PerPage int `json:"perPage"` +} + // Set 设置Response的Code和Message值 func (resp *Response) Set(Code int, Message string) *Response { return &Response{ diff --git a/server_api/product.api b/server_api/product.api index be17adc3..f016a52c 100644 --- a/server_api/product.api +++ b/server_api/product.api @@ -37,21 +37,8 @@ type GetProductListRsp { Description string `json:"description"` } type Ob { - Items []*Items `json:"items"` - Links *Links `json:"_links"` - Meta *Meta `json:"_meta"` -} -type Meta { - TotalCount int32 `json:"totalCount"` - PageCount int32 `json:"pageCount"` - CurrentPage int32 `json:"currentPage"` - PerPage int32 `json:"perPage"` -} -type Links { - Self HrefUrl `json:"self"` - First HrefUrl `json:"first"` - Last HrefUrl `json:"last"` - Next HrefUrl `json:"next"` + Items []Items `json:"items"` + Meta Meta `json:"_meta"` } type HrefUrl { Href string `json:"href"` @@ -87,20 +74,20 @@ type GetSuccessRecommandRsp { //获取分类下的产品以及尺寸 type GetSizeByProductRsp { - Id int64 `json:"id"` - Name string `json:"name"` - Children []*Children `json:"children"` + Id int64 `json:"id"` + Name string `json:"name"` + Children []Children `json:"children"` } type Children { - Id int64 `json:"id"` - Name string `json:"name"` - Cycle int `json:"cycle"` - ChildrenList []*ChildrenObj `json:"children"` + Id int64 `json:"id"` + Name string `json:"name"` + Cycle int `json:"cycle"` + ChildrenList []ChildrenObj `json:"children"` } type ChildrenObj { - Id int64 `json:"id"` - Name string `json:"name"` - PriceList []*PriceObj `json:"price_list"` + Id int64 `json:"id"` + Name string `json:"name"` + PriceList []PriceObj `json:"price_list"` } type PriceObj { Num int `json:"num"`