Fix in/out payload types to string
This commit is contained in:
@@ -199,7 +199,7 @@
|
||||
"title": "Name of Role"
|
||||
},
|
||||
{
|
||||
"type": "[]uint64",
|
||||
"type": "[]string",
|
||||
"name": "members",
|
||||
"required": false,
|
||||
"title": "Role member IDs"
|
||||
@@ -229,7 +229,7 @@
|
||||
"title": "Name of Role"
|
||||
},
|
||||
{
|
||||
"type": "[]uint64",
|
||||
"type": "[]string",
|
||||
"name": "members",
|
||||
"required": false,
|
||||
"title": "Role member IDs"
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
"name": "members",
|
||||
"required": false,
|
||||
"title": "Role member IDs",
|
||||
"type": "[]uint64"
|
||||
"type": "[]string"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -74,7 +74,7 @@
|
||||
"name": "members",
|
||||
"required": false,
|
||||
"title": "Role member IDs",
|
||||
"type": "[]uint64"
|
||||
"type": "[]string"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -228,7 +228,7 @@ An organisation may have many roles. Roles may have many channels available. Acc
|
||||
| Parameter | Type | Method | Description | Default | Required? |
|
||||
| --------- | ---- | ------ | ----------- | ------- | --------- |
|
||||
| name | string | POST | Name of Role | N/A | YES |
|
||||
| members | []uint64 | POST | Role member IDs | N/A | NO |
|
||||
| members | []string | POST | Role member IDs | N/A | NO |
|
||||
|
||||
## Update role details
|
||||
|
||||
@@ -244,7 +244,7 @@ An organisation may have many roles. Roles may have many channels available. Acc
|
||||
| --------- | ---- | ------ | ----------- | ------- | --------- |
|
||||
| roleID | uint64 | PATH | Role ID | N/A | YES |
|
||||
| name | string | POST | Name of Role | N/A | NO |
|
||||
| members | []uint64 | POST | Role member IDs | N/A | NO |
|
||||
| members | []string | POST | Role member IDs | N/A | NO |
|
||||
|
||||
## Read role details and memberships
|
||||
|
||||
|
||||
@@ -78,7 +78,7 @@ var _ RequestFiller = NewRoleList()
|
||||
// Role create request parameters
|
||||
type RoleCreate struct {
|
||||
Name string
|
||||
Members []uint64 `json:",string"`
|
||||
Members []string
|
||||
}
|
||||
|
||||
func NewRoleCreate() *RoleCreate {
|
||||
@@ -116,7 +116,6 @@ func (ro *RoleCreate) Fill(r *http.Request) (err error) {
|
||||
|
||||
ro.Name = val
|
||||
}
|
||||
ro.Members = parseUInt64A(r.Form["members"])
|
||||
|
||||
return err
|
||||
}
|
||||
@@ -127,7 +126,7 @@ var _ RequestFiller = NewRoleCreate()
|
||||
type RoleUpdate struct {
|
||||
RoleID uint64 `json:",string"`
|
||||
Name string
|
||||
Members []uint64 `json:",string"`
|
||||
Members []string
|
||||
}
|
||||
|
||||
func NewRoleUpdate() *RoleUpdate {
|
||||
@@ -166,7 +165,6 @@ func (ro *RoleUpdate) Fill(r *http.Request) (err error) {
|
||||
|
||||
ro.Name = val
|
||||
}
|
||||
ro.Members = parseUInt64A(r.Form["members"])
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
+6
-6
@@ -3,9 +3,9 @@ package rest
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/davecgh/go-spew/spew"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/crusttech/crust/internal/payload"
|
||||
"github.com/crusttech/crust/system/rest/request"
|
||||
"github.com/crusttech/crust/system/service"
|
||||
"github.com/crusttech/crust/system/types"
|
||||
@@ -44,7 +44,8 @@ func (ctrl *Role) Create(ctx context.Context, r *request.RoleCreate) (interface{
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for _, userID := range r.Members {
|
||||
|
||||
for _, userID := range payload.ParseUInt64s(r.Members) {
|
||||
err := ctrl.svc.role.With(ctx).MemberAdd(role.ID, userID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -76,7 +77,7 @@ func (ctrl *Role) Update(ctx context.Context, r *request.RoleUpdate) (interface{
|
||||
}
|
||||
}
|
||||
|
||||
for _, userID := range r.Members {
|
||||
for _, userID := range payload.ParseUInt64s(r.Members) {
|
||||
err := ctrl.svc.role.With(ctx).MemberAdd(role.ID, userID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -106,11 +107,10 @@ func (ctrl *Role) MemberList(ctx context.Context, r *request.RoleMemberList) (in
|
||||
if mm, err := ctrl.svc.role.With(ctx).MemberList(r.RoleID); err != nil {
|
||||
return nil, err
|
||||
} else {
|
||||
rval := make([]uint64, len(mm))
|
||||
rval := make([]string, len(mm))
|
||||
for i := range mm {
|
||||
rval[i] = mm[i].UserID
|
||||
rval[i] = payload.Uint64toa(mm[i].UserID)
|
||||
}
|
||||
spew.Dump(rval)
|
||||
return rval, nil
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user