- SyncFlagSpecMask从32改为64
- 添加SyncFlagStockMask为32 - 修复新关注商品在同步至多门店平台时,同步出错时可能的清同步标识不正确的问题
This commit is contained in:
@@ -218,6 +218,12 @@ func sku2Update(vendorID int, sku *dao.StoreSkuSyncInfo, syncStatus int8) (item
|
|||||||
// kvs[model.FieldDeletedAt] = time.Now()
|
// kvs[model.FieldDeletedAt] = time.Now()
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
} else if syncStatus&model.SyncFlagStockMask != 0 {
|
||||||
|
if isStoreSkuSyncNeedDelete(sku) {
|
||||||
|
sku.StoreSkuSyncStatus = 0
|
||||||
|
} else {
|
||||||
|
sku.StoreSkuSyncStatus = sku.StoreSkuSyncStatus & (model.SyncFlagPriceMask | model.SyncFlagSaleMask)
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
sku.StoreSkuSyncStatus = sku.StoreSkuSyncStatus & ^syncStatus
|
sku.StoreSkuSyncStatus = sku.StoreSkuSyncStatus & ^syncStatus
|
||||||
}
|
}
|
||||||
@@ -287,6 +293,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo
|
|||||||
} else if model.IsSyncStatusNew(sku.StoreSkuSyncStatus) {
|
} else if model.IsSyncStatusNew(sku.StoreSkuSyncStatus) {
|
||||||
calVendorPrice4StoreSku(sku, storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage))
|
calVendorPrice4StoreSku(sku, storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage))
|
||||||
if singleStoreHandler == nil {
|
if singleStoreHandler == nil {
|
||||||
|
sku.StoreSkuSyncStatus |= model.SyncFlagSaleMask | model.SyncFlagPriceMask
|
||||||
bareSku = storeSkuSyncInfo2Bare(calVendorPrice4StoreSku(sku, storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage)))
|
bareSku = storeSkuSyncInfo2Bare(calVendorPrice4StoreSku(sku, storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage)))
|
||||||
stockList = append(stockList, bareSku)
|
stockList = append(stockList, bareSku)
|
||||||
priceList = append(priceList, bareSku)
|
priceList = append(priceList, bareSku)
|
||||||
@@ -418,7 +425,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo
|
|||||||
successList = batchedStoreSkuList
|
successList = batchedStoreSkuList
|
||||||
}
|
}
|
||||||
if k == 0 && len(successList) > 0 {
|
if k == 0 && len(successList) > 0 {
|
||||||
updateStoreSku(dao.GetDB(), vendorID, bareSku2Sync(successList), model.SyncFlagModifiedMask) // ?
|
updateStoreSku(dao.GetDB(), vendorID, bareSku2Sync(successList), model.SyncFlagStockMask)
|
||||||
}
|
}
|
||||||
return nil, len(successList), err
|
return nil, len(successList), err
|
||||||
}, ctx, task, list, storeSkuHandler.GetStoreSkusBatchSize(partner.FuncUpdateStoreSkusStock), isContinueWhenError)
|
}, ctx, task, list, storeSkuHandler.GetStoreSkusBatchSize(partner.FuncUpdateStoreSkusStock), isContinueWhenError)
|
||||||
|
|||||||
@@ -73,9 +73,10 @@ const (
|
|||||||
|
|
||||||
SyncFlagSaleMask = 8 // 改了门店商品可售状态必须设置此标志
|
SyncFlagSaleMask = 8 // 改了门店商品可售状态必须设置此标志
|
||||||
SyncFlagPriceMask = 16 // 改了门店商品价格必须设置此标志
|
SyncFlagPriceMask = 16 // 改了门店商品价格必须设置此标志
|
||||||
SyncFlagSpecMask = 32
|
SyncFlagStockMask = 32 // 修改库存同步标识,当前只有多门店平台才会用到
|
||||||
|
SyncFlagSpecMask = 64 // 原值32
|
||||||
|
|
||||||
SyncFlagStoreSkuOnlyMask = SyncFlagSaleMask | SyncFlagPriceMask
|
SyncFlagStoreSkuOnlyMask = SyncFlagSaleMask | SyncFlagPriceMask | SyncFlagStockMask
|
||||||
SyncFlagStoreSkuModifiedMask = SyncFlagStoreSkuOnlyMask | SyncFlagModifiedMask
|
SyncFlagStoreSkuModifiedMask = SyncFlagStoreSkuOnlyMask | SyncFlagModifiedMask
|
||||||
SyncFlagChangedMask = SyncFlagSpecMask | SyncFlagNewMask | SyncFlagDeletedMask | SyncFlagStoreSkuModifiedMask
|
SyncFlagChangedMask = SyncFlagSpecMask | SyncFlagNewMask | SyncFlagDeletedMask | SyncFlagStoreSkuModifiedMask
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user