GetStoreSkus添加参数:actVendorID表示要取哪个平台的活动信息
This commit is contained in:
@@ -70,8 +70,12 @@ type StoreSkuExt struct {
|
|||||||
|
|
||||||
AutoSaleAt time.Time `orm:"type(datetime);null" json:"autoSaleAt"`
|
AutoSaleAt time.Time `orm:"type(datetime);null" json:"autoSaleAt"`
|
||||||
|
|
||||||
ActPrice int `json:"actPrice"`
|
ActPrice int `json:"actPrice"`
|
||||||
EarningPrice int `json:"earningPrice"`
|
ActID int `orm:"column(act_id)" json:"actID"`
|
||||||
|
|
||||||
|
EarningPrice int `json:"earningPrice"`
|
||||||
|
EarningActID int `orm:"column(earning_act_id)" json:"earningActID"`
|
||||||
|
|
||||||
RealEarningPrice int `json:"realEarningPrice"`
|
RealEarningPrice int `json:"realEarningPrice"`
|
||||||
|
|
||||||
Count int `json:"count"`
|
Count int `json:"count"`
|
||||||
@@ -487,8 +491,12 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bo
|
|||||||
if true { //!(offset == 0 && pageSize == model.UnlimitedPageSize) {
|
if true { //!(offset == 0 && pageSize == model.UnlimitedPageSize) {
|
||||||
storeIDs, skuIDs = GetStoreAndSkuIDsFromInfo(skuNamesInfo)
|
storeIDs, skuIDs = GetStoreAndSkuIDsFromInfo(skuNamesInfo)
|
||||||
}
|
}
|
||||||
|
actVendorID := -1
|
||||||
|
if params["actVendorID"] != nil {
|
||||||
|
actVendorID = int(utils.Interface2Int64WithDefault(params["actVendorID"], -1))
|
||||||
|
}
|
||||||
beginTime := time.Now()
|
beginTime := time.Now()
|
||||||
err = updateActPrice4StoreSkuNameNew(db, storeIDs, skuIDs, skuNamesInfo)
|
err = updateActPrice4StoreSkuNameNew(db, storeIDs, skuIDs, skuNamesInfo, actVendorID)
|
||||||
globals.SugarLogger.Debugf("GetStoresSkusNew updateActPrice4StoreSkuName:%v", time.Now().Sub(beginTime))
|
globals.SugarLogger.Debugf("GetStoresSkusNew updateActPrice4StoreSkuName:%v", time.Now().Sub(beginTime))
|
||||||
if !isFocus {
|
if !isFocus {
|
||||||
err = updateUnitPrice4StoreSkuNameNew(db, skuNamesInfo)
|
err = updateUnitPrice4StoreSkuNameNew(db, skuNamesInfo)
|
||||||
@@ -535,11 +543,15 @@ func updateUnitPrice4StoreSkuNameNew(db *dao.DaoDB, skuNamesInfo *StoreSkuNamesI
|
|||||||
}
|
}
|
||||||
|
|
||||||
// skuIDs为空,会导致性能极低,所以要skuIDs必须有值
|
// skuIDs为空,会导致性能极低,所以要skuIDs必须有值
|
||||||
func updateActPrice4StoreSkuNameNew(db *dao.DaoDB, storeIDs, skuIDs []int, skuNamesInfo *StoreSkuNamesInfo) (err error) {
|
func updateActPrice4StoreSkuNameNew(db *dao.DaoDB, storeIDs, skuIDs []int, skuNamesInfo *StoreSkuNamesInfo, actVendorID int) (err error) {
|
||||||
if len(skuIDs) == 0 {
|
if len(skuIDs) == 0 {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
actStoreSkuList, err := dao.GetEffectiveActStoreSkuInfo(db, 0, nil, storeIDs, skuIDs, time.Now(), time.Now())
|
var vendorIDs []int
|
||||||
|
if actVendorID >= 0 {
|
||||||
|
vendorIDs = []int{actVendorID}
|
||||||
|
}
|
||||||
|
actStoreSkuList, err := dao.GetEffectiveActStoreSkuInfo(db, 0, vendorIDs, storeIDs, skuIDs, time.Now(), time.Now())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Errorf("updateActPrice4StoreSkuNameNew can not get sku promotion info for error:%v", err)
|
globals.SugarLogger.Errorf("updateActPrice4StoreSkuNameNew can not get sku promotion info for error:%v", err)
|
||||||
return err
|
return err
|
||||||
@@ -552,9 +564,11 @@ func updateActPrice4StoreSkuNameNew(db *dao.DaoDB, storeIDs, skuIDs []int, skuNa
|
|||||||
for _, v := range skuName.Skus2 {
|
for _, v := range skuName.Skus2 {
|
||||||
if actStoreSku := actStoreSkuMap4Act.GetActStoreSku(skuName.StoreID, v.SkuID, -1); actStoreSku != nil {
|
if actStoreSku := actStoreSkuMap4Act.GetActStoreSku(skuName.StoreID, v.SkuID, -1); actStoreSku != nil {
|
||||||
v.ActPrice = int(actStoreSku.ActualActPrice)
|
v.ActPrice = int(actStoreSku.ActualActPrice)
|
||||||
|
v.ActID = actStoreSku.ActID
|
||||||
}
|
}
|
||||||
if actStoreSku := actStoreSkuMap4EarningPrice.GetActStoreSku(skuName.StoreID, v.SkuID, -1); actStoreSku != nil {
|
if actStoreSku := actStoreSkuMap4EarningPrice.GetActStoreSku(skuName.StoreID, v.SkuID, -1); actStoreSku != nil {
|
||||||
v.EarningPrice = int(actStoreSku.EarningPrice)
|
v.EarningPrice = int(actStoreSku.EarningPrice)
|
||||||
|
v.EarningActID = actStoreSku.ActID
|
||||||
}
|
}
|
||||||
|
|
||||||
v.RealEarningPrice = v.EarningPrice
|
v.RealEarningPrice = v.EarningPrice
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ type StoreSkuController struct {
|
|||||||
// @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)"
|
// @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)"
|
||||||
// @Param isBySku query bool false "是否按SKU分拆"
|
// @Param isBySku query bool false "是否按SKU分拆"
|
||||||
// @Param isAct query bool false "是否活动商品(包括正常活动与补贴)"
|
// @Param isAct query bool false "是否活动商品(包括正常活动与补贴)"
|
||||||
|
// @Param actVendorID query int false "要得到哪个平台的活动信息(缺省不限制,非零最小值)"
|
||||||
// @Param jdSyncStatus query int false "京东同步标识"
|
// @Param jdSyncStatus query int false "京东同步标识"
|
||||||
// @Param ebaiSyncStatus query int false "饿百同步标识"
|
// @Param ebaiSyncStatus query int false "饿百同步标识"
|
||||||
// @Param mtwmSyncStatus query int false "美团外卖同步标识"
|
// @Param mtwmSyncStatus query int false "美团外卖同步标识"
|
||||||
@@ -79,6 +80,7 @@ func (c *StoreSkuController) GetStoreSkus() {
|
|||||||
// @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)"
|
// @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)"
|
||||||
// @Param isBySku query bool false "是否按SKU分拆"
|
// @Param isBySku query bool false "是否按SKU分拆"
|
||||||
// @Param isAct query bool false "是否活动商品(包括正常活动与补贴)"
|
// @Param isAct query bool false "是否活动商品(包括正常活动与补贴)"
|
||||||
|
// @Param actVendorID query int false "要得到哪个平台的活动信息(缺省不限制,非零最小值)"
|
||||||
// @Param jdSyncStatus query int false "京东同步标识"
|
// @Param jdSyncStatus query int false "京东同步标识"
|
||||||
// @Param ebaiSyncStatus query int false "饿百同步标识"
|
// @Param ebaiSyncStatus query int false "饿百同步标识"
|
||||||
// @Param mtwmSyncStatus query int false "美团外卖同步标识"
|
// @Param mtwmSyncStatus query int false "美团外卖同步标识"
|
||||||
|
|||||||
Reference in New Issue
Block a user