* Refactor license_store to use squirrel * Fix query build error string
Этот коммит содержится в:
@@ -6,6 +6,8 @@ package sqlstore
|
|||||||
import (
|
import (
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
|
sq "github.com/Masterminds/squirrel"
|
||||||
|
|
||||||
"github.com/mattermost/mattermost-server/v5/model"
|
"github.com/mattermost/mattermost-server/v5/model"
|
||||||
"github.com/mattermost/mattermost-server/v5/store"
|
"github.com/mattermost/mattermost-server/v5/store"
|
||||||
)
|
)
|
||||||
@@ -42,9 +44,16 @@ func (ls SqlLicenseStore) Save(license *model.LicenseRecord) (*model.LicenseReco
|
|||||||
if err := license.IsValid(); err != nil {
|
if err := license.IsValid(); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
query := ls.getQueryBuilder().
|
||||||
|
Select("*").
|
||||||
|
From("Licenses").
|
||||||
|
Where(sq.Eq{"Id": license.Id})
|
||||||
|
queryString, args, err := query.ToSql()
|
||||||
|
if err != nil {
|
||||||
|
return nil, model.NewAppError("SqlLicenseStore.Save", "store.sql.build_query.app_error", nil, err.Error(), http.StatusInternalServerError)
|
||||||
|
}
|
||||||
var storedLicense model.LicenseRecord
|
var storedLicense model.LicenseRecord
|
||||||
if err := ls.GetReplica().SelectOne(&storedLicense, "SELECT * FROM Licenses WHERE Id = :Id", map[string]interface{}{"Id": license.Id}); err != nil {
|
if err := ls.GetReplica().SelectOne(&storedLicense, queryString, args...); err != nil {
|
||||||
// Only insert if not exists
|
// Only insert if not exists
|
||||||
if err := ls.GetMaster().Insert(license); err != nil {
|
if err := ls.GetMaster().Insert(license); err != nil {
|
||||||
return nil, model.NewAppError("SqlLicenseStore.Save", "store.sql_license.save.app_error", nil, "license_id="+license.Id+", "+err.Error(), http.StatusInternalServerError)
|
return nil, model.NewAppError("SqlLicenseStore.Save", "store.sql_license.save.app_error", nil, "license_id="+license.Id+", "+err.Error(), http.StatusInternalServerError)
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user