From 543d14f9637a4f83ba02c35a575d612ee33eab0b Mon Sep 17 00:00:00 2001 From: gazebo Date: Thu, 24 Oct 2019 16:07:09 +0800 Subject: [PATCH] =?UTF-8?q?DeleteStoreCategory=E6=8E=A5=E5=8F=A3=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0level=E5=8F=82=E6=95=B0=20mtwm=E6=94=B9=E7=94=A8Retail?= =?UTF-8?q?CatSkuBatchDelete2=E6=9D=A5=E5=88=A0=E9=99=A4=E5=95=86=E5=AE=B6?= =?UTF-8?q?=E5=88=86=E7=B1=BB=EF=BC=88=E8=BF=99=E6=A0=B7=E5=8F=AF=E4=BF=9D?= =?UTF-8?q?=E8=AF=81=E5=BF=85=E9=A1=BB=E8=83=BD=E5=88=A0=E9=99=A4=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/sync_store_sku.go | 4 ++-- business/partner/partner_store_sku.go | 2 +- business/partner/purchase/ebai/store_sku2.go | 2 +- business/partner/purchase/mtwm/store_sku2.go | 20 ++++++++++++++++--- .../partner/purchase/weimob/wsc/store_sku2.go | 2 +- business/partner/putils/store_sku.go | 2 +- 6 files changed, 23 insertions(+), 9 deletions(-) diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go index 02be90ef5..d63747668 100644 --- a/business/jxstore/cms/sync_store_sku.go +++ b/business/jxstore/cms/sync_store_sku.go @@ -82,7 +82,7 @@ func SyncStorCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendor storeCatMap.ID = catInfo.MapID if model.IsSyncStatusDelete(catInfo.StoreCatSyncStatus) { // 删除 if model.IsSyncStatusDelete(catInfo.StoreCatSyncStatus) && !dao.IsVendorThingIDEmpty(catInfo.VendorCatID) { - err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, catInfo.VendorCatID) + err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, catInfo.VendorCatID, level) if err != nil && handler.IsErrCategoryNotExist(err) { err = nil } @@ -707,7 +707,7 @@ func amendAndPruneStoreStuff(ctx *jxcontext.Context, parentTask tasksch.ITask, v task4Delete := tasksch.NewParallelTask(fmt.Sprintf("删除本地不存在的远程分类,level:%d", level), tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx, func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { cat := batchItemList[0].(*partner.BareCategoryInfo) - err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, cat.VendorCatID) + err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, cat.VendorCatID, level) return nil, err }, levelCat2Delete) tasksch.HandleTask(task4Delete, task, true).Run() diff --git a/business/partner/partner_store_sku.go b/business/partner/partner_store_sku.go index ef9c654a0..605d7b458 100644 --- a/business/partner/partner_store_sku.go +++ b/business/partner/partner_store_sku.go @@ -149,7 +149,7 @@ type ISingleStoreStoreSkuHandler interface { GetStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, catName string) (cat *BareCategoryInfo, err error) CreateStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeCat *dao.SkuStoreCatInfo) (err error) UpdateStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeCat *dao.SkuStoreCatInfo) (err error) - DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string) (err error) + DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string, level int) (err error) DeleteStoreAllCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, vendorStoreID string, isContinueWhenError bool) (err error) IsErrCategoryExist(err error) (isExist bool) diff --git a/business/partner/purchase/ebai/store_sku2.go b/business/partner/purchase/ebai/store_sku2.go index a4f0290f8..f9d99cba1 100644 --- a/business/partner/purchase/ebai/store_sku2.go +++ b/business/partner/purchase/ebai/store_sku2.go @@ -95,7 +95,7 @@ func (p *PurchaseHandler) UpdateStoreCategory(ctx *jxcontext.Context, storeID in return err } -func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string) (err error) { +func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string, level int) (err error) { if globals.EnableEbaiStoreWrite { err = api.EbaiAPI.ShopCategoryDelete(utils.Int2Str(storeID), utils.Str2Int64WithDefault(vendorCatID, 0)) } diff --git a/business/partner/purchase/mtwm/store_sku2.go b/business/partner/purchase/mtwm/store_sku2.go index f30aae9aa..7eb233e51 100644 --- a/business/partner/purchase/mtwm/store_sku2.go +++ b/business/partner/purchase/mtwm/store_sku2.go @@ -162,9 +162,23 @@ func (p *PurchaseHandler) UpdateStoreCategory(ctx *jxcontext.Context, storeID in return p.CreateStoreCategory(ctx, storeID, vendorStoreID, storeCat) } -func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string) (err error) { - if globals.EnableMtwmStoreWrite { - err = api.MtwmAPI.RetailCatDelete(vendorStoreID, tryCatName2Code(vendorCatID), vendorCatID) +func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, vendorCatID string, level int) (err error) { + if false { + if globals.EnableMtwmStoreWrite { + err = api.MtwmAPI.RetailCatDelete(vendorStoreID, tryCatName2Code(vendorCatID), vendorCatID) + } + } else { + var catCodes []string + if catCode := tryCatName2Code(vendorCatID); catCode != "" { + catCodes = []string{catCode} + } + if globals.EnableMtwmStoreWrite { + if level == 1 { + err = api.MtwmAPI.RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, catCodes, []string{vendorCatID}, nil, nil, nil) + } else { + err = api.MtwmAPI.RetailCatSkuBatchDelete2(ctx.GetTrackInfo(), vendorStoreID, nil, nil, catCodes, []string{vendorCatID}, nil) + } + } } return err } diff --git a/business/partner/purchase/weimob/wsc/store_sku2.go b/business/partner/purchase/weimob/wsc/store_sku2.go index 64804c785..8c5bf18d2 100644 --- a/business/partner/purchase/weimob/wsc/store_sku2.go +++ b/business/partner/purchase/weimob/wsc/store_sku2.go @@ -64,7 +64,7 @@ func (p *PurchaseHandler) UpdateStoreCategory(ctx *jxcontext.Context, vendorStor return err } -func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, vendorStoreID, vendorCatID string) (err error) { +func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, vendorStoreID, vendorCatID string, level int) (err error) { if globals.EnableWscStoreWrite { err = api.WeimobAPI.UpdateClassify(utils.Str2Int64WithDefault(vendorCatID, 0), composeFakeDelName(vendorCatID), "") } diff --git a/business/partner/putils/store_sku.go b/business/partner/putils/store_sku.go index 557c17654..c01d99252 100644 --- a/business/partner/putils/store_sku.go +++ b/business/partner/putils/store_sku.go @@ -58,7 +58,7 @@ func (p *DefSingleStorePlatform) DeleteStoreAllCategories(ctx *jxcontext.Context vendorCatIDs[k] = v.VendorCatID } err = FreeBatchCategoryIDOp(func(vendorCatID string) (err error) { - return p.DeleteStoreCategory(ctx, storeID, vendorStoreID, vendorCatID) + return p.DeleteStoreCategory(ctx, storeID, vendorStoreID, vendorCatID, step) }, ctx, task, vendorCatIDs, isContinueWhenError) return nil, err }, len(levelList))