aa
This commit is contained in:
@@ -556,6 +556,21 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
|
|||||||
localCatMap[utils.Int2Str(v.ID)] = v
|
localCatMap[utils.Int2Str(v.ID)] = v
|
||||||
}
|
}
|
||||||
|
|
||||||
|
vendorCatMap := make(map[int]*model.VendorCategoryMap)
|
||||||
|
if vendorOrgCodes[0].IsJxCat == model.YES {
|
||||||
|
vendorCats, _ := dao.GetVendorCategoryMap(db, -1, 0, vendorID, vendorOrgCode, 0)
|
||||||
|
for _, v := range vendorCats {
|
||||||
|
if _, ok := vendorCatMap[v.CategoryID]; !ok {
|
||||||
|
vendorCatMap[v.CategoryID] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getSyncFlagCat := func(categoryID int) int8 {
|
||||||
|
if vendorCatMap[categoryID] != nil {
|
||||||
|
return model.SyncFlagNewMask
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
remoteCatList, err2 := handler.GetAllCategories(ctx, vendorOrgCode)
|
remoteCatList, err2 := handler.GetAllCategories(ctx, vendorOrgCode)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
remoteCatMap := make(map[string]int)
|
remoteCatMap := make(map[string]int)
|
||||||
@@ -567,14 +582,14 @@ func amendAndPruneVendorStuff(ctx *jxcontext.Context, parentTask tasksch.ITask,
|
|||||||
if !model.IsSyncStatusDelete(v.CatSyncStatus) {
|
if !model.IsSyncStatusDelete(v.CatSyncStatus) {
|
||||||
if remoteCatMap[v.VendorCatID] == 0 {
|
if remoteCatMap[v.VendorCatID] == 0 {
|
||||||
if !model.IsSyncStatusNew(v.CatSyncStatus) {
|
if !model.IsSyncStatusNew(v.CatSyncStatus) {
|
||||||
OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, model.SyncFlagNewMask, false)
|
OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, getSyncFlagCat(v.ID), true)
|
||||||
}
|
}
|
||||||
} else if isForceUpdate && !model.IsSyncStatusUpdate(v.CatSyncStatus) {
|
} else if isForceUpdate && !model.IsSyncStatusUpdate(v.CatSyncStatus) {
|
||||||
OnUpdateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory)
|
OnUpdateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, model.SyncFlagNewMask, false)
|
OnCreateThing(ctx, db, vendorOrgCodes, int64(v.ID), model.ThingTypeCategory, getSyncFlagCat(v.ID), true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user