FullSyncStoreSkuBindAct

This commit is contained in:
gazebo
2020-01-20 18:14:00 +08:00
parent ac0e99b38d
commit af658360dd
4 changed files with 164 additions and 44 deletions

View File

@@ -511,7 +511,7 @@ func CreateOrUpdateActStoreSku(db *DaoDB, storeSkuAct *model.StoreSkuAct) (err e
return err
}
func GetStoresSkusAct(db *DaoDB, hintActID int, storeIDs, skuIDs, vendorIDs []int, minActPercentage, maxActPercentage int) (storeSkuActList []*model.StoreSkuAct, err error) {
func GetStoresSkusAct(db *DaoDB, hintActID int, mustDirty bool, storeIDs, skuIDs, vendorIDs []int, mustHaveVendorActID bool, minActPercentage, maxActPercentage int) (storeSkuActList []*model.StoreSkuAct, err error) {
sql := `
SELECT *
FROM store_sku_act t1
@@ -522,6 +522,9 @@ func GetStoresSkusAct(db *DaoDB, hintActID int, storeIDs, skuIDs, vendorIDs []in
sql += " AND t1.hint_act_id = ?"
sqlParams = append(sqlParams, hintActID)
}
if mustDirty {
sql += " AND t1.sync_status <> 0"
}
if len(storeIDs) > 0 {
sql += " AND t1.store_id IN (" + GenQuestionMarks(len(storeIDs)) + ")"
sqlParams = append(sqlParams, storeIDs)
@@ -534,6 +537,9 @@ func GetStoresSkusAct(db *DaoDB, hintActID int, storeIDs, skuIDs, vendorIDs []in
sql += " AND t1.vendor_id IN (" + GenQuestionMarks(len(vendorIDs)) + ")"
sqlParams = append(sqlParams, vendorIDs)
}
if mustHaveVendorActID {
sql += " AND t1.vendor_act_id <> ''"
}
if minActPercentage > 0 {
sql += " AND t1.act_percentage >= ?"
sqlParams = append(sqlParams, minActPercentage)
@@ -549,7 +555,7 @@ func GetStoresSkusAct(db *DaoDB, hintActID int, storeIDs, skuIDs, vendorIDs []in
func GetStoresSkusAndActInfo(db *DaoDB, storeIDs, skuIDs, vendorIDs []int, minActPercentage, maxActPercentage int) (storeSkuAndActList []*StoreSkuAndAct, err error) {
storeSkuList, err := GetStoresSkusInfo(db, storeIDs, skuIDs)
if err == nil && len(storeSkuList) > 0 {
storeSkuActList, err2 := GetStoresSkusAct(db, 0, storeIDs, skuIDs, vendorIDs, minActPercentage, maxActPercentage)
storeSkuActList, err2 := GetStoresSkusAct(db, 0, false, storeIDs, skuIDs, vendorIDs, false, minActPercentage, maxActPercentage)
if err = err2; err == nil {
actMap := make(map[int64][]*model.StoreSkuAct)
for _, v := range storeSkuActList {

View File

@@ -1259,7 +1259,7 @@ func UpdateActPrice4StoreSkuNameNew(db *DaoDB, storeIDs, skuIDs []int, skuNamesI
return err
}
storeMapMap = StoreMapList2Map(storeMapList)
storeSkuActList, err2 := GetStoresSkusAct(db, 0, storeIDs, skuIDs, nil, 0, 0)
storeSkuActList, err2 := GetStoresSkusAct(db, 0, false, storeIDs, skuIDs, nil, false, 0, 0)
if err = err2; err != nil {
return err
}