This commit is contained in:
@@ -10,6 +10,8 @@ import { PermissionEnum } from '../../users/enums/permission.enum';
|
|||||||
import { UserDec } from '../../../common/decorators/user.decorator';
|
import { UserDec } from '../../../common/decorators/user.decorator';
|
||||||
import { AuthGuards } from '../../../common/decorators/auth-guard.decorator';
|
import { AuthGuards } from '../../../common/decorators/auth-guard.decorator';
|
||||||
import { ITokenPayload } from '../../auth/interfaces/IToken-payload';
|
import { ITokenPayload } from '../../auth/interfaces/IToken-payload';
|
||||||
|
import { ParamDto } from '../../../common/DTO/param.dto';
|
||||||
|
import { User } from '../../users/entities/user.entity';
|
||||||
|
|
||||||
@AuthGuards()
|
@AuthGuards()
|
||||||
@AdminRoute()
|
@AdminRoute()
|
||||||
@@ -28,6 +30,14 @@ export class WorkspaceController {
|
|||||||
return this.workspaceService.findOneOrFail(id);
|
return this.workspaceService.findOneOrFail(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Get(':id/users')
|
||||||
|
@ApiOperation({ summary: 'Get workspace users' })
|
||||||
|
@ApiResponse({ status: 200, description: 'Got Workspace Users Successfully!' })
|
||||||
|
@ApiResponse({ status: 404, description: 'Workspace Not Found!' })
|
||||||
|
getWorkspaceUsers(@Param() paramDto: ParamDto): Promise<User[]> {
|
||||||
|
return this.workspaceService.getWorkspaceUsers(paramDto.id);
|
||||||
|
}
|
||||||
|
|
||||||
@Post()
|
@Post()
|
||||||
@PermissionsDec(PermissionEnum.WORKSPACE_CREATE)
|
@PermissionsDec(PermissionEnum.WORKSPACE_CREATE)
|
||||||
@ApiOperation({ summary: 'Create a new workspace' })
|
@ApiOperation({ summary: 'Create a new workspace' })
|
||||||
|
|||||||
@@ -71,4 +71,9 @@ export class WorkspaceService {
|
|||||||
}
|
}
|
||||||
return await this.workspaceRepository.findByUser(userId);
|
return await this.workspaceRepository.findByUser(userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async getWorkspaceUsers(workspaceId: string): Promise<User[]> {
|
||||||
|
const workspace = await this.findOneOrFail(workspaceId);
|
||||||
|
return workspace.users;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,7 +16,8 @@ export class WorkspaceRepository extends Repository<TMWorkspace> {
|
|||||||
'workspace',
|
'workspace',
|
||||||
'user.id',
|
'user.id',
|
||||||
'user.firstName',
|
'user.firstName',
|
||||||
'user.lastName'
|
'user.lastName',
|
||||||
|
'user.profilePic',
|
||||||
]).where('workspace.id = :workspaceId', {workspaceId})
|
]).where('workspace.id = :workspaceId', {workspaceId})
|
||||||
.getOne();
|
.getOne();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user