role

package
v0.1.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 19, 2026 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Handler

type Handler struct {
	// contains filtered or unexported fields
}

func NewHandler

func NewHandler(service *Service) *Handler

func (*Handler) RoleCreate

func (h *Handler) RoleCreate(c *gin.Context)

RoleCreate handles role creation requests.

func (*Handler) RoleDelete

func (h *Handler) RoleDelete(c *gin.Context)

RoleDelete handles role deletion requests.

func (*Handler) RoleDetail

func (h *Handler) RoleDetail(c *gin.Context)

RoleDetail handles role detail requests.

func (*Handler) RoleUpdate

func (h *Handler) RoleUpdate(c *gin.Context)

RoleUpdate handles role update requests.

func (*Handler) RolesList

func (h *Handler) RolesList(c *gin.Context)

RolesList handles role list requests.

type Role

type Role struct {
	Id          int64    `json:"id"`
	Name        string   `json:"name"`
	Description string   `json:"description"`
	Category    string   `json:"category"`
	Permissions []string `json:"permissions"`
	CreatedAt   string   `json:"createdAt"`
	UpdatedAt   string   `json:"updatedAt"`
}

Role represents an RBAC role with its permissions.

type RoleCreateRequest

type RoleCreateRequest struct {
	Name        string   `json:"name"`
	Description string   `json:"description"`
	Category    string   `json:"category"`
	Permissions []string `json:"permissions"`
}

RoleCreateRequest defines the request body for creating a role.

type RoleCreateResponse

type RoleCreateResponse struct {
	Role
}

RoleCreateResponse defines the response body for role creation.

type RoleDeleteRequest

type RoleDeleteRequest struct {
	ID string `uri:"id"`
}

RoleDeleteRequest defines the request parameters for deleting a role.

type RoleDetailRequest

type RoleDetailRequest struct {
	ID string `uri:"id"`
}

RoleDetailRequest defines the request parameters for getting role details.

type RoleDetailResponse

type RoleDetailResponse struct {
	Role
}

RoleDetailResponse defines the response body for role details.

type RoleUpdateRequest

type RoleUpdateRequest struct {
	ID          string   `uri:"id"`
	Name        string   `json:"name"`
	Description string   `json:"description"`
	Category    string   `json:"category"`
	Permissions []string `json:"permissions"`
}

RoleUpdateRequest defines the request body for updating a role.

type RoleUpdateResponse

type RoleUpdateResponse struct {
	Role
}

RoleUpdateResponse defines the response body for role update.

type RolesListRequest

type RolesListRequest struct {
	Page     int    `form:"page,optional,default=1"`
	PageSize int    `form:"pageSize,optional,default=20"`
	Category string `form:"category"`
	Search   string `form:"search"`
}

RolesListRequest defines the query parameters for listing roles.

type RolesListResponse

type RolesListResponse struct {
	Items []Role `json:"items"`
	Total int64  `json:"total"`
	Page  int    `json:"page"`
	Size  int    `json:"pageSize"`
}

RolesListResponse defines the response body for listing roles.

type Service

type Service struct {
	// contains filtered or unexported fields
}

func NewService

func NewService(svcCtx *svc.ServiceContext) *Service

func (*Service) RoleCreate

func (s *Service) RoleCreate(ctx context.Context, req *RoleCreateRequest) (*RoleCreateResponse, error)

RoleCreate creates a new role with the provided permissions.

func (*Service) RoleDelete

func (s *Service) RoleDelete(ctx context.Context, req *RoleDeleteRequest) error

RoleDelete deletes a role by ID.

func (*Service) RoleDetail

func (s *Service) RoleDetail(ctx context.Context, req *RoleDetailRequest) (*RoleDetailResponse, error)

RoleDetail retrieves the details of a role by ID.

func (*Service) RoleUpdate

func (s *Service) RoleUpdate(ctx context.Context, req *RoleUpdateRequest) (*RoleUpdateResponse, error)

RoleUpdate updates a role's fields and optionally its permissions.

func (*Service) RolesList

func (s *Service) RolesList(ctx context.Context, req *RolesListRequest) (*RolesListResponse, error)

RolesList retrieves a paginated list of roles with optional filtering.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL