25 lines
588 B
Go
25 lines
588 B
Go
package useCases
|
|
|
|
import (
|
|
"RenewCMS/internal/domain/contenttype"
|
|
"RenewCMS/internal/domain/role"
|
|
"RenewCMS/internal/domain/user"
|
|
)
|
|
|
|
type ListRolesUseCase struct {
|
|
roles role.Repository
|
|
viewer roleViewer
|
|
}
|
|
|
|
func NewListRolesUseCase(roles role.Repository, users user.Repository, contentTypes contenttype.Repository) *ListRolesUseCase {
|
|
return &ListRolesUseCase{roles: roles, viewer: roleViewer{roles, users, contentTypes}}
|
|
}
|
|
|
|
func (u *ListRolesUseCase) List() ([]RoleView, error) {
|
|
found, err := u.roles.List()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return u.viewer.views(found)
|
|
}
|