From 05bbcd6a601704f82bd5e2567cc759d0061cb37e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 28 Dec 2022 11:36:04 +0800 Subject: [PATCH 1/3] 1 --- business/partner/purchase/tiktok_store/store_sku2_utils.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/business/partner/purchase/tiktok_store/store_sku2_utils.go b/business/partner/purchase/tiktok_store/store_sku2_utils.go index 88ffa81d3..da7086074 100644 --- a/business/partner/purchase/tiktok_store/store_sku2_utils.go +++ b/business/partner/purchase/tiktok_store/store_sku2_utils.go @@ -215,13 +215,18 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI // 获取本地存储映射关系,获取本地主商品id是否存在 var mainProductId int64 = 0 var mainOrderDetail *product_detail_response.ProductDetailData + globals.SugarLogger.Debugf("=======storesku %s", utils.Format4Output(storeSku, false)) localThing, _ := dao.GetThingToTiktokMapList(db, model.VendorIDDD, int64(storeSku.SkuID), storeDetail.VendorOrgCode) + globals.SugarLogger.Debugf("============1") + globals.SugarLogger.Debugf("=======localThing %s", utils.Format4Output(localThing, false)) if len(localThing) != 0 { mainProductId = utils.Str2Int64(localThing[0].VendorThingID) } else { mainOrderDetail = loadMainProductId(api, storeSku) + globals.SugarLogger.Debugf("=======mainOrderDetail loadMainProductId %s", utils.Format4Output(mainOrderDetail, false)) mainProductId = mainOrderDetail.MainProductId } + globals.SugarLogger.Debugf("============2") if len(localThing) == 0 { if mainProductId == 0 { @@ -437,12 +442,14 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI func loadMainProductId(api *tiktokShop.API, storeSku *dao.StoreSkuSyncInfo) (mainOrderDetail *product_detail_response.ProductDetailData) { // 这有可能获取的值主商品也有可能是子商品,我们需要的是主商品id和状态 mainOrderDetail, err := api.GetSkuDetailLocalID("", utils.Int2Str(storeSku.SkuID)) + globals.SugarLogger.Debugf("===GetSkuDetailLocalID %s", utils.Format4Output(mainOrderDetail, false)) if err != nil || mainOrderDetail == nil { mainOrderDetail.MainProductId = 0 return } if mainOrderDetail.MainProductId != 0 { // 子商品时,获取主商品id和状态 mainOrderDetail, err = api.GetSkuDetail(utils.Int64ToStr(mainOrderDetail.MainProductId), "") + globals.SugarLogger.Debugf("===GetSkuDetail %s", utils.Format4Output(mainOrderDetail, false)) if err != nil || mainOrderDetail == nil { mainOrderDetail.MainProductId = 0 return From eea33bdae42b0867ad744cc12d481aaebce09872 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 28 Dec 2022 11:43:46 +0800 Subject: [PATCH 2/3] 1 --- .../partner/purchase/tiktok_store/store_sku2_utils.go | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/business/partner/purchase/tiktok_store/store_sku2_utils.go b/business/partner/purchase/tiktok_store/store_sku2_utils.go index da7086074..311673fed 100644 --- a/business/partner/purchase/tiktok_store/store_sku2_utils.go +++ b/business/partner/purchase/tiktok_store/store_sku2_utils.go @@ -439,26 +439,25 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI return failedList, err } -func loadMainProductId(api *tiktokShop.API, storeSku *dao.StoreSkuSyncInfo) (mainOrderDetail *product_detail_response.ProductDetailData) { +func loadMainProductId(api *tiktokShop.API, storeSku *dao.StoreSkuSyncInfo) *product_detail_response.ProductDetailData { // 这有可能获取的值主商品也有可能是子商品,我们需要的是主商品id和状态 + var mainOrderDetail *product_detail_response.ProductDetailData mainOrderDetail, err := api.GetSkuDetailLocalID("", utils.Int2Str(storeSku.SkuID)) - globals.SugarLogger.Debugf("===GetSkuDetailLocalID %s", utils.Format4Output(mainOrderDetail, false)) if err != nil || mainOrderDetail == nil { mainOrderDetail.MainProductId = 0 - return + return mainOrderDetail } if mainOrderDetail.MainProductId != 0 { // 子商品时,获取主商品id和状态 mainOrderDetail, err = api.GetSkuDetail(utils.Int64ToStr(mainOrderDetail.MainProductId), "") - globals.SugarLogger.Debugf("===GetSkuDetail %s", utils.Format4Output(mainOrderDetail, false)) if err != nil || mainOrderDetail == nil { mainOrderDetail.MainProductId = 0 - return + return mainOrderDetail } mainOrderDetail.MainProductId = mainOrderDetail.ProductId } else { mainOrderDetail.MainProductId = mainOrderDetail.ProductId // 主商品 } - return + return mainOrderDetail } func checkNameLenght(name string) string { From 580b11a3f64ea6003284c2d2fde908ea889a1f8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 28 Dec 2022 11:56:31 +0800 Subject: [PATCH 3/3] 1 --- .../purchase/tiktok_store/store_sku2_utils.go | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/business/partner/purchase/tiktok_store/store_sku2_utils.go b/business/partner/purchase/tiktok_store/store_sku2_utils.go index 311673fed..4a42434ee 100644 --- a/business/partner/purchase/tiktok_store/store_sku2_utils.go +++ b/business/partner/purchase/tiktok_store/store_sku2_utils.go @@ -442,18 +442,25 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI func loadMainProductId(api *tiktokShop.API, storeSku *dao.StoreSkuSyncInfo) *product_detail_response.ProductDetailData { // 这有可能获取的值主商品也有可能是子商品,我们需要的是主商品id和状态 var mainOrderDetail *product_detail_response.ProductDetailData - mainOrderDetail, err := api.GetSkuDetailLocalID("", utils.Int2Str(storeSku.SkuID)) - if err != nil || mainOrderDetail == nil { + mainOrderDetailSkuId, err := api.GetSkuDetailLocalID("", utils.Int2Str(storeSku.SkuID)) + if err != nil || mainOrderDetailSkuId == nil { mainOrderDetail.MainProductId = 0 return mainOrderDetail } + if mainOrderDetailSkuId.MainProductId != 0 { // 查询出来是子商品 + mainOrderDetail.MainProductId = mainOrderDetailSkuId.MainProductId + } else { // 查询出来是主商品 + mainOrderDetail.MainProductId = mainOrderDetailSkuId.ProductId + return mainOrderDetail + } + if mainOrderDetail.MainProductId != 0 { // 子商品时,获取主商品id和状态 - mainOrderDetail, err = api.GetSkuDetail(utils.Int64ToStr(mainOrderDetail.MainProductId), "") - if err != nil || mainOrderDetail == nil { + mainOrderDetailProductId, err := api.GetSkuDetail(utils.Int64ToStr(mainOrderDetail.MainProductId), "") + if err != nil || mainOrderDetailProductId == nil { mainOrderDetail.MainProductId = 0 return mainOrderDetail } - mainOrderDetail.MainProductId = mainOrderDetail.ProductId + mainOrderDetail.MainProductId = mainOrderDetailProductId.ProductId } else { mainOrderDetail.MainProductId = mainOrderDetail.ProductId // 主商品 }