- 将Dao.DB中db改为Db

This commit is contained in:
gazebo
2019-04-16 16:14:08 +08:00
parent fc5cb88d8b
commit 844cc70c1e
3 changed files with 23 additions and 21 deletions

View File

@@ -15,7 +15,7 @@ const (
type DaoDB struct { type DaoDB struct {
transactionLevel int transactionLevel int
db orm.Ormer Db orm.Ormer
} }
// func GetRows(db *gorm.DB, inPtr interface{}, sql string, values ...interface{}) (err error) { // func GetRows(db *gorm.DB, inPtr interface{}, sql string, values ...interface{}) (err error) {
@@ -56,33 +56,35 @@ type DaoDB struct {
// beego orm的对于传代表字段的字串数据库字段名完全匹配区分大小写结构体字段名不区分大小写都可以 // beego orm的对于传代表字段的字串数据库字段名完全匹配区分大小写结构体字段名不区分大小写都可以
func GetDB() *DaoDB { func GetDB() *DaoDB {
return &DaoDB{db: orm.NewOrm()} return &DaoDB{Db: orm.NewOrm()}
} }
func WrapDB(ormDb orm.Ormer) *DaoDB { func WrapDB(ormDb orm.Ormer) *DaoDB {
return &DaoDB{db: ormDb} return &DaoDB{Db: ormDb}
} }
func Begin(db *DaoDB) (err error) { func Begin(db *DaoDB) (err error) {
if db.transactionLevel == 0 { if db.transactionLevel == 0 {
err = db.db.Begin() err = db.Db.Begin()
} }
db.transactionLevel++ db.transactionLevel++
return err return err
} }
func Commit(db *DaoDB) (err error) { func Commit(db *DaoDB) (err error) {
if db.transactionLevel <= 1 { if db.transactionLevel == 1 {
err = db.db.Commit() err = db.Db.Commit()
db.transactionLevel = 0 db.transactionLevel = 0
} else { } else if db.transactionLevel > 1 {
db.transactionLevel-- db.transactionLevel--
} }
return err return err
} }
func Rollback(db *DaoDB) (err error) { func Rollback(db *DaoDB) (err error) {
err = db.db.Rollback() if db.transactionLevel > 0 {
err = db.Db.Rollback()
}
db.transactionLevel = 0 db.transactionLevel = 0
return err return err
} }
@@ -92,7 +94,7 @@ func GetRow(db *DaoDB, inPtr interface{}, sql string, values ...interface{}) (er
db = GetDB() db = GetDB()
} }
if !useGetRowsWhenGetRow { // beego QueryRow有bug嵌入的struct不能正常绑定 if !useGetRowsWhenGetRow { // beego QueryRow有bug嵌入的struct不能正常绑定
err = db.db.Raw(sql, values).QueryRow(inPtr) err = db.Db.Raw(sql, values).QueryRow(inPtr)
} else { } else {
typeInfo := reflect.TypeOf(inPtr) typeInfo := reflect.TypeOf(inPtr)
if typeInfo.Kind() != reflect.Ptr { if typeInfo.Kind() != reflect.Ptr {
@@ -115,7 +117,7 @@ func GetRows(db *DaoDB, inPtr interface{}, sql string, values ...interface{}) (e
if db == nil { if db == nil {
db = GetDB() db = GetDB()
} }
_, err = db.db.Raw(sql, values).QueryRows(inPtr) _, err = db.Db.Raw(sql, values).QueryRows(inPtr)
return err return err
} }
@@ -124,7 +126,7 @@ func GetEntity(db *DaoDB, item interface{}, cols ...string) (err error) {
db = GetDB() db = GetDB()
} }
err = utils.CallFuncLogErrorIgnore(func() error { err = utils.CallFuncLogErrorIgnore(func() error {
return db.db.Read(item, cols...) return db.Db.Read(item, cols...)
}, reflect.TypeOf(item).Name(), orm.ErrNoRows) }, reflect.TypeOf(item).Name(), orm.ErrNoRows)
return err return err
} }
@@ -133,7 +135,7 @@ func UpdateEntity(db *DaoDB, item interface{}, cols ...string) (num int64, err e
if db == nil { if db == nil {
db = GetDB() db = GetDB()
} }
num, err = db.db.Update(item, cols...) num, err = db.Db.Update(item, cols...)
if err != nil && !IsDuplicateError(err) { if err != nil && !IsDuplicateError(err) {
globals.SugarLogger.Errorf("UpdateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err) globals.SugarLogger.Errorf("UpdateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err)
} }
@@ -144,7 +146,7 @@ func CreateEntity(db *DaoDB, item interface{}) (err error) {
if db == nil { if db == nil {
db = GetDB() db = GetDB()
} }
if _, err = db.db.Insert(item); err != nil && !IsDuplicateError(err) { if _, err = db.Db.Insert(item); err != nil && !IsDuplicateError(err) {
globals.SugarLogger.Errorf("CreateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err) globals.SugarLogger.Errorf("CreateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err)
} }
return err return err
@@ -155,7 +157,7 @@ func CreateMultiEntities(db *DaoDB, item interface{}) (err error) {
if db == nil { if db == nil {
db = GetDB() db = GetDB()
} }
if _, err = db.db.InsertMulti(20, item); err != nil && !IsDuplicateError(err) { if _, err = db.Db.InsertMulti(20, item); err != nil && !IsDuplicateError(err) {
globals.SugarLogger.Errorf("CreateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err) globals.SugarLogger.Errorf("CreateEntity %s failed with error:%v", reflect.TypeOf(item).Name(), err)
} }
return err return err
@@ -165,7 +167,7 @@ func CreateOrUpdate(db *DaoDB, item interface{}, colConflitAndArgs ...string) (e
if db == nil { if db == nil {
db = GetDB() db = GetDB()
} }
_, err = db.db.InsertOrUpdate(item, colConflitAndArgs...) _, err = db.Db.InsertOrUpdate(item, colConflitAndArgs...)
return err return err
} }
@@ -174,7 +176,7 @@ func DeleteEntity(db *DaoDB, item interface{}, cols ...string) (num int64, err e
db = GetDB() db = GetDB()
} }
err = utils.CallFuncLogError(func() error { err = utils.CallFuncLogError(func() error {
num, err = db.db.Delete(item, cols...) num, err = db.Db.Delete(item, cols...)
return err return err
}, reflect.TypeOf(item).Name()) }, reflect.TypeOf(item).Name())
return num, err return num, err
@@ -185,7 +187,7 @@ func ExecuteSQL(db *DaoDB, sql string, params ...interface{}) (num int64, err er
db = GetDB() db = GetDB()
} }
err = utils.CallFuncLogError(func() error { err = utils.CallFuncLogError(func() error {
result, err2 := db.db.Raw(sql, params...).Exec() result, err2 := db.Db.Raw(sql, params...).Exec()
if err2 == nil { if err2 == nil {
num, _ = result.RowsAffected() num, _ = result.RowsAffected()
} }

View File

@@ -22,7 +22,7 @@ func GetEntitiesByKV(db *DaoDB, item interface{}, conditions map[string]interfac
if typeInfo.Kind() == reflect.Ptr { if typeInfo.Kind() == reflect.Ptr {
typeInfo = typeInfo.Elem() typeInfo = typeInfo.Elem()
} }
qs := db.db.QueryTable(reflect.New(typeInfo).Interface()) qs := db.Db.QueryTable(reflect.New(typeInfo).Interface())
for k, v := range conditions { for k, v := range conditions {
qs = qs.Filter(k, v) qs = qs.Filter(k, v)
} }
@@ -42,7 +42,7 @@ func UpdateEntityByKV(db *DaoDB, item interface{}, kvs map[string]interface{}, c
if db == nil { if db == nil {
db = GetDB() db = GetDB()
} }
qs := db.db.QueryTable(item) qs := db.Db.QueryTable(item)
if conditions == nil { if conditions == nil {
qs = qs.Filter(model.FieldID, refutil.GetObjFieldByName(item, model.FieldID)) qs = qs.Filter(model.FieldID, refutil.GetObjFieldByName(item, model.FieldID))
} else { } else {

View File

@@ -34,7 +34,7 @@ func GetPlaceByName(db *DaoDB, name string, level int, parentCode int) (place *m
} }
if err = GetEntity(db, place, cols...); err == orm.ErrNoRows { if err = GetEntity(db, place, cols...); err == orm.ErrNoRows {
err = db.db.Raw("SELECT * FROM place WHERE parent_code = ? AND level = ? AND name LIKE ?", parentCode, level, "%"+name+"%").QueryRow(place) err = db.Db.Raw("SELECT * FROM place WHERE parent_code = ? AND level = ? AND name LIKE ?", parentCode, level, "%"+name+"%").QueryRow(place)
} }
return place, err return place, err
} }
@@ -46,6 +46,6 @@ func GetPlaceByJdCode(db *DaoDB, jdCode int) (place *model.Place, err error) {
place = &model.Place{ place = &model.Place{
JdCode: jdCode, JdCode: jdCode,
} }
err = db.db.Read(place, "JdCode") err = db.Db.Read(place, "JdCode")
return place, err return place, err
} }