parent
9b47f3ab05
commit
578f9301db
@ -26,7 +26,7 @@ export class UserController {
|
|||||||
@Get()
|
@Get()
|
||||||
@Authorized("USER:GET")
|
@Authorized("USER:GET")
|
||||||
@ResponseSchema(User, { isArray: true })
|
@ResponseSchema(User, { isArray: true })
|
||||||
@OpenAPI({ description: 'Lists all users.' })
|
@OpenAPI({ description: 'Lists all users. <br> This includes their groups and permissions directly granted to them (if existing/associated).' })
|
||||||
async getAll() {
|
async getAll() {
|
||||||
let responseUsers: ResponseUser[] = new Array<ResponseUser>();
|
let responseUsers: ResponseUser[] = new Array<ResponseUser>();
|
||||||
const users = await this.userRepository.find({ relations: ['permissions', 'groups'] });
|
const users = await this.userRepository.find({ relations: ['permissions', 'groups'] });
|
||||||
@ -41,7 +41,7 @@ export class UserController {
|
|||||||
@ResponseSchema(User)
|
@ResponseSchema(User)
|
||||||
@ResponseSchema(UserNotFoundError, { statusCode: 404 })
|
@ResponseSchema(UserNotFoundError, { statusCode: 404 })
|
||||||
@OnUndefined(UserNotFoundError)
|
@OnUndefined(UserNotFoundError)
|
||||||
@OpenAPI({ description: 'Returns a user of a specified id (if it exists)' })
|
@OpenAPI({ description: 'Lists all information about the user whose id got provided. <br> Please remember that only permissions granted directly to the user will show up here, not permissions inherited from groups.' })
|
||||||
async getOne(@Param('id') id: number) {
|
async getOne(@Param('id') id: number) {
|
||||||
let user = await this.userRepository.findOne({ id: id }, { relations: ['permissions', 'groups'] })
|
let user = await this.userRepository.findOne({ id: id }, { relations: ['permissions', 'groups'] })
|
||||||
if (!user) { throw new UserNotFoundError(); }
|
if (!user) { throw new UserNotFoundError(); }
|
||||||
@ -52,7 +52,7 @@ export class UserController {
|
|||||||
@Authorized("USER:CREATE")
|
@Authorized("USER:CREATE")
|
||||||
@ResponseSchema(User)
|
@ResponseSchema(User)
|
||||||
@ResponseSchema(UserGroupNotFoundError)
|
@ResponseSchema(UserGroupNotFoundError)
|
||||||
@OpenAPI({ description: 'Create a new user object (id will be generated automagicly).' })
|
@OpenAPI({ description: 'Create a new user. <br> If you want to grant permissions to the user you have to create them seperately by posting to /api/permissions after creating the user.' })
|
||||||
async post(@Body({ validate: true }) createUser: CreateUser) {
|
async post(@Body({ validate: true }) createUser: CreateUser) {
|
||||||
let user;
|
let user;
|
||||||
try {
|
try {
|
||||||
@ -70,7 +70,7 @@ export class UserController {
|
|||||||
@ResponseSchema(User)
|
@ResponseSchema(User)
|
||||||
@ResponseSchema(UserNotFoundError, { statusCode: 404 })
|
@ResponseSchema(UserNotFoundError, { statusCode: 404 })
|
||||||
@ResponseSchema(UserIdsNotMatchingError, { statusCode: 406 })
|
@ResponseSchema(UserIdsNotMatchingError, { statusCode: 406 })
|
||||||
@OpenAPI({ description: "Update a user object (id can't be changed)." })
|
@OpenAPI({ description: "Update the user whose id you provided. <br> To change the permissions directly granted to the user please use /api/permissions instead. <br> Please remember that id's can't be changed." })
|
||||||
async put(@Param('id') id: number, @Body({ validate: true }) updateUser: UpdateUser) {
|
async put(@Param('id') id: number, @Body({ validate: true }) updateUser: UpdateUser) {
|
||||||
let oldUser = await this.userRepository.findOne({ id: id });
|
let oldUser = await this.userRepository.findOne({ id: id });
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ export class UserController {
|
|||||||
@ResponseSchema(User)
|
@ResponseSchema(User)
|
||||||
@ResponseSchema(ResponseEmpty, { statusCode: 204 })
|
@ResponseSchema(ResponseEmpty, { statusCode: 204 })
|
||||||
@OnUndefined(204)
|
@OnUndefined(204)
|
||||||
@OpenAPI({ description: 'Delete a user runner (if it exists).' })
|
@OpenAPI({ description: 'Delete the user whose id you provided. <br> If there are any permissions directly granted to the user they will get deleted as well. <br> If no user with this id exists it will just return 204(no content).' })
|
||||||
async remove(@Param("id") id: number, @QueryParam("force") force: boolean) {
|
async remove(@Param("id") id: number, @QueryParam("force") force: boolean) {
|
||||||
let user = await this.userRepository.findOne({ id: id });
|
let user = await this.userRepository.findOne({ id: id });
|
||||||
if (!user) { return null; }
|
if (!user) { return null; }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user