diff --git a/business/partner/purchase/tiktok_store/store_sku2_utils.go b/business/partner/purchase/tiktok_store/store_sku2_utils.go index ea38e62f1..10e528cf1 100644 --- a/business/partner/purchase/tiktok_store/store_sku2_utils.go +++ b/business/partner/purchase/tiktok_store/store_sku2_utils.go @@ -384,10 +384,29 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI } // 获取品牌 param.StandardBrandId = 789194134 // 默认品牌京西菜市 + var mainIdInt int64 + if storeSku.VendorMainId == "" { + localThing, _ := dao.GetThingToTiktokMapList(db, model.VendorIDDD, int64(storeSku.SkuID), storeDetail.VendorOrgCode) + if len(localThing) == 0 || localThing == nil { + mainOrderDetail, err := api.GetSkuDetailLocalID("", utils.Int2Str(storeSku.SkuID)) + if err != nil { + failedList = putils.GetErrMsg2FailedSingleList(storeSkuList, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) + continue + } + storeSku.VendorMainId = mainOrderDetail.ProductIdStr + mainIdInt = mainOrderDetail.MainProductId + if err := dao.CreateThingMap(int64(storeSku.SkuID), mainOrderDetail.ProductIdStr, storeDetail.VendorOrgCode, storeSku.VendorSkuAttrId, model.ThingTypeSku, 0); err != nil { + failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) + } + } else { + storeSku.VendorMainId = localThing[0].VendorThingID + mainIdInt = utils.Str2Int64(localThing[0].VendorThingID) + } + } // 修改商品 - param.ProductId = utils.Str2Int64(storeSku.VendorMainId) - param.MainProductId = utils.Str2Int64(storeSku.VendorMainId) + param.ProductId = mainIdInt + param.MainProductId = mainIdInt param.SpecPrices = GetSpecPrices(param.Specs, vendorStoreID, param.MainProductId, storeSku) param.StoreId = utils.Str2Int64(vendorStoreID) if err := api.EditStoreCommodity(param); err != nil {