@@ -8,6 +8,7 @@ import { UpdateUserGroup } from '../models/actions/update/UpdateUserGroup';
|
||||
import { UserGroup } from '../models/entities/UserGroup';
|
||||
import { ResponseEmpty } from '../models/responses/ResponseEmpty';
|
||||
import { ResponseUserGroup } from '../models/responses/ResponseUserGroup';
|
||||
import { ResponseUserGroupPermissions } from '../models/responses/ResponseUserGroupPermissions';
|
||||
import { PermissionController } from './PermissionController';
|
||||
|
||||
|
||||
@@ -41,6 +42,18 @@ export class UserGroupController {
|
||||
return this.userGroupsRepository.findOne({ id: id }, { relations: ["permissions"] });
|
||||
}
|
||||
|
||||
@Get('/:id/permissions')
|
||||
@Authorized("USERGROUP:GET")
|
||||
@ResponseSchema(ResponseUserGroupPermissions)
|
||||
@ResponseSchema(UserGroupNotFoundError, { statusCode: 404 })
|
||||
@OnUndefined(UserGroupNotFoundError)
|
||||
@OpenAPI({ description: 'Lists all permissions granted to the group as permission response objects.' })
|
||||
async getPermissions(@Param('id') id: number) {
|
||||
let group = await this.userGroupsRepository.findOne({ id: id }, { relations: ['permissions', 'permissions.principal'] })
|
||||
if (!group) { throw new UserGroupNotFoundError(); }
|
||||
return new ResponseUserGroupPermissions(group);
|
||||
}
|
||||
|
||||
@Post()
|
||||
@Authorized("USERGROUP:CREATE")
|
||||
@ResponseSchema(UserGroup)
|
||||
|
||||
Reference in New Issue
Block a user