addStoreVnedorMap支持京西平台

This commit is contained in:
苏尹岚
2019-12-10 17:51:55 +08:00
parent 92761a332d
commit 2e042d9c14

View File

@@ -1035,42 +1035,42 @@ func AddStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, vendorID int, vend
return nil, fmt.Errorf("非京东平台要求必须自动拣货") return nil, fmt.Errorf("非京东平台要求必须自动拣货")
} }
userName := ctx.GetUserName() userName := ctx.GetUserName()
if handler := CurVendorSync.GetStoreHandler(vendorID); handler != nil { if vendorID != model.VendorIDJX {
store, err2 := handler.ReadStore(ctx, vendorOrgCode, storeMap.VendorStoreID) if handler := CurVendorSync.GetStoreHandler(vendorID); handler != nil {
if err = err2; err == nil || storeMap.IsSync == 0 { store, err2 := handler.ReadStore(ctx, vendorOrgCode, storeMap.VendorStoreID)
dao.WrapAddIDCULDEntity(storeMap, userName) if err = err2; err == nil || storeMap.IsSync == 0 {
storeMap.StoreID = storeID storeMap.StoreID = storeID
storeMap.VendorID = vendorID storeMap.VendorID = vendorID
if store != nil {
storeMap.DeliveryType = store.DeliveryType
storeMap.Status = store.Status
}
err = nil
storeMap.SyncStatus = model.SyncFlagModifiedMask | model.SyncFlagStoreName | model.SyncFlagStoreAddress // 新增绑定门店是修改的概念
if db == nil {
db = dao.GetDB()
}
dao.Begin(db)
defer func() {
if r := recover(); r != nil {
dao.Rollback(db)
panic(r)
}
}()
if err = dao.CreateEntity(db, storeMap); err == nil {
outStoreMap = storeMap
if store != nil { if store != nil {
_, err = CurVendorSync.SyncStore(ctx, db, storeMap.VendorID, storeID, false, userName) storeMap.DeliveryType = store.DeliveryType
storeMap.Status = store.Status
} }
err = nil
storeMap.SyncStatus = model.SyncFlagModifiedMask | model.SyncFlagStoreName | model.SyncFlagStoreAddress // 新增绑定门店是修改的概念
} }
if err != nil { } else {
dao.Rollback(db) err = ErrCanNotFindVendor
} else { }
dao.Commit(db) }
} dao.WrapAddIDCULDEntity(storeMap, userName)
if err == nil {
if db == nil {
db = dao.GetDB()
}
dao.Begin(db)
defer func() {
if r := recover(); r != nil {
dao.Rollback(db)
panic(r)
}
}()
if err = dao.CreateEntity(db, storeMap); err == nil {
dao.Commit(db)
outStoreMap = storeMap
_, err = CurVendorSync.SyncStore(ctx, db, storeMap.VendorID, storeID, false, userName)
} else {
dao.Rollback(db)
} }
} else {
err = ErrCanNotFindVendor
} }
return outStoreMap, err return outStoreMap, err
} }