1
This commit is contained in:
@@ -13,6 +13,7 @@ const (
|
|||||||
ThingTypeSyncSuccess = 0 // 主商品创建成功
|
ThingTypeSyncSuccess = 0 // 主商品创建成功
|
||||||
ThingTypeSyncFail = 2 // 主商品创建失败
|
ThingTypeSyncFail = 2 // 主商品创建失败
|
||||||
ThingTypeSyncing = 3 // 主商品创建中
|
ThingTypeSyncing = 3 // 主商品创建中
|
||||||
|
ThingTypeSyncingStop = 4 // 主商品创建失败,不在创建
|
||||||
)
|
)
|
||||||
|
|
||||||
type ThingMap struct {
|
type ThingMap struct {
|
||||||
|
|||||||
@@ -156,32 +156,43 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
|||||||
failedList = append(failedList, failedList2...)
|
failedList = append(failedList, failedList2...)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
tiktokResult, err := api.CreateStoreCommodity(param) // 创建主商品,同步主商品
|
tiktokResult, errCreate := api.CreateStoreCommodity(param) // 创建主商品,同步主商品
|
||||||
if err != nil && strings.Contains(err.Error(), "outProductId或者outerProductId已经存在") { // 主品以创建但是未返回出来
|
if errCreate != nil {
|
||||||
mainProductDetail, _ := api.GetSkuDetail("", utils.Int2Str(storeSku.SkuID))
|
if strings.Contains(errCreate.Error(), "outProductId或者outerProductId已经存在") { // 主品以创建但是未返回出来
|
||||||
if mainProductDetail != nil || mainProductDetail.ProductId != 0 {
|
mainProductDetail, _ := api.GetSkuDetail("", utils.Int2Str(storeSku.SkuID))
|
||||||
tiktokResult.ProductId = mainProductDetail.ProductId
|
if mainProductDetail != nil || mainProductDetail.ProductId != 0 {
|
||||||
specPrices := make([]product_addV2_response.SkuItem, 0, 0)
|
tiktokResult.ProductId = mainProductDetail.ProductId
|
||||||
for _, v := range mainProductDetail.SpecPrices {
|
specPrices := make([]product_addV2_response.SkuItem, 0, 0)
|
||||||
specPrices = append(specPrices, product_addV2_response.SkuItem{
|
for _, v := range mainProductDetail.SpecPrices {
|
||||||
SkuId: v.SkuId,
|
specPrices = append(specPrices, product_addV2_response.SkuItem{
|
||||||
OutSkuId: v.OutSkuId,
|
SkuId: v.SkuId,
|
||||||
OuterSkuId: v.OuterSkuId,
|
OutSkuId: v.OutSkuId,
|
||||||
Code: v.Code,
|
OuterSkuId: v.OuterSkuId,
|
||||||
SpecDetailId1: v.SpecDetailId1,
|
Code: v.Code,
|
||||||
SpecDetailId2: v.SpecDetailId2,
|
SpecDetailId1: v.SpecDetailId1,
|
||||||
SpecDetailId3: v.SpecDetailId3,
|
SpecDetailId2: v.SpecDetailId2,
|
||||||
})
|
SpecDetailId3: v.SpecDetailId3,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
tiktokResult.Sku = specPrices
|
||||||
|
} else {
|
||||||
|
//storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做
|
||||||
|
storeSku.SkuSyncStatus = 0 // 后续不在做定时任务更新
|
||||||
|
storeSku.VendorSonSkuID = "此商品已经创建抖音主商品了"
|
||||||
|
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errCreate, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||||
|
continue
|
||||||
}
|
}
|
||||||
tiktokResult.Sku = specPrices
|
} else if strings.Contains(errCreate.Error(), "无资质授权") {
|
||||||
|
storeSku.SkuSyncStatus = 0 // 门店无资质不在做定时任务更新
|
||||||
|
storeSku.VendorSonSkuID = "无资质授权"
|
||||||
|
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errCreate, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||||
|
continue
|
||||||
} else {
|
} else {
|
||||||
storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做
|
storeSku.SkuSyncStatus = 0 // 门店无资质不在做定时任务更新
|
||||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
storeSku.VendorSonSkuID = errCreate.Error()
|
||||||
|
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errCreate, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
} else if err != nil {
|
|
||||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
|
||||||
continue
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if tiktokResult.ProductId > model.NO {
|
if tiktokResult.ProductId > model.NO {
|
||||||
@@ -208,8 +219,9 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
|||||||
}
|
}
|
||||||
tiktokResult, err := api.CreateStoreCommodity(param) // 创建主商品,同步主商品
|
tiktokResult, err := api.CreateStoreCommodity(param) // 创建主商品,同步主商品
|
||||||
if err != nil {
|
if err != nil {
|
||||||
storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做
|
storeSku.SkuSyncStatus = 0 // 只创建主品,子品都没做
|
||||||
dao.UpdateThingMap(db, model.ThingTypeSyncFail, utils.Int64ToStr(time.Now().Unix()), storeSku.SkuID, model.VendorIDDD, storeDetail.VendorOrgCode)
|
storeSku.VendorSonSkuID = err.Error()
|
||||||
|
dao.UpdateThingMap(db, model.ThingTypeSyncingStop, err.Error(), storeSku.SkuID, model.VendorIDDD, storeDetail.VendorOrgCode)
|
||||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user