Issue:
feat(roles): add support for roles list

- Add support to list all roles for a user. Roles which are equal and below given entity level should be listed
- Add support to list roles at a given entity level for a user.

Resolution:
<think>
PR Context:
- Title: feat(roles): add list support for roles
- Merged: 2024-09-02T07:08:19Z
- Files changed: 13 files
- Commits: 9 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [x] New feature
- [ ] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
Add support to 
- List available roles with info for the user
- List roles at entity level for the user

### Additional Changes

- [ ] This PR modifies the API contract
- [ ] This PR modifies the database schema
- [ ] This PR modifies application configuration/environment vari
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** feat(roles): add list support for roles (#5754)
Files to modify:


**crates/api_models/src/events/user_role.rs**
  Modify existing code

**crates/api_models/src/user.rs**
  Remove:
    - struct: pub::ListUsersInEntityResponse
    - struct: pub::MinimalRoleInfo

**crates/api_models/src/user_role.rs**
  Add:
    - struct: pub::ListUsersInEntityResponse

**crates/api_models/src/user_role/role.rs**
  Add:
    - struct: pub::RoleInfoResponseNew
    - struct: pub::ListRolesAtEntityLevelRequest
    - struct: pub::MinimalRoleInfo
    - enum: pub::RoleCheckType

**crates/diesel_models/src/query/role.rs**
  Add:
    - function: pub::generic_roles_list_for_org

**crates/router/src/core/user_role.rs**
  Modify existing code

**crates/router/src/core/user_role/role.rs**
  Add:
    - function: pub::list_roles_with_info
    - function: pub::list_roles_at_entity_level

**crates/router/src/db/kafka_store.rs**
  Add:
    - function: private::list_roles_for_org_by_parameters

**crates/router/src/db/role.rs**
  Add:
    - function: private::list_roles_for_org_by_parameters
    - function: private::list_roles_for_org_by_parameters

**crates/router/src/routes/app.rs**
  Modify existing code

**crates/router/src/routes/lock_utils.rs**
  Modify existing code

**crates/router/src/routes/user_role.rs**
  Add:
    - function: pub::list_roles_with_info
    - function: pub::list_invitable_roles_at_entity_level
    - function: pub::list_updatable_roles_at_entity_level

**crates/router_env/src/logger/types.rs**
  Modify existing code