Feature: [admin] add an export list of all permissions associated to

each user
This commit is contained in:
2023-05-20 00:34:53 +02:00
parent 748e566c7e
commit b2e79b677b
5 changed files with 100 additions and 5 deletions

View File

@@ -123,6 +123,34 @@ final class UserRepository implements UserRepositoryInterface
}
}
public function findAllUserACLAsArray(): iterable
{
$sql = <<<'SQL'
SELECT
u.id,
u.username,
u.label,
u.enabled,
c.id AS center_id,
c.name AS center_name,
pg.id AS permissionsGroup_id,
pg.name AS permissionsGroup_name
FROM users u
LEFT JOIN user_groupcenter ON u.id = user_groupcenter.user_id
LEFT JOIN group_centers ON user_groupcenter.groupcenter_id = group_centers.id
LEFT JOIN centers c on group_centers.center_id = c.id
LEFT JOIN permission_groups pg on group_centers.permissionsgroup_id = pg.id
ORDER BY u.username, c.name, pg.name
SQL;
$query = $this->entityManager->getConnection()->executeQuery($sql);
foreach ($query->iterateAssociative() as $u) {
yield $u;
}
}
/**
* @param mixed|null $limit
* @param mixed|null $offset