mirror of
https://github.com/cuigh/swirl
synced 2025-01-03 17:42:29 +00:00
45 lines
876 B
Go
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
|
|
}
|