- 适应门店商品修复API,添加trackInfo参数
This commit is contained in:
@@ -231,7 +231,7 @@ func (p *PurchaseHandler) syncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
||||
if storeSku.NameID == 0 || storeSku.EbaiSyncStatus&model.SyncFlagDeletedMask != 0 {
|
||||
if storeSku.EbaiSyncStatus&model.SyncFlagNewMask == 0 && !jxutils.IsEmptyID(storeSku.EbaiID) {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
opResult, err2 := api.EbaiAPI.SkuDelete(strStoreID, []int64{storeSku.EbaiID}, nil)
|
||||
opResult, err2 := api.EbaiAPI.SkuDelete(ctx.GetTrackInfo(), strStoreID, []int64{storeSku.EbaiID}, nil)
|
||||
if err = err2; err != nil {
|
||||
if ebaiapi.IsErrSkuNotExist(err) || (opResult != nil && len(opResult.FailedList) == 1) {
|
||||
err = nil
|
||||
@@ -255,7 +255,7 @@ func (p *PurchaseHandler) syncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
||||
if mergedStoreSkuStatus == model.SkuStatusNormal { // 待创建且不可售的,暂不新建
|
||||
if storeSku.Img != "" {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
if storeSku.EbaiID, err = api.EbaiAPI.SkuCreate(strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err == nil {
|
||||
if storeSku.EbaiID, err = api.EbaiAPI.SkuCreate(ctx.GetTrackInfo(), strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err == nil {
|
||||
utils.AfterFuncWithRecover(5*time.Second, func() {
|
||||
api.EbaiAPI.SkuShopCategoryMap(strStoreID, storeSku.EbaiID, "", storeSku.CatEbaiID, ebaiapi.MaxSkuCatRank-storeSku.Price)
|
||||
})
|
||||
@@ -269,7 +269,7 @@ func (p *PurchaseHandler) syncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
||||
if storeSku.EbaiID = api.EbaiAPI.GetEbaiSkuIDFromCustomID(strStoreID, utils.Int2Str(storeSku.SkuID)); storeSku.EbaiID > 0 {
|
||||
err = nil
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
if err2 := skuUpdate(strStoreID, pricePercentage, storeSku); err2 != nil {
|
||||
if err2 := skuUpdate(ctx, strStoreID, pricePercentage, storeSku); err2 != nil {
|
||||
syncStatus = model.SyncFlagStoreSkuModifiedMask
|
||||
}
|
||||
}
|
||||
@@ -285,7 +285,7 @@ func (p *PurchaseHandler) syncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
||||
err = fmt.Errorf("京西数据异常,修改一个没有创建的饿百商品:%d, store:%s", storeSku.SkuID, strStoreID)
|
||||
} else {
|
||||
if storeSku.Img != "" {
|
||||
err = skuUpdate(strStoreID, pricePercentage, storeSku)
|
||||
err = skuUpdate(ctx, strStoreID, pricePercentage, storeSku)
|
||||
} else {
|
||||
err = fmt.Errorf("SKUANME%d:%s没有图片,同步失败", storeSku.NameID, storeSku.Name)
|
||||
}
|
||||
@@ -314,14 +314,14 @@ func (p *PurchaseHandler) syncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
||||
return rootTask.ID, err
|
||||
}
|
||||
|
||||
func skuUpdate(strStoreID string, pricePercentage int, storeSku *tStoreSkuFullInfo) (err error) {
|
||||
func skuUpdate(ctx *jxcontext.Context, strStoreID string, pricePercentage int, storeSku *tStoreSkuFullInfo) (err error) {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
if _, err = api.EbaiAPI.SkuUpdate(strStoreID, storeSku.EbaiID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err != nil {
|
||||
if _, err = api.EbaiAPI.SkuUpdate(ctx.GetTrackInfo(), strStoreID, storeSku.EbaiID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err != nil {
|
||||
// 如果是改价错误,尝试把价格标志去掉再同步
|
||||
if isErrModifyPrice(err) {
|
||||
storeSku.EbaiSyncStatus = storeSku.EbaiSyncStatus & ^model.SyncFlagPriceMask
|
||||
if storeSku.EbaiSyncStatus != 0 {
|
||||
if _, err2 := api.EbaiAPI.SkuUpdate(strStoreID, storeSku.EbaiID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err2 != nil {
|
||||
if _, err2 := api.EbaiAPI.SkuUpdate(ctx.GetTrackInfo(), strStoreID, storeSku.EbaiID, genSkuParamsFromStoreSkuInfo(pricePercentage, storeSku)); err2 != nil {
|
||||
err = err2
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user