Able to save preference version, created, updated fields
This commit is contained in:
@@ -10,10 +10,10 @@ func addPreferencesMigrations(mg *Migrator) {
|
||||
{Name: "id", Type: DB_BigInt, IsPrimaryKey: true, IsAutoIncrement: true},
|
||||
{Name: "org_id", Type: DB_Int, Nullable: false},
|
||||
{Name: "user_id", Type: DB_NVarchar, Length: 255, Nullable: false},
|
||||
{Name: "version", Type: DB_Int, Nullable: false},
|
||||
{Name: "version", Type: DB_Int, Nullable: false},
|
||||
{Name: "preference", Type: DB_Text, Nullable: false},
|
||||
{Name: "created", Type: DB_DateTime, Nullable: false},
|
||||
{Name: "updated", Type: DB_DateTime, Nullable: false},
|
||||
{Name: "created", Type: DB_DateTime, Nullable: false},
|
||||
{Name: "updated", Type: DB_DateTime, Nullable: false},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package sqlstore
|
||||
import (
|
||||
"github.com/grafana/grafana/pkg/bus"
|
||||
m "github.com/grafana/grafana/pkg/models"
|
||||
"time"
|
||||
)
|
||||
|
||||
func init() {
|
||||
@@ -54,10 +55,12 @@ func SavePreferences(cmd *m.SavePreferencesCommand) error {
|
||||
savePref.UserId = cmd.UserId
|
||||
savePref.OrgId = cmd.OrgId
|
||||
savePref.Preference = cmd.Preference
|
||||
savePref = SetPreferencesModel(savePref, false)
|
||||
affectedRows, saveErr = sess.Insert(&savePref)
|
||||
} else {
|
||||
savePref = prefResults[0]
|
||||
savePref.Preference = cmd.Preference
|
||||
savePref = SetPreferencesModel(savePref, true)
|
||||
affectedRows, saveErr = sess.Id(savePref.Id).Update(&savePref)
|
||||
}
|
||||
|
||||
@@ -68,3 +71,16 @@ func SavePreferences(cmd *m.SavePreferencesCommand) error {
|
||||
return saveErr
|
||||
})
|
||||
}
|
||||
|
||||
func SetPreferencesModel(pref m.Preferences, updating bool) m.Preferences {
|
||||
|
||||
if updating {
|
||||
pref.Version = pref.Version + 1
|
||||
} else {
|
||||
pref.Version = 0
|
||||
pref.Created = time.Now()
|
||||
}
|
||||
pref.Updated = time.Now()
|
||||
|
||||
return pref
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user