WIP: add update user group command

This commit is contained in:
Daniel Lee
2017-06-12 15:49:09 +02:00
parent 00ac446b2b
commit 0a1df0905e
5 changed files with 83 additions and 0 deletions
+29
View File
@@ -12,6 +12,7 @@ import (
func init() {
bus.AddHandler("sql", CreateUserGroup)
bus.AddHandler("sql", UpdateUserGroup)
bus.AddHandler("sql", DeleteUserGroup)
bus.AddHandler("sql", SearchUserGroups)
bus.AddHandler("sql", GetUserGroupById)
@@ -44,6 +45,34 @@ func CreateUserGroup(cmd *m.CreateUserGroupCommand) error {
})
}
func UpdateUserGroup(cmd *m.UpdateUserGroupCommand) error {
return inTransaction2(func(sess *session) error {
if isNameTaken, err := isUserGroupNameTaken(cmd.Name, cmd.Id, sess); err != nil {
return err
} else if isNameTaken {
return m.ErrUserGroupNameTaken
}
userGroup := m.UserGroup{
Name: cmd.Name,
Updated: time.Now(),
}
affectedRows, err := sess.Id(cmd.Id).Update(&userGroup)
if err != nil {
return err
}
if affectedRows == 0 {
return m.ErrUserGroupNotFound
}
return nil
})
}
func DeleteUserGroup(cmd *m.DeleteUserGroupCommand) error {
return inTransaction2(func(sess *session) error {
if res, err := sess.Query("SELECT 1 from user_group WHERE id=?", cmd.Id); err != nil {