+ partner.IsErrSkuExist
+ partner.IsErrSkuNotExist
This commit is contained in:
@@ -334,27 +334,41 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo
|
|||||||
if len(deleteList) > 0 {
|
if len(deleteList) > 0 {
|
||||||
_, err = putils.FreeBatchStoreSkuInfo(func(batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, err error) {
|
_, err = putils.FreeBatchStoreSkuInfo(func(batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, err error) {
|
||||||
var successList []*partner.StoreSkuInfo
|
var successList []*partner.StoreSkuInfo
|
||||||
if successList, err = singleStoreHandler.DeleteStoreSkus(ctx, storeID, vendorStoreID, batchedStoreSkuList); err == nil {
|
if successList, err = singleStoreHandler.DeleteStoreSkus(ctx, storeID, vendorStoreID, batchedStoreSkuList); singleStoreHandler.IsErrSkuNotExist(err) {
|
||||||
|
err = nil
|
||||||
|
}
|
||||||
|
if err == nil {
|
||||||
successList = batchedStoreSkuList
|
successList = batchedStoreSkuList
|
||||||
}
|
}
|
||||||
if len(successList) > 0 {
|
if len(successList) > 0 {
|
||||||
_, err = updateStoreSku(dao.GetDB(), vendorID, bareSku2Sync(successList), model.SyncFlagDeletedMask)
|
_, err = updateStoreSku(dao.GetDB(), vendorID, bareSku2Sync(successList), model.SyncFlagDeletedMask)
|
||||||
}
|
}
|
||||||
return nil, err
|
return nil, err
|
||||||
}, ctx, task, deleteList, singleStoreHandler.GetStoreSkusBatchSize(partner.FuncDeleteStoreSkus), isContinueWhenError)
|
}, ctx, task, deleteList, 1 /*singleStoreHandler.GetStoreSkusBatchSize(partner.FuncDeleteStoreSkus)*/, isContinueWhenError)
|
||||||
}
|
}
|
||||||
case 1:
|
case 1:
|
||||||
if len(createList) > 0 {
|
if len(createList) > 0 {
|
||||||
_, err = putils.FreeBatchStoreSkuSyncInfo(func(batchedStoreSkuList []*dao.StoreSkuSyncInfo) (result interface{}, err error) {
|
_, err = putils.FreeBatchStoreSkuSyncInfo(func(batchedStoreSkuList []*dao.StoreSkuSyncInfo) (result interface{}, err error) {
|
||||||
var successList []*dao.StoreSkuSyncInfo
|
var successList []*dao.StoreSkuSyncInfo
|
||||||
if successList, err = singleStoreHandler.CreateStoreSkus(ctx, storeID, vendorStoreID, batchedStoreSkuList); err == nil {
|
if successList, err = singleStoreHandler.CreateStoreSkus(ctx, storeID, vendorStoreID, batchedStoreSkuList); singleStoreHandler.IsErrSkuExist(err) {
|
||||||
|
if skuNameList, err2 := singleStoreHandler.GetStoreSkusFullInfo(ctx, nil, storeID, vendorStoreID, []*partner.StoreSkuInfo{
|
||||||
|
&partner.StoreSkuInfo{
|
||||||
|
SkuID: batchedStoreSkuList[0].SkuID,
|
||||||
|
},
|
||||||
|
}); err2 == nil {
|
||||||
|
batchedStoreSkuList[0].VendorNameID = skuNameList[0].VendorNameID
|
||||||
|
batchedStoreSkuList[0].VendorSkuID = skuNameList[0].SkuList[0].VendorSkuID
|
||||||
|
err = nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if err == nil {
|
||||||
successList = batchedStoreSkuList
|
successList = batchedStoreSkuList
|
||||||
}
|
}
|
||||||
if len(successList) > 0 {
|
if len(successList) > 0 {
|
||||||
_, err = updateStoreSku(dao.GetDB(), vendorID, successList, model.SyncFlagNewMask)
|
_, err = updateStoreSku(dao.GetDB(), vendorID, successList, model.SyncFlagNewMask)
|
||||||
}
|
}
|
||||||
return nil, err
|
return nil, err
|
||||||
}, ctx, task, createList, singleStoreHandler.GetStoreSkusBatchSize(partner.FuncCreateStoreSkus), isContinueWhenError)
|
}, ctx, task, createList, 1 /*singleStoreHandler.GetStoreSkusBatchSize(partner.FuncCreateStoreSkus)*/, isContinueWhenError)
|
||||||
}
|
}
|
||||||
case 2:
|
case 2:
|
||||||
if len(updateList) > 0 {
|
if len(updateList) > 0 {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import (
|
|||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -25,7 +26,7 @@ const (
|
|||||||
const (
|
const (
|
||||||
UnlimitedBatchSize = math.MaxInt32
|
UnlimitedBatchSize = math.MaxInt32
|
||||||
|
|
||||||
MaxStoreSkuStock = 9999
|
MaxStoreSkuStock = model.MaxStoreSkuStockQty
|
||||||
UnlimitedStoreSkuStock = -1
|
UnlimitedStoreSkuStock = -1
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -123,6 +124,8 @@ type ISingleStoreStoreSkuHandler interface {
|
|||||||
UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error)
|
UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error)
|
||||||
DeleteStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*StoreSkuInfo) (successList []*StoreSkuInfo, err error)
|
DeleteStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*StoreSkuInfo) (successList []*StoreSkuInfo, err error)
|
||||||
DeleteStoreAllSkus(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, vendorStoreID string, isContinueWhenError bool) (err error)
|
DeleteStoreAllSkus(ctx *jxcontext.Context, parentTask tasksch.ITask, storeID int, vendorStoreID string, isContinueWhenError bool) (err error)
|
||||||
|
IsErrSkuExist(err error) (isExist bool)
|
||||||
|
IsErrSkuNotExist(err error) (isNotExist bool)
|
||||||
|
|
||||||
GetStoreAllCategories(ctx *jxcontext.Context, storeID int, vendorStoreID string) (cats []*BareCategoryInfo, err error)
|
GetStoreAllCategories(ctx *jxcontext.Context, storeID int, vendorStoreID string) (cats []*BareCategoryInfo, err error)
|
||||||
GetStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, catName string) (cat *BareCategoryInfo, err error)
|
GetStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID, catName string) (cat *BareCategoryInfo, err error)
|
||||||
|
|||||||
@@ -91,6 +91,15 @@ func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
// 门店商品
|
// 门店商品
|
||||||
|
|
||||||
// 多门店平台不需要实现这个接口
|
// 多门店平台不需要实现这个接口
|
||||||
|
|
||||||
|
func (p *PurchaseHandler) IsErrSkuExist(err error) (isExist bool) {
|
||||||
|
return ebaiapi.IsErrSkuExist(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *PurchaseHandler) IsErrSkuNotExist(err error) (isNotExist bool) {
|
||||||
|
return ebaiapi.IsErrSkuNotExist(err)
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) {
|
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) {
|
||||||
storeSku := storeSkuList[0]
|
storeSku := storeSkuList[0]
|
||||||
if globals.EnableEbaiStoreWrite {
|
if globals.EnableEbaiStoreWrite {
|
||||||
|
|||||||
@@ -115,6 +115,15 @@ func (p *PurchaseHandler) DeleteStoreCategory(ctx *jxcontext.Context, storeID in
|
|||||||
// 门店商品
|
// 门店商品
|
||||||
|
|
||||||
// 多门店平台不需要实现这个接口
|
// 多门店平台不需要实现这个接口
|
||||||
|
|
||||||
|
func (p *PurchaseHandler) IsErrSkuExist(err error) (isExist bool) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *PurchaseHandler) IsErrSkuNotExist(err error) (isNotExist bool) {
|
||||||
|
return mtwmapi.IsErrSkuNotExist(err)
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) {
|
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) {
|
||||||
return p.CreateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList)
|
return p.CreateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user