From fb7c59b38e2549a37814a115c691b6766bd4e3a1 Mon Sep 17 00:00:00 2001 From: gazebo Date: Wed, 7 Aug 2019 23:47:27 +0800 Subject: [PATCH] =?UTF-8?q?-=20SyncFlagSpecMask=E4=BB=8E32=E6=94=B9?= =?UTF-8?q?=E4=B8=BA64=20-=20=E6=B7=BB=E5=8A=A0SyncFlagStockMask=E4=B8=BA3?= =?UTF-8?q?2=20-=20=E4=BF=AE=E5=A4=8D=E6=96=B0=E5=85=B3=E6=B3=A8=E5=95=86?= =?UTF-8?q?=E5=93=81=E5=9C=A8=E5=90=8C=E6=AD=A5=E8=87=B3=E5=A4=9A=E9=97=A8?= =?UTF-8?q?=E5=BA=97=E5=B9=B3=E5=8F=B0=E6=97=B6=EF=BC=8C=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E5=87=BA=E9=94=99=E6=97=B6=E5=8F=AF=E8=83=BD=E7=9A=84=E6=B8=85?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E6=A0=87=E8=AF=86=E4=B8=8D=E6=AD=A3=E7=A1=AE?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/sync_store_sku.go | 9 ++++++++- business/model/model.go | 5 +++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go index f9b9bb45b..f81426d38 100644 --- a/business/jxstore/cms/sync_store_sku.go +++ b/business/jxstore/cms/sync_store_sku.go @@ -218,6 +218,12 @@ func sku2Update(vendorID int, sku *dao.StoreSkuSyncInfo, syncStatus int8) (item // 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 { 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) { calVendorPrice4StoreSku(sku, storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage)) if singleStoreHandler == nil { + sku.StoreSkuSyncStatus |= model.SyncFlagSaleMask | model.SyncFlagPriceMask bareSku = storeSkuSyncInfo2Bare(calVendorPrice4StoreSku(sku, storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage))) stockList = append(stockList, bareSku) priceList = append(priceList, bareSku) @@ -418,7 +425,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo successList = batchedStoreSkuList } 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 }, ctx, task, list, storeSkuHandler.GetStoreSkusBatchSize(partner.FuncUpdateStoreSkusStock), isContinueWhenError) diff --git a/business/model/model.go b/business/model/model.go index c8c2ca3e5..f7d383c51 100644 --- a/business/model/model.go +++ b/business/model/model.go @@ -73,9 +73,10 @@ const ( SyncFlagSaleMask = 8 // 改了门店商品可售状态必须设置此标志 SyncFlagPriceMask = 16 // 改了门店商品价格必须设置此标志 - SyncFlagSpecMask = 32 + SyncFlagStockMask = 32 // 修改库存同步标识,当前只有多门店平台才会用到 + SyncFlagSpecMask = 64 // 原值32 - SyncFlagStoreSkuOnlyMask = SyncFlagSaleMask | SyncFlagPriceMask + SyncFlagStoreSkuOnlyMask = SyncFlagSaleMask | SyncFlagPriceMask | SyncFlagStockMask SyncFlagStoreSkuModifiedMask = SyncFlagStoreSkuOnlyMask | SyncFlagModifiedMask SyncFlagChangedMask = SyncFlagSpecMask | SyncFlagNewMask | SyncFlagDeletedMask | SyncFlagStoreSkuModifiedMask