商品库同步增加验证饿鲜达相关不操作thingmap

This commit is contained in:
苏尹岚
2020-02-19 11:11:33 +08:00
parent 4daf43aa14
commit cadb26b5be
2 changed files with 27 additions and 20 deletions

View File

@@ -1078,7 +1078,7 @@ func UpdateSku(ctx *jxcontext.Context, skuID int, payload map[string]interface{}
} }
return 0, err return 0, err
} }
if sku.ExdSkuID != "" { if sku.ExdSkuID == "" {
if err = OnUpdateThing(ctx, db, nil, int64(skuID), model.ThingTypeSku); err != nil { if err = OnUpdateThing(ctx, db, nil, int64(skuID), model.ThingTypeSku); err != nil {
dao.Rollback(db) dao.Rollback(db)
return 0, err return 0, err

View File

@@ -91,7 +91,7 @@ func SyncCategories(ctx *jxcontext.Context, parentTask tasksch.ITask, vendorIDs
// TODO 同一平台不同账号会有影响needSyncParentIDs暂不处理 // TODO 同一平台不同账号会有影响needSyncParentIDs暂不处理
var needSyncParentIDs []int var needSyncParentIDs []int
for _, cat := range catList { for _, cat := range catList {
if cat.Level == 2 && cat.ParentVendorCatID == "" { if cat.Level == 2 && cat.ParentVendorCatID == "" && cat.IsExdSpec == model.NO {
needSyncParentIDs = append(needSyncParentIDs, cat.ParentID) needSyncParentIDs = append(needSyncParentIDs, cat.ParentID)
} }
} }
@@ -144,6 +144,9 @@ func SyncSkus(ctx *jxcontext.Context, parentTask tasksch.ITask, vendorIDs []int,
if skuVendorInfo.BindID == 0 { if skuVendorInfo.BindID == 0 {
return nil, fmt.Errorf("商品:%d的数据异常", skuVendorInfo.SkuID) return nil, fmt.Errorf("商品:%d的数据异常", skuVendorInfo.SkuID)
} }
if skuVendorInfo.ExdSkuID != "" {
return nil, err
}
skuVendorInfo.SkuName = jxutils.ComposeSkuName(skuVendorInfo.Prefix, skuVendorInfo.Name, skuVendorInfo.Comment, skuVendorInfo.Unit, skuVendorInfo.SpecQuality, skuVendorInfo.SpecUnit, 0, skuVendorInfo.ExPrefix, skuVendorInfo.ExPrefixBegin, skuVendorInfo.ExPrefixEnd) skuVendorInfo.SkuName = jxutils.ComposeSkuName(skuVendorInfo.Prefix, skuVendorInfo.Name, skuVendorInfo.Comment, skuVendorInfo.Unit, skuVendorInfo.SpecQuality, skuVendorInfo.SpecUnit, 0, skuVendorInfo.ExPrefix, skuVendorInfo.ExPrefixBegin, skuVendorInfo.ExPrefixEnd)
skuVendorInfo.MergedStatus = jxutils.MergeSkuStatus(skuVendorInfo.Status, skuVendorInfo.NameStatus) skuVendorInfo.MergedStatus = jxutils.MergeSkuStatus(skuVendorInfo.Status, skuVendorInfo.NameStatus)
if multiStoresHandler, ok := partner.GetPurchasePlatformFromVendorID(skuVendorInfo.VendorID).(partner.IMultipleStoresHandler); ok { if multiStoresHandler, ok := partner.GetPurchasePlatformFromVendorID(skuVendorInfo.VendorID).(partner.IMultipleStoresHandler); ok {
@@ -466,6 +469,7 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
if opType == AmendPruneOnlyAmend || opType == AmendPruneAll { if opType == AmendPruneOnlyAmend || opType == AmendPruneAll {
for _, v := range localSkuList { for _, v := range localSkuList {
if v.ExdSkuID == "" {
if v.BindID != 0 { if v.BindID != 0 {
if !model.IsSyncStatusDelete(v.SkuSyncStatus) { if !model.IsSyncStatusDelete(v.SkuSyncStatus) {
if remoteSkuMap[v.VendorSkuID] == 0 { if remoteSkuMap[v.VendorSkuID] == 0 {
@@ -482,6 +486,7 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
} }
} }
} }
}
case 1: case 1:
if (opType == AmendPruneOnlyPrune || opType == AmendPruneAll) && len(sku2Delete) > 0 { if (opType == AmendPruneOnlyPrune || opType == AmendPruneAll) && len(sku2Delete) > 0 {
_, err = putils.FreeBatchStoreSkuInfo("删除商品", func(task tasksch.ITask, batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, successCount int, err error) { _, err = putils.FreeBatchStoreSkuInfo("删除商品", func(task tasksch.ITask, batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, successCount int, err error) {
@@ -510,6 +515,7 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
cat2Delete = checkRemoteCatExist(remoteCatMap, localCatMap, remoteCatList) cat2Delete = checkRemoteCatExist(remoteCatMap, localCatMap, remoteCatList)
for _, v := range localCatList { for _, v := range localCatList {
if v.IsExdSpec == model.NO {
if v.MapID != 0 { if v.MapID != 0 {
if !model.IsSyncStatusDelete(v.CatSyncStatus) { if !model.IsSyncStatusDelete(v.CatSyncStatus) {
if remoteCatMap[v.VendorCatID] == 0 { if remoteCatMap[v.VendorCatID] == 0 {
@@ -525,6 +531,7 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
} }
} }
} }
}
case 3: case 3:
if (opType == AmendPruneOnlyPrune || opType == AmendPruneAll) && len(cat2Delete) > 0 { if (opType == AmendPruneOnlyPrune || opType == AmendPruneAll) && len(cat2Delete) > 0 {
for i := 0; i < 2; i++ { for i := 0; i < 2; i++ {