working commit
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
package accntcli
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"mstore/app/accoper"
|
||||
"mstore/app/handler"
|
||||
"mstore/pkg/descr"
|
||||
)
|
||||
|
||||
func (cli *Client) ListGrantsByUsername(ctx context.Context, host, username string) ([]descr.Grant, error) {
|
||||
var err error
|
||||
res := make([]descr.Grant, 0)
|
||||
params := accoper.ListGrantsParams{
|
||||
Username: username,
|
||||
}
|
||||
reqdata, err := json.Marshal(params)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
respdata, err := cli.doHTTPCall(ctx, host, "grants", "list", reqdata)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
|
||||
response := handler.NewResponse[accoper.ListGrantsResult]()
|
||||
err = json.Unmarshal(respdata, response)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
if response.Error {
|
||||
err = errors.New(response.Message)
|
||||
return res, err
|
||||
}
|
||||
res = response.Result.Grants
|
||||
return res, err
|
||||
}
|
||||
|
||||
func (cli *Client) ListGrantsByAccountID(ctx context.Context, host, accountID string) ([]descr.Grant, error) {
|
||||
var err error
|
||||
res := make([]descr.Grant, 0)
|
||||
params := accoper.ListGrantsParams{
|
||||
AccountID: accountID,
|
||||
}
|
||||
reqdata, err := json.Marshal(params)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
respdata, err := cli.doHTTPCall(ctx, host, "grants", "list", reqdata)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
response := handler.NewResponse[accoper.ListGrantsResult]()
|
||||
err = json.Unmarshal(respdata, response)
|
||||
if err != nil {
|
||||
return res, err
|
||||
}
|
||||
if response.Error {
|
||||
err = errors.New(response.Message)
|
||||
return res, err
|
||||
}
|
||||
res = response.Result.Grants
|
||||
return res, err
|
||||
}
|
||||
Reference in New Issue
Block a user