diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index b04ce0b83..5cb282a91 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -797,9 +797,22 @@ func AddStoreCourierMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID dao.WrapAddIDCULDEntity(storeCourierMap, userName) storeCourierMap.StoreID = storeID storeCourierMap.VendorID = vendorID + if db == nil { db = dao.GetDB() } + if vendorID == model.VendorIDDada { + storeList, err2 := dao.GetMissingDadaStores(db, storeID, false) + if err = err2; err == nil && len(storeList) > 0 { + storeList[0].DadaStoreID = storeCourierMap.VendorStoreID + err = updateOrCreateDadaStore(storeList[0]) + } else { + globals.SugarLogger.Debugf("AddStoreCourierMap GetMissingDadaStores error:%v, len(storeList):%d", err, len(storeList)) + } + } + if err != nil { + return nil, err + } dao.Begin(db) defer func() { if r := recover(); r != nil { @@ -809,15 +822,6 @@ func AddStoreCourierMap(ctx *jxcontext.Context, db *dao.DaoDB, storeID, vendorID }() if err = dao.CreateEntity(db, storeCourierMap); err == nil { dao.Commit(db) - if vendorID == model.VendorIDDada { - storeList, err2 := dao.GetMissingDadaStores(db, storeID, false) - if err = err2; err == nil && len(storeList) > 0 { - storeList[0].DadaStoreID = storeCourierMap.VendorStoreID - err = updateOrCreateDadaStore(storeList[0]) - } else { - globals.SugarLogger.Debugf("AddStoreCourierMap GetMissingDadaStores error:%v, len(storeList):%d", err, len(storeList)) - } - } outStoreCourierMap = storeCourierMap if err == nil { _, err = CurVendorSync.SyncStore(ctx, db, storeCourierMap.VendorID, storeID, false, userName) @@ -929,6 +933,7 @@ func updateOrCreateDadaStore(storeDetail *dao.StoreDetail2) (err error) { } } if err != nil { + err = fmt.Errorf("门店ID:%d,门店名:%s,错误描述:%s", storeDetail.Store.ID, storeDetail.Name, err.Error()) globals.SugarLogger.Debugf("updateOrCreateDadaStore storeID:%d failed with error:%v", storeDetail.ID, err) } return err