- 将大部分使用IsFakeID改为IsEmptyID,这样更符合语义
This commit is contained in:
@@ -250,48 +250,55 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
||||
func(t *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
storeSku := batchItemList[0].(*tStoreSkuFullInfo)
|
||||
updateFields := []string{model.FieldEbaiSyncStatus}
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
if storeSku.NameID == 0 || storeSku.EbaiSyncStatus&model.SyncFlagDeletedMask != 0 {
|
||||
if storeSku.EbaiSyncStatus&model.SyncFlagNewMask == 0 && !jxutils.IsFakeID(storeSku.EbaiID) {
|
||||
if storeSku.NameID == 0 || storeSku.EbaiSyncStatus&model.SyncFlagDeletedMask != 0 {
|
||||
if storeSku.EbaiSyncStatus&model.SyncFlagNewMask == 0 && !jxutils.IsEmptyID(storeSku.EbaiID) {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
err = api.EbaiAPI.SkuDelete(strStoreID, utils.Int64ToStr(storeSku.EbaiID))
|
||||
}
|
||||
if err == nil {
|
||||
if utils.IsTimeZero(storeSku.DeletedAt) {
|
||||
storeSku.DeletedAt = time.Now()
|
||||
updateFields = append(updateFields, model.FieldDeletedAt)
|
||||
}
|
||||
storeSku.EbaiID = 0
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
}
|
||||
if err == nil {
|
||||
if utils.IsTimeZero(storeSku.DeletedAt) {
|
||||
storeSku.DeletedAt = time.Now()
|
||||
updateFields = append(updateFields, model.FieldDeletedAt)
|
||||
}
|
||||
} else {
|
||||
if storeSku.EbaiSyncStatus&model.SyncFlagNewMask != 0 {
|
||||
// globals.SugarLogger.Debug(utils.Format4Output(genSkuParamsFromStoreSkuInfo(storeSku), false))
|
||||
// todo 适当处理重复(即已经创建)的情况
|
||||
mergedStoreSkuStatus := jxutils.MergeSkuStatus(storeSku.SkuStatus, storeSku.Status)
|
||||
if mergedStoreSkuStatus == model.SkuStatusNormal {
|
||||
if storeSku.Img != "" {
|
||||
if storeSku.EbaiID, err = api.EbaiAPI.SkuCreate(strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo(storeSku)); err == nil {
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
} else if storeSku.EbaiID = ebaiapi.GetEbaiSkuIDFromError(err); storeSku.EbaiID > 0 {
|
||||
// globals.SugarLogger.Debugf("SyncStoreSkus test storeSku.EbaiID:%d, err:%v", storeSku.EbaiID, err)
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
storeSku.EbaiID = 0
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
}
|
||||
} else {
|
||||
if storeSku.EbaiSyncStatus&model.SyncFlagNewMask != 0 {
|
||||
// globals.SugarLogger.Debug(utils.Format4Output(genSkuParamsFromStoreSkuInfo(storeSku), false))
|
||||
// todo 适当处理重复(即已经创建)的情况
|
||||
mergedStoreSkuStatus := jxutils.MergeSkuStatus(storeSku.SkuStatus, storeSku.Status)
|
||||
if mergedStoreSkuStatus == model.SkuStatusNormal {
|
||||
if storeSku.Img != "" {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
storeSku.EbaiID, err = api.EbaiAPI.SkuCreate(strStoreID, storeSku.SkuID, genSkuParamsFromStoreSkuInfo(storeSku))
|
||||
}
|
||||
if err == nil {
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
} else if storeSku.EbaiID = ebaiapi.GetEbaiSkuIDFromError(err); storeSku.EbaiID > 0 {
|
||||
// globals.SugarLogger.Debugf("SyncStoreSkus test storeSku.EbaiID:%d, err:%v", storeSku.EbaiID, err)
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
_, err = api.EbaiAPI.SkuUpdate(strStoreID, storeSku.EbaiID, genSkuParamsFromStoreSkuInfo(storeSku))
|
||||
}
|
||||
} else {
|
||||
err = fmt.Errorf("SKUANME%d:%s没有图片,同步失败", storeSku.NameID, storeSku.Name)
|
||||
}
|
||||
} else {
|
||||
updateFields = nil
|
||||
err = fmt.Errorf("SKUANME%d:%s没有图片,同步失败", storeSku.NameID, storeSku.Name)
|
||||
}
|
||||
} else if storeSku.EbaiSyncStatus&model.SyncFlagStoreSkuModifiedMask != 0 {
|
||||
if jxutils.IsFakeID(storeSku.EbaiID) {
|
||||
err = fmt.Errorf("京西数据异常,修改一个没有创建的饿百商品:%d, store:%s", storeSku.SkuID, strStoreID)
|
||||
} else {
|
||||
if storeSku.Img != "" {
|
||||
} else {
|
||||
updateFields = nil
|
||||
}
|
||||
} else if storeSku.EbaiSyncStatus&model.SyncFlagStoreSkuModifiedMask != 0 {
|
||||
if storeSku.EbaiID == 0 {
|
||||
err = fmt.Errorf("京西数据异常,修改一个没有创建的饿百商品:%d, store:%s", storeSku.SkuID, strStoreID)
|
||||
} else {
|
||||
if storeSku.Img != "" {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
_, err = api.EbaiAPI.SkuUpdate(strStoreID, storeSku.EbaiID, genSkuParamsFromStoreSkuInfo(storeSku))
|
||||
} else {
|
||||
err = fmt.Errorf("SKUANME%d:%s没有图片,同步失败", storeSku.NameID, storeSku.Name)
|
||||
}
|
||||
} else {
|
||||
err = fmt.Errorf("SKUANME%d:%s没有图片,同步失败", storeSku.NameID, storeSku.Name)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -544,18 +551,23 @@ func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask t
|
||||
updateFields := []string{model.FieldEbaiSyncStatus}
|
||||
catInfo := batchItemList[0].(*tStoreCatInfo)
|
||||
// globals.SugarLogger.Debug(utils.Format4Output(catInfo, false))
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
if catInfo.EbaiSyncStatus&model.SyncFlagDeletedMask != 0 { // 删除
|
||||
if catInfo.EbaiSyncStatus&model.SyncFlagNewMask == 0 && catInfo.EbaiID != 0 {
|
||||
if catInfo.EbaiSyncStatus&model.SyncFlagDeletedMask != 0 { // 删除
|
||||
if catInfo.EbaiSyncStatus&model.SyncFlagNewMask == 0 && catInfo.EbaiID != 0 {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
err = api.EbaiAPI.ShopCategoryDelete(strStoreID, catInfo.EbaiID)
|
||||
}
|
||||
} else if catInfo.EbaiSyncStatus&model.SyncFlagNewMask != 0 { // 新增
|
||||
ebaiID, err2 := api.EbaiAPI.ShopCategoryCreate(strStoreID, catInfo.ParentEbaiID, formatName(catInfo.Name), jxCatSeq2Ebai(catInfo.Seq))
|
||||
if err = err2; err == nil {
|
||||
catInfo.EbaiID = ebaiID
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
}
|
||||
} else if catInfo.EbaiSyncStatus&model.SyncFlagModifiedMask != 0 { // 修改
|
||||
}
|
||||
} else if catInfo.EbaiSyncStatus&model.SyncFlagNewMask != 0 { // 新增
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
catInfo.EbaiID, err = api.EbaiAPI.ShopCategoryCreate(strStoreID, catInfo.ParentEbaiID, formatName(catInfo.Name), jxCatSeq2Ebai(catInfo.Seq))
|
||||
} else {
|
||||
catInfo.EbaiID = jxutils.GenFakeID()
|
||||
}
|
||||
if err == nil {
|
||||
updateFields = append(updateFields, model.FieldEbaiID)
|
||||
}
|
||||
} else if catInfo.EbaiSyncStatus&model.SyncFlagModifiedMask != 0 { // 修改
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
err = api.EbaiAPI.ShopCategoryUpdate(strStoreID, catInfo.EbaiID, formatName(catInfo.Name), jxCatSeq2Ebai(catInfo.Seq))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user