diff --git a/business/jxstore/cms/sync.go b/business/jxstore/cms/sync.go index 792ec6ef2..0b654b1ce 100644 --- a/business/jxstore/cms/sync.go +++ b/business/jxstore/cms/sync.go @@ -1135,13 +1135,13 @@ func syncJdsStoreStock(ctx *jxcontext.Context, db *dao.DaoDB, parentTask tasksch func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { storeSku := batchItemList[0].(*model.StoreSkuBind) stock := 0 - if storeSku.Status == model.StoreSkuBindStatusNormal { - stock = 9999 - } storeSku2, _ := dao.GetStoresSkusInfo(db, []int{storeMap.StoreID}, []int{storeSku.SkuID}) if storeSku.JdsID != 0 { if len(storeSku2) > 0 { - if storeSku.Status != storeSku2[0].Status && storeMap.VendorStoreID != "" { + if storeSku2[0].Status == model.StoreSkuBindStatusNormal { + stock = 9999 + } + if storeMap.VendorStoreID != "" { err = api.JdShopAPI.UpdateSkuSiteStock(storeSku.JdsID, stock, utils.Str2Int(storeMap.VendorStoreID)) } } else { diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go index 528284468..ebc1b5575 100644 --- a/business/model/dao/store_sku.go +++ b/business/model/dao/store_sku.go @@ -1669,3 +1669,30 @@ func GetStoreSkuAuditLight(db *DaoDB, storeIDs, nameIDs []int, status int) (stor err = GetRows(db, &storeSkuAudit, sql, sqlParams...) return storeSkuAudit, err } + +func GetStoreSkuHistory(db *DaoDB, storeIDs, skuIDs []int, status int, snapShot time.Time) (storeSkuHistory []*model.StoreSkuBindHistory, err error) { + sql := ` + SELECT a.* + FROM store_sku_bind_history a + WHERE a.deleted_at = ? + ` + sqlParams := []interface{}{utils.DefaultTimeValue} + if len(storeIDs) > 0 { + sql += " AND a.store_id IN (" + GenQuestionMarks(len(storeIDs)) + ")" + sqlParams = append(sqlParams, storeIDs) + } + if len(skuIDs) > 0 { + sql += " AND a.sku_id IN (" + GenQuestionMarks(len(skuIDs)) + ")" + sqlParams = append(sqlParams, skuIDs) + } + if status != model.StoreAuditStatusAll { + sql += " AND a.status = ? " + sqlParams = append(sqlParams, status) + } + if !utils.IsTimeZero(snapShot) { + sql += " AND a.snapshot_at = ? " + sqlParams = append(sqlParams, snapShot) + } + err = GetRows(db, &storeSkuHistory, sql, sqlParams...) + return storeSkuHistory, err +}