门店商品查询修改

This commit is contained in:
苏尹岚
2020-04-17 18:22:43 +08:00
parent 9813558b21
commit 236ea9dd15
2 changed files with 13 additions and 11 deletions

View File

@@ -237,10 +237,10 @@ var (
)
func GetStoreSkus(ctx *jxcontext.Context, storeID int, skuIDs []int, isFocus bool, keyword string, isBySku, isAct bool, params map[string]interface{}, offset, pageSize int) (skuNamesInfo *dao.StoreSkuNamesInfo, err error) {
return GetStoresSkus(ctx, []int{storeID}, skuIDs, isFocus, 0, keyword, isBySku, isAct, params, offset, pageSize)
return GetStoresSkus(ctx, []int{storeID}, skuIDs, isFocus, false, 0, keyword, isBySku, isAct, params, offset, pageSize)
}
func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool, keyword string, isBySku, isAct bool, isHighPrice int, actVendorID int, params map[string]interface{}) (sql string, sqlParams []interface{}, err error) {
func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool, keyword string, isBySku, isAct, isHighPrice bool, priceType int, actVendorID int, params map[string]interface{}) (sql string, sqlParams []interface{}, err error) {
sql = `
FROM sku_name t1
JOIN sku t2 FORCE INDEX(PRIMARY) ON t1.id = t2.name_id AND t2.deleted_at = ?/* AND t2.status = ?*/
@@ -312,9 +312,10 @@ func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool
utils.DefaultTimeValue,
utils.Bool2Int(isFocus),
})
if isHighPrice == 1 {
if isHighPrice || priceType == 1 {
sql += " AND t4.unit_price > t6.mid_unit_price / IF(t3.pay_percentage < 50 , 70, t3.pay_percentage) * 1.2 * 100"
} else if isHighPrice == -1 {
}
if priceType == -1 {
sql += " AND t4.unit_price < t6.mid_unit_price / IF(t3.pay_percentage < 50 , 70, t3.pay_percentage) / 1.2 * 100"
}
if isFocus {
@@ -443,11 +444,11 @@ func getGetStoresSkusBaseSQL(db *dao.DaoDB, storeIDs, skuIDs []int, isFocus bool
return sql, sqlParams, err
}
func GetStoresSkus(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bool, isHighPrice int, keyword string, isBySku, isAct bool, params map[string]interface{}, offset, pageSize int) (skuNamesInfo *dao.StoreSkuNamesInfo, err error) {
return GetStoresSkusNew(ctx, storeIDs, skuIDs, isFocus, isHighPrice, keyword, isBySku, isAct, params, offset, pageSize)
func GetStoresSkus(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus, isHighPrice bool, priceType int, keyword string, isBySku, isAct bool, params map[string]interface{}, offset, pageSize int) (skuNamesInfo *dao.StoreSkuNamesInfo, err error) {
return GetStoresSkusNew(ctx, storeIDs, skuIDs, isFocus, isHighPrice, priceType, keyword, isBySku, isAct, params, offset, pageSize)
}
func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bool, isHighPrice int, keyword string, isBySku, isAct bool, params map[string]interface{}, offset, pageSize int) (skuNamesInfo *dao.StoreSkuNamesInfo, err error) {
func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus, isHighPrice bool, priceType int, keyword string, isBySku, isAct bool, params map[string]interface{}, offset, pageSize int) (skuNamesInfo *dao.StoreSkuNamesInfo, err error) {
if !isFocus && !isBySku && (len(storeIDs) > 1 || len(storeIDs) == 0) {
return nil, fmt.Errorf("未关注按SkuName只能查询单店")
}
@@ -459,7 +460,7 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bo
actVendorID = int(utils.Interface2Int64WithDefault(params["actVendorID"], -1))
}
db := dao.GetDB()
sql, sqlParams, err := getGetStoresSkusBaseSQL(db, storeIDs, skuIDs, isFocus, keyword, isBySku, isAct, isHighPrice, actVendorID, params)
sql, sqlParams, err := getGetStoresSkusBaseSQL(db, storeIDs, skuIDs, isFocus, keyword, isBySku, isAct, isHighPrice, priceType, actVendorID, params)
if err != nil {
return nil, err
}
@@ -537,7 +538,7 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bo
t4.status_sale_begin, t4.status_sale_end,
t6.mid_unit_price real_mid_unit_price
` + sql
if isHighPrice != 0 {
if isHighPrice || priceType != 0 {
sql += " , t4.unit_price DESC LIMIT 99"
}
var tmpList []*tGetStoresSkusInfo

View File

@@ -87,7 +87,8 @@ func (c *StoreSkuController) GetStoreSkus() {
// @Param ebaiSyncStatus query int false "饿百同步标识"
// @Param mtwmSyncStatus query int false "美团外卖同步标识"
// @Param lockTime query string false "价格锁定时间"
// @Param isHighPrice query int false "是否查过高价格商品,0是忽略1是高价-1是低价"
// @Param isHighPrice query bool false "是否查过高价格商品,0是忽略1是高价-1是低价"
// @Param priceType query int false "是否查过高价格商品,0是忽略1是高价-1是低价"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetStoresSkus [get,post]
@@ -95,7 +96,7 @@ func (c *StoreSkuController) GetStoresSkus() {
c.callGetStoresSkus(func(params *tStoreSkuGetStoresSkusParams) (retVal interface{}, errCode string, err error) {
var storeIDs, skuIDs []int
if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs, params.SkuIDs, &skuIDs); err == nil {
retVal, err = cms.GetStoresSkus(params.Ctx, storeIDs, skuIDs, params.IsFocus, params.IsHighPrice, params.Keyword, params.IsBySku, params.IsAct, params.MapData, params.Offset, params.PageSize)
retVal, err = cms.GetStoresSkus(params.Ctx, storeIDs, skuIDs, params.IsFocus, params.IsHighPrice, params.PriceType, params.Keyword, params.IsBySku, params.IsAct, params.MapData, params.Offset, params.PageSize)
}
return retVal, "", err
})