package accoper import ( "context" "fmt" "mstore/pkg/descr" ) // Get Grants type GetGrantParams struct { GrantID string `json:"grantId"` } type GetGrantResult struct { Grant *descr.Grant `json:"grant"` } func (oper *Operator) GetGrant(ctx context.Context, operatorID string, params *GetGrantParams) (*GetGrantResult, error) { var err error res := &GetGrantResult{} if params.GrantID == "" { err := fmt.Errorf("Empty grantId parameter") return res, err } var grantDescr *descr.Grant var grantExists bool grantExists, grantDescr, err = oper.mdb.GetGrantByID(ctx, params.GrantID) if err != nil { return res, err } if !grantExists { err := fmt.Errorf("Grant with ID %s dont exists", params.GrantID) return res, err } res.Grant = grantDescr return res, err }