From 9f739cdbb87348bccc084e4fb8daa7b823069ab0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 9 Jan 2023 14:56:40 +0800 Subject: [PATCH 1/3] 1 --- business/jxstore/cms/sync_store_sku.go | 8 +++- .../purchase/tiktok_store/store_sku2_utils.go | 37 ++++++++++++------- 2 files changed, 30 insertions(+), 15 deletions(-) diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go index b1620c93d..f28fb5e91 100644 --- a/business/jxstore/cms/sync_store_sku.go +++ b/business/jxstore/cms/sync_store_sku.go @@ -369,7 +369,13 @@ func sku2Update(vendorID int, sku *dao.StoreSkuSyncInfo, syncStatus int8) (item } sku.SkuSyncStatus = sku.SkuSyncStatus & model.SyncFlagNewMask } else { - sku.SkuSyncStatus = sku.SkuSyncStatus & model.SyncFlagPriceMask + var skuSyncStatus int8 = 0 + if model.VendorIDDD == sku.VendorID { + skuSyncStatus = sku.SkuSyncStatus + } else { + skuSyncStatus = sku.SkuSyncStatus & model.SyncFlagPriceMask + } + sku.SkuSyncStatus = skuSyncStatus } } else if syncStatus&model.SyncFlagStockMask != 0 { if isStoreSkuSyncNeedDelete(sku) { diff --git a/business/partner/purchase/tiktok_store/store_sku2_utils.go b/business/partner/purchase/tiktok_store/store_sku2_utils.go index b7b5c07e1..97f049e4f 100644 --- a/business/partner/purchase/tiktok_store/store_sku2_utils.go +++ b/business/partner/purchase/tiktok_store/store_sku2_utils.go @@ -259,15 +259,6 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI if (err != nil || childrenProductId == 0) && !strings.Contains(err.Error(), "2010001") { // 2010001:重复创建渠道商品,就去更新 continue - //param := &superm_product_batchRedistributeStoreProduct_request.TaskParams{ - // MainProductId: utils.Str2Int64(localThing[0].VendorThingID), - // AddStoreIds: []int64{utils.Str2Int64(vendorStoreID)}, - // DelStoreIds: []int64{utils.Str2Int64(vendorStoreID)}, - //} - //if _, err := api.BatchRedistributeStoreProduct(param); err != nil { - // failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) - // continue - //} } // 同步价格,库存,上架 @@ -345,10 +336,29 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) continue } - //if mainProductDetail.Name == param.Name && (mainProductDetail.CategoryDetail.ThirdCid == param.CategoryLeafId || mainProductDetail.CategoryDetail.FourthCid == param.CategoryLeafId) { - // upDateChildrenPriceStockLaunch(api, storeSku, utils.Str2Int64(storeSku.VendorSkuID), vendorStoreID, syncType) - // continue - //} + if mainProductDetail.Name == param.Name && (mainProductDetail.CategoryDetail.ThirdCid == param.CategoryLeafId || mainProductDetail.CategoryDetail.FourthCid == param.CategoryLeafId) { + // 更新子品 + if err := api.DeleteStoreCommodity(utils.Str2Int64(storeSku.VendorSkuID)); err != nil { + failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) + storeSku.SkuSyncStatus = 57 + continue + } + childrenProductId, err := api.CreateSubProduct(mainIdInt, utils.Str2Int64(vendorStoreID)) + if err != nil { + failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) + storeSku.SkuSyncStatus = 57 + continue + } + if (err != nil || childrenProductId == 0) && !strings.Contains(err.Error(), "2010001") { // 2010001:重复创建渠道商品,就去更新 + continue + } + + // 同步价格,库存,上架 + storeSku.VendorSonSkuID = utils.Int64ToStr(childrenProductId) // (属性id skuID方案一)(自商品的商品id方案二) + storeSku.VendorSkuID = utils.Int64ToStr(childrenProductId) // 子商品主id + upDateChildrenPriceStockLaunch(api, storeSku, utils.Str2Int64(storeSku.VendorSkuID), vendorStoreID, syncType) + continue + } // 获取商品的属性 if storeSku.TiktokAttribute == "" || storeSku.TiktokAttribute == "{}" { @@ -368,7 +378,6 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI param.MainProductId = mainIdInt param.SpecPrices = GetSpecPrices(param.Specs, vendorStoreID, param.MainProductId, storeSku) if err := api.EditStoreCommodity(param); err != nil { - globals.SugarLogger.Debugf("====EditStoreCommodity===== %s", err.Error()) failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) storeSku.VendorSkuID = utils.Int2Str(storeSku.SkuID) } From 4851bc9d09fb2ffa927e9284c55adff9acfcb2af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 9 Jan 2023 15:08:56 +0800 Subject: [PATCH 2/3] 1 --- business/jxstore/cms/sync_store_sku.go | 1 + 1 file changed, 1 insertion(+) diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go index f28fb5e91..6116dbae4 100644 --- a/business/jxstore/cms/sync_store_sku.go +++ b/business/jxstore/cms/sync_store_sku.go @@ -372,6 +372,7 @@ func sku2Update(vendorID int, sku *dao.StoreSkuSyncInfo, syncStatus int8) (item var skuSyncStatus int8 = 0 if model.VendorIDDD == sku.VendorID { skuSyncStatus = sku.SkuSyncStatus + kvs["dd_id"] = sku.VendorSkuID } else { skuSyncStatus = sku.SkuSyncStatus & model.SyncFlagPriceMask } From 88c80911887b803dc544a7236373cc195a7b9070 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Mon, 9 Jan 2023 15:15:43 +0800 Subject: [PATCH 3/3] 1 --- .../purchase/tiktok_store/store_sku2_utils.go | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/business/partner/purchase/tiktok_store/store_sku2_utils.go b/business/partner/purchase/tiktok_store/store_sku2_utils.go index 97f049e4f..f37ccedde 100644 --- a/business/partner/purchase/tiktok_store/store_sku2_utils.go +++ b/business/partner/purchase/tiktok_store/store_sku2_utils.go @@ -337,25 +337,25 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI continue } if mainProductDetail.Name == param.Name && (mainProductDetail.CategoryDetail.ThirdCid == param.CategoryLeafId || mainProductDetail.CategoryDetail.FourthCid == param.CategoryLeafId) { - // 更新子品 - if err := api.DeleteStoreCommodity(utils.Str2Int64(storeSku.VendorSkuID)); err != nil { - failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) - storeSku.SkuSyncStatus = 57 - continue - } - childrenProductId, err := api.CreateSubProduct(mainIdInt, utils.Str2Int64(vendorStoreID)) - if err != nil { - failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) - storeSku.SkuSyncStatus = 57 - continue - } - if (err != nil || childrenProductId == 0) && !strings.Contains(err.Error(), "2010001") { // 2010001:重复创建渠道商品,就去更新 - continue - } - - // 同步价格,库存,上架 - storeSku.VendorSonSkuID = utils.Int64ToStr(childrenProductId) // (属性id skuID方案一)(自商品的商品id方案二) - storeSku.VendorSkuID = utils.Int64ToStr(childrenProductId) // 子商品主id + // 更新子品,同步方法会更新子品的同时去更新库存和价格!删除之后接下的同步步骤失效! + //if err := api.DeleteStoreCommodity(utils.Str2Int64(storeSku.VendorSkuID)); err != nil { + // failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) + // storeSku.SkuSyncStatus = model.SyncFlagStoreSkuModifiedMask + // continue + //} + //childrenProductId, err := api.CreateSubProduct(mainIdInt, utils.Str2Int64(vendorStoreID)) + //if err != nil { + // failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) + // storeSku.SkuSyncStatus = model.SyncFlagStoreSkuModifiedMask + // continue + //} + //if (err != nil || childrenProductId == 0) && !strings.Contains(err.Error(), "2010001") { // 2010001:重复创建渠道商品,就去更新 + // continue + //} + // + //// 同步价格,库存,上架 + //storeSku.VendorSonSkuID = utils.Int64ToStr(childrenProductId) // (属性id skuID方案一)(自商品的商品id方案二) + //storeSku.VendorSkuID = utils.Int64ToStr(childrenProductId) // 子商品主id upDateChildrenPriceStockLaunch(api, storeSku, utils.Str2Int64(storeSku.VendorSkuID), vendorStoreID, syncType) continue } @@ -382,7 +382,7 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI storeSku.VendorSkuID = utils.Int2Str(storeSku.SkuID) } - storeSku.SkuSyncStatus = 57 // 品库修改 售卖状态待同步 价格待同步 + storeSku.SkuSyncStatus = model.SyncFlagStoreSkuModifiedMask // 品库修改 售卖状态待同步 价格待同步 } return }