swirl/dao/mongo/setting.go
2018-03-26 20:44:42 +08:00

45 lines
876 B
Go

package mongo
import (
"github.com/cuigh/swirl/model"
"github.com/globalsign/mgo"
"github.com/globalsign/mgo/bson"
)
const settingID int32 = 0
func (d *Dao) SettingGet() (setting *model.Setting, err error) {
d.do(func(db *database) {
setting = &model.Setting{}
err = db.C("setting").FindId(settingID).One(setting)
if err == mgo.ErrNotFound {
err = nil
}
})
return
}
func (d *Dao) SettingUpdate(setting *model.Setting) (err error) {
d.do(func(db *database) {
update := bson.M{
"$set": setting,
}
_, err = db.C("setting").UpsertId(settingID, update)
})
return
}
func (d *Dao) UpdateDashboard(name string, dashboard *model.ChartPanel) (err error) {
d.do(func(db *database) {
update := bson.M{
"$set": bson.M{
"dashboard": bson.M{
name: dashboard,
},
},
}
err = db.C("setting").UpdateId(settingID, update)
})
return
}