This commit is contained in:
邹宗楠
2024-05-17 15:39:40 +08:00
parent 531a66c127
commit de6af8dfef
2 changed files with 37 additions and 24 deletions

View File

@@ -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 {

View File

@@ -156,8 +156,9 @@ 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 {
if strings.Contains(errCreate.Error(), "outProductId或者outerProductId已经存在") { // 主品以创建但是未返回出来
mainProductDetail, _ := api.GetSkuDetail("", utils.Int2Str(storeSku.SkuID)) mainProductDetail, _ := api.GetSkuDetail("", utils.Int2Str(storeSku.SkuID))
if mainProductDetail != nil || mainProductDetail.ProductId != 0 { if mainProductDetail != nil || mainProductDetail.ProductId != 0 {
tiktokResult.ProductId = mainProductDetail.ProductId tiktokResult.ProductId = mainProductDetail.ProductId
@@ -175,13 +176,23 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
} }
tiktokResult.Sku = specPrices tiktokResult.Sku = specPrices
} else { } else {
storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做 //storeSku.SkuSyncStatus = model.SyncFlagNewMask // 只创建主品,子品都没做
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) storeSku.SkuSyncStatus = 0 // 后续不在做定时任务更新
storeSku.VendorSonSkuID = "此商品已经创建抖音主商品了"
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errCreate, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
continue continue
} }
} else if err != nil { } else if strings.Contains(errCreate.Error(), "无资质授权") {
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType) storeSku.SkuSyncStatus = 0 // 门店无资质不在做定时任务更新
storeSku.VendorSonSkuID = "无资质授权"
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errCreate, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
continue continue
} else {
storeSku.SkuSyncStatus = 0 // 门店无资质不在做定时任务更新
storeSku.VendorSonSkuID = errCreate.Error()
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errCreate, 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
} }