From f5bbb9d3f13536f92bc171f4192199e6af0b42a5 Mon Sep 17 00:00:00 2001 From: gazebo Date: Tue, 23 Jul 2019 18:07:52 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E9=A5=BF=E7=99=BE=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E5=9C=A8=E5=88=9B=E5=BB=BA=E6=88=90=E5=8A=9F?= =?UTF-8?q?=E5=90=8E=E8=B0=83=E7=94=A8SkuShopCategoryMap=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E5=86=85=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/ebai/store_sku.go | 4 +++- business/partner/purchase/ebai/store_sku2.go | 13 ++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/ebai/store_sku.go b/business/partner/purchase/ebai/store_sku.go index 67ab08dfb..fe5b0ad42 100644 --- a/business/partner/purchase/ebai/store_sku.go +++ b/business/partner/purchase/ebai/store_sku.go @@ -264,7 +264,9 @@ func (p *PurchaseHandler) syncStoreSkus(ctx *jxcontext.Context, parentTask tasks if mergedStoreSkuStatus == model.SkuStatusNormal { // 待创建且不可售的,暂不新建 if storeSku.Img != "" { if globals.EnableEbaiStoreWrite { - storeSku.EbaiID, err = api.EbaiAPI.SkuCreate(strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)) + if storeSku.EbaiID, err = api.EbaiAPI.SkuCreate(strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err == nil { + api.EbaiAPI.SkuShopCategoryMap(strStoreID, storeSku.EbaiID, "", storeSku.CatEbaiID, maxSkuCatRank-storeSku.Price) + } } else { storeSku.EbaiID = jxutils.GenFakeID() } diff --git a/business/partner/purchase/ebai/store_sku2.go b/business/partner/purchase/ebai/store_sku2.go index 8e97e7ce6..bcfffd89f 100644 --- a/business/partner/purchase/ebai/store_sku2.go +++ b/business/partner/purchase/ebai/store_sku2.go @@ -14,6 +14,10 @@ import ( "git.rosy.net.cn/jx-callback/globals/api" ) +const ( + maxSkuCatRank = 1000000 // 这个是rank的最大值 +) + func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) { switch funcID { case partner.FuncUpdateStoreSkusStock, partner.FuncUpdateStoreSkusStatus, partner.FuncUpdateStoreSkusPrice, partner.FuncDeleteStoreSkus: @@ -95,12 +99,19 @@ func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, v return nil, err } +func genSkuCatRank(storeSku *dao.StoreSkuSyncInfo) int { + return int(maxSkuCatRank - storeSku.Price) +} + // 对于多门店平台来说,storeSkuList中只有SkuID与VendorSkuID有意义 func (p *PurchaseHandler) CreateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) { storeSku := storeSkuList[0] var vendorSkuID int64 if globals.EnableEbaiStoreWrite { - vendorSkuID, err = api.EbaiAPI.SkuCreate(utils.Int2Str(storeID), storeSku.SkuID, genSkuParamsFromStoreSkuInfo2(storeSku)) + strStoreID := utils.Int2Str(storeID) + if vendorSkuID, err = api.EbaiAPI.SkuCreate(strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo2(storeSku)); err == nil { + api.EbaiAPI.SkuShopCategoryMap(strStoreID, vendorSkuID, "", utils.Str2Int64(storeSku.VendorCatID), genSkuCatRank(storeSku)) + } } else { vendorSkuID = jxutils.GenFakeID() }