This commit is contained in:
2024-07-19 17:04:42 +02:00
commit 5e0d0ec69f
71 changed files with 3316 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
package sql
import (
"github.com/google/uuid"
"mangezmieux-backend/internal/acl/model"
model2 "mangezmieux-backend/internal/model"
)
type Dao interface {
//Role
GetRole(id uuid.UUID) (*model.Role, error)
GetRoleByName(name string) (*model.Role, error)
AddRole(roleName string, metadata model2.Metadata) (*model.Role, error)
DeleteRole(id uuid.UUID) error
GetAllRole() ([]*model.Role, error)
//Resource
AddResource(resourceName string, metadata model2.Metadata) (*model.Resource, error)
DeleteResource(id uuid.UUID) error
GetResource(id uuid.UUID) (*model.Resource, error)
GetResourceByName(name string) (*model.Resource, error)
GetAllResource() ([]*model.Resource, error)
//RoleVerbResource
GetRoleVerbResource(id uuid.UUID) (*model.RoleVerbResource, error)
GetRoleVerbResourceByRoleResourceAndVerb(roleId, resourceId uuid.UUID, verb string) (*model.RoleVerbResource, error)
GetRoleVerbResourceByRoleResource(roleId, resourceId uuid.UUID) ([]*model.RoleVerbResource, error)
GetRoleVerbResourceByRole(roleId uuid.UUID) ([]*model.RoleVerbResource, error)
AddRoleVerbResource(roleId, resourceId uuid.UUID, verb string, metadata model2.Metadata) (*model.RoleVerbResource, error)
DeleteRoleVerbResource(id uuid.UUID) error
//UserRole
GetUserRole(id uuid.UUID) (*model.UserRole, error)
GetUserRoleByUserAndRole(userId, roleId uuid.UUID) (*model.UserRole, error)
GetUserRoleByUser(userId uuid.UUID) ([]*model.UserRole, error)
GetUserRoleByRole(role uuid.UUID) ([]*model.UserRole, error)
AddUserRole(userId, roleId uuid.UUID, metadata model2.Metadata) (*model.UserRole, error)
DeleteUserRole(id uuid.UUID) error
}