推荐分类修改
This commit is contained in:
@@ -2140,18 +2140,38 @@ func GetTopSkusByStoreIDs(ctx *jxcontext.Context, storeIDs []int) (storeSkuNameE
|
|||||||
}
|
}
|
||||||
|
|
||||||
func GetTopCategorysByStoreIDs(ctx *jxcontext.Context, storeIDs []int) (skuCategory []*model.SkuCategory, err error) {
|
func GetTopCategorysByStoreIDs(ctx *jxcontext.Context, storeIDs []int) (skuCategory []*model.SkuCategory, err error) {
|
||||||
var skuCategory2 []*model.SkuCategory
|
var (
|
||||||
|
skuCategory2 []*model.SkuCategory
|
||||||
|
skuCategoryMap = make(map[int]*model.SkuCategory)
|
||||||
|
limit = 10
|
||||||
|
)
|
||||||
if len(storeIDs) == 0 {
|
if len(storeIDs) == 0 {
|
||||||
return skuCategory, err
|
return skuCategory, err
|
||||||
}
|
}
|
||||||
db := dao.GetDB()
|
db := dao.GetDB()
|
||||||
skuCategory, err = dao.GetTopCategorysByStoreIDs(db, storeIDs)
|
skuCategory, err = dao.GetTopCategorysByStoreIDs(db, storeIDs, limit)
|
||||||
if len(skuCategory) < 10 {
|
//若大于等于10个就不用做下面的操作
|
||||||
j := 10 - len(skuCategory)
|
if len(skuCategory) >= limit {
|
||||||
|
return skuCategory, err
|
||||||
|
}
|
||||||
|
if len(skuCategory) > 0 {
|
||||||
|
for _, v := range skuCategory {
|
||||||
|
skuCategoryMap[v.ID] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//推荐分类,若不满10个,则填满10个
|
||||||
|
if (len(skuCategory) < limit && len(skuCategory) > 0) || len(skuCategory) == 0 {
|
||||||
skuCategory2, err = dao.GetCategories(db, -1, 1, nil)
|
skuCategory2, err = dao.GetCategories(db, -1, 1, nil)
|
||||||
if len(skuCategory2) > 0 {
|
if len(skuCategory2) > 0 {
|
||||||
for i := 0; i < j; i++ {
|
for _, v := range skuCategory2 {
|
||||||
skuCategory = append(skuCategory, skuCategory2[i])
|
if skuCategoryMap[v.ID] == nil {
|
||||||
|
if !strings.Contains(v.Name, "赠品") {
|
||||||
|
skuCategory = append(skuCategory, v)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if len(skuCategory) >= limit {
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -984,7 +984,7 @@ func GetTopSkusByStoreIDs(db *DaoDB, storeIDs []int) (storeSkuNameExt []*StoreSk
|
|||||||
return storeSkuNameExt, err
|
return storeSkuNameExt, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetTopCategorysByStoreIDs(db *DaoDB, storeIDs []int) (skuCategory []*model.SkuCategory, err error) {
|
func GetTopCategorysByStoreIDs(db *DaoDB, storeIDs []int, limit int) (skuCategory []*model.SkuCategory, err error) {
|
||||||
sql := `
|
sql := `
|
||||||
SELECT DISTINCT t5.* FROM(
|
SELECT DISTINCT t5.* FROM(
|
||||||
SELECT d.*
|
SELECT d.*
|
||||||
@@ -1023,7 +1023,7 @@ func GetTopCategorysByStoreIDs(db *DaoDB, storeIDs []int) (skuCategory []*model.
|
|||||||
Order by t4.count DESC)t5
|
Order by t4.count DESC)t5
|
||||||
LIMIT ?
|
LIMIT ?
|
||||||
`
|
`
|
||||||
sqlParams = append(sqlParams, time.Now().AddDate(0, -1, 0), 100, 2, utils.DefaultTimeValue, 1, 10)
|
sqlParams = append(sqlParams, time.Now().AddDate(0, -1, 0), 100, 2, utils.DefaultTimeValue, 1, limit)
|
||||||
err = GetRows(db, &skuCategory, sql, sqlParams...)
|
err = GetRows(db, &skuCategory, sql, sqlParams...)
|
||||||
return skuCategory, err
|
return skuCategory, err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user