add dao files
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
package datastore
|
||||
|
||||
import "xorm.io/xorm"
|
||||
|
||||
type Database struct {
|
||||
*xorm.EngineGroup
|
||||
}
|
||||
|
||||
func (db *Database) DoTranscation(fn func(sess *xorm.Session) error) (err error) {
|
||||
sess := db.NewSession()
|
||||
defer sess.Close()
|
||||
|
||||
if err = sess.Begin(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = fn(sess); err != nil {
|
||||
_ = sess.Rollback()
|
||||
return err
|
||||
}
|
||||
|
||||
if err = sess.Commit(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user