Files
bssapp/svc/repository/permission_repository.go
2026-02-11 17:46:22 +03:00

34 lines
665 B
Go

// repository/permission_repository.go
package repository
import "database/sql"
type PermissionRepository struct {
DB *sql.DB
}
func NewPermissionRepository(db *sql.DB) *PermissionRepository {
return &PermissionRepository{DB: db}
}
func (r *PermissionRepository) GetPermissionsByRoleID(roleID int64) ([]string, error) {
rows, err := r.DB.Query(`
SELECT route
FROM mkdf_rol_per
WHERE role_id = $1 AND can_access = true
`, roleID)
if err != nil {
return nil, err
}
defer rows.Close()
perms := []string{}
for rows.Next() {
var route string
if err := rows.Scan(&route); err == nil {
perms = append(perms, route)
}
}
return perms, nil
}