Help us shape the future of Go! Take the 2026 Go Developer Survey

system

package
v0.3.2 Latest Latest
Warning

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

Go to latest
Published: Aug 11, 2026 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GroupUseCase

type GroupUseCase interface {
	Get(ctx context.Context, groupId string) (*group.Group, error)
	Create(ctx context.Context, g *group.Group) (*group.Group, error)
	Update(ctx context.Context, g *group.Group) (*group.Group, error)
	Delete(ctx context.Context, groupId string) error
	List(ctx context.Context, params *ListGroupQueryParams) ([]*group.Group, int64, error)
	AddRoles(ctx context.Context, groupID string, roleIDs []string) (*group.Group, error)
	RemoveRoles(ctx context.Context, groupID string, roleIDs []string) (*group.Group, error)
	AddUsers(ctx context.Context, groupID string, userIDs []string) (*group.Group, error)
	RemoveUsers(ctx context.Context, groupID string, userIDs []string) (*group.Group, error)
}

func NewGroupUseCase

func NewGroupUseCase(
	db *sql.DB,
	transRepo trans.Repository,
	groupRepo group.Repository,
	groupRoleRepo grouprole.Repository,
	userGroupRepo usergroup.Repository,
	dialectWrapper persistence.DialectWrapper,
) GroupUseCase

type ListGroupQueryParams

type ListGroupQueryParams struct {
	Limit     uint32
	Offset    uint32
	GroupIds  []string
	GroupName string
	Status    group.Status
	RoleIds   []string
}

type ListPermissionQueryParams

type ListPermissionQueryParams struct {
	Limit          uint32
	Offset         uint32
	PermissionIds  []string
	PermissionName string
}

type ListResourceQueryParams

type ListResourceQueryParams struct {
	Limit        uint32
	Offset       uint32
	ResourceIds  []string
	ResourceName string
	ResourceType resource.ResourceType
}

type ListRoleQueryParams

type ListRoleQueryParams struct {
	Limit         uint32
	Offset        uint32
	RoleIds       []string
	RoleName      string
	PermissionIds []string
}

type PermissionUseCase

type PermissionUseCase interface {
	Get(ctx context.Context, permissionId string) (*permission.Permission, error)
	Create(ctx context.Context, p *permission.Permission) (*permission.Permission, error)
	Update(ctx context.Context, p *permission.Permission) (*permission.Permission, error)
	Delete(ctx context.Context, permissionId string) error
	List(ctx context.Context, params *ListPermissionQueryParams) ([]*permission.Permission, int64, error)
}

func NewPermissionUseCase

func NewPermissionUseCase(
	db *sql.DB,
	transRepo trans.Repository,
	permissionRepo permission.Repository,
	dialectWrapper persistence.DialectWrapper,
) PermissionUseCase

type ResourceUseCase

type ResourceUseCase interface {
	Get(ctx context.Context, resourceId string) (*resource.Resource, error)
	Create(ctx context.Context, r *resource.Resource) (*resource.Resource, error)
	Update(ctx context.Context, r *resource.Resource) (*resource.Resource, error)
	Delete(ctx context.Context, resourceId string) error
	List(ctx context.Context, params *ListResourceQueryParams) ([]*resource.Resource, int64, error)
	CreateMenu(ctx context.Context, r *resource.Resource) (*resource.Resource, error)
	UpdateMenu(ctx context.Context, r *resource.Resource) (*resource.Resource, error)
}

func NewResourceUseCase

func NewResourceUseCase(
	db *sql.DB,
	transRepo trans.Repository,
	resourceRepo resource.Repository,
	permissionRepo permission.Repository,
	dialectWrapper persistence.DialectWrapper,
) ResourceUseCase

type RoleUseCase

type RoleUseCase interface {
	Get(ctx context.Context, roleId string) (*role.Role, error)
	Create(ctx context.Context, r *role.Role) (*role.Role, error)
	Update(ctx context.Context, r *role.Role) (*role.Role, error)
	Delete(ctx context.Context, roleId string) error
	List(ctx context.Context, params *ListRoleQueryParams) ([]*role.Role, int64, error)
	AddPermissions(ctx context.Context, roleId string, permissionIds []string) (*role.Role, error)
	RemovePermissions(ctx context.Context, roleId string, permissionIds []string) (*role.Role, error)
}

func NewRoleUseCase

func NewRoleUseCase(
	db *sql.DB,
	transRepo trans.Repository,
	roleRepo role.Repository,
	dialectWrapper persistence.DialectWrapper,
) RoleUseCase

Jump to

Keyboard shortcuts

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