This commit is contained in:
邹宗楠
2023-10-11 09:15:01 +08:00
parent 88bb777be1
commit 553a226cba

View File

@@ -4,6 +4,7 @@ import (
"encoding/json"
"errors"
"fmt"
product_addV2_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/product_addV2/response"
"strings"
"time"
"unicode"
@@ -157,10 +158,31 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
}
tiktokResult, err := api.CreateStoreCommodity(param) // 创建主商品,同步主商品
if err != nil {
if strings.Contains(err.Error(), "outProductId或者outerProductId已经存在") { // 主品以创建但是未返回出来
mainProductDetail, _ := api.GetSkuDetail("", utils.Int2Str(storeSku.SkuID))
if mainProductDetail != nil || mainProductDetail.ProductId != 0 {
tiktokResult.ProductId = mainProductDetail.ProductId
specPrices := make([]product_addV2_response.SkuItem, 0, 0)
for _, v := range mainProductDetail.SpecPrices {
specPrices = append(specPrices, product_addV2_response.SkuItem{
SkuId: v.SkuId,
OutSkuId: v.OutSkuId,
OuterSkuId: v.OuterSkuId,
Code: v.Code,
SpecDetailId1: v.SpecDetailId1,
SpecDetailId2: v.SpecDetailId2,
SpecDetailId3: v.SpecDetailId3,
})
}
tiktokResult.Sku = specPrices
} else {
storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
continue
}
}
//dao.UpdateThingMap(db, model.ThingTypeSyncFail, utils.Int64ToStr(time.Now().Unix()), storeSku.SkuID, model.VendorIDDD, storeDetail.VendorOrgCode)
storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
continue
}
if tiktokResult.ProductId > model.NO {