错误返回

This commit is contained in:
苏尹岚
2020-01-07 17:53:56 +08:00
parent e813e81ed8
commit 86e783a4d0
10 changed files with 99 additions and 59 deletions

View File

@@ -80,15 +80,16 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
catInfo := batchItemList[0].(*dao.SkuStoreCatInfo)
storeCatMap := &model.StoreSkuCategoryMap{}
storeCatMap.ID = catInfo.MapID
var failedList []*partner.StoreSkuInfoWithErr
if model.IsSyncStatusDelete(catInfo.CatSyncStatus) { // 删除
if model.IsSyncStatusDelete(catInfo.CatSyncStatus) && !dao.IsVendorThingIDEmpty(catInfo.VendorCatID) {
err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, catInfo.VendorCatID, level)
failedList, err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, catInfo.VendorCatID, level)
if err != nil && handler.IsErrCategoryNotExist(err) {
err = nil
}
}
} else if model.IsSyncStatusNew(catInfo.CatSyncStatus) { // 新增
err = handler.CreateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
failedList, err = handler.CreateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
if err != nil && handler.IsErrCategoryExist(err) {
if cat, err2 := handler.GetStoreCategory(ctx, storeID, vendorStoreID, catInfo.Name); err2 == nil {
catInfo.VendorCatID = cat.VendorCatID
@@ -103,10 +104,17 @@ func SyncStoreCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendo
}
}
} else if model.IsSyncStatusUpdate(catInfo.CatSyncStatus) { // 修改
if err = handler.UpdateStoreCategory(ctx, storeID, vendorStoreID, catInfo); err == nil {
failedList, err = handler.UpdateStoreCategory(ctx, storeID, vendorStoreID, catInfo)
if err == nil {
updateFields = append(updateFields, idFieldName)
}
}
if len(failedList) > 0 {
for _, v := range failedList {
v.CategoryName = catInfo.Name
}
task.AddErrMsg(failedList)
}
if err == nil {
if vendorID == model.VendorIDMTWM {
refutil.SetObjFieldByName(storeCatMap, idFieldName, catInfo.VendorCatID)
@@ -548,7 +556,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo
if len(list) > 0 {
_, err = putils.FreeBatchStoreSkuInfo("更新门店商品库存", func(task tasksch.ITask, batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, successCount int, err error) {
var failedList []*partner.StoreSkuInfoWithErr
failedList, err = storeSkuHandler.UpdateStoreSkusStock(ctx,storeDetail.VendorOrgCode, storeID, vendorStoreID, batchedStoreSkuList)
failedList, err = storeSkuHandler.UpdateStoreSkusStock(ctx, storeDetail.VendorOrgCode, storeID, vendorStoreID, batchedStoreSkuList)
if len(failedList) > 0 {
task.AddErrMsg(failedList)
}
@@ -572,7 +580,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo
if len(statusList) > 0 {
_, err = putils.FreeBatchStoreSkuInfo(name, func(task tasksch.ITask, batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, successCount int, err error) {
var failedList []*partner.StoreSkuInfoWithErr
failedList, err = storeSkuHandler.UpdateStoreSkusStatus(ctx, storeDetail.VendorOrgCode,storeID, vendorStoreID, batchedStoreSkuList, status)
failedList, err = storeSkuHandler.UpdateStoreSkusStatus(ctx, storeDetail.VendorOrgCode, storeID, vendorStoreID, batchedStoreSkuList, status)
if len(failedList) > 0 {
task.AddErrMsg(failedList)
}
@@ -587,7 +595,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, isFull bo
if len(priceList) > 0 {
_, err = putils.FreeBatchStoreSkuInfo("更新门店商品价格", func(task tasksch.ITask, batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, successCount int, err error) {
var failedList []*partner.StoreSkuInfoWithErr
failedList, err = storeSkuHandler.UpdateStoreSkusPrice(ctx, storeDetail.VendorOrgCode,storeID, vendorStoreID, batchedStoreSkuList)
failedList, err = storeSkuHandler.UpdateStoreSkusPrice(ctx, storeDetail.VendorOrgCode, storeID, vendorStoreID, batchedStoreSkuList)
if len(failedList) > 0 {
task.AddErrMsg(failedList)
}
@@ -789,7 +797,7 @@ func amendAndPruneStoreStuff(ctx *jxcontext.Context, parentTask tasksch.ITask, v
task4Delete := tasksch.NewParallelTask(fmt.Sprintf("删除商家分类,level:%d", level), tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
cat := batchItemList[0].(*partner.BareCategoryInfo)
err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, cat.VendorCatID, level)
_, err = handler.DeleteStoreCategory(ctx, storeID, vendorStoreID, cat.VendorCatID, level)
return nil, err
}, levelCat2Delete)
tasksch.HandleTask(task4Delete, task, true).Run()