mirror of
https://github.com/dadosfera/maestro.git
synced 2026-09-21 08:54:48 +00:00
Merge pull request #323 from dadosfera/feature/export-users-and-assets
Feature/export users and assets
This commit is contained in:
@@ -12,6 +12,7 @@ import {
|
||||
Post,
|
||||
Put,
|
||||
Query,
|
||||
Res,
|
||||
UseFilters,
|
||||
} from '@nestjs/common';
|
||||
import {
|
||||
@@ -24,6 +25,7 @@ import { PERMISSIONS_GROUPS } from 'src/authentication/permissions.enum';
|
||||
import {
|
||||
Authenticated,
|
||||
RequireAllPermissions,
|
||||
RequireSomePermission,
|
||||
} from 'src/decorators/authentication.decorator';
|
||||
import { Language } from 'src/decorators/language.decorator';
|
||||
import { ApiInternalOnlyController } from 'src/decorators/swagger.decorator';
|
||||
@@ -52,6 +54,7 @@ import {
|
||||
UpdateUserRes,
|
||||
} from './dtos/entities';
|
||||
import { UsersService } from './users.service';
|
||||
import { Response } from 'express';
|
||||
|
||||
@ApiInternalOnlyController()
|
||||
@ApiTags('Users')
|
||||
@@ -80,6 +83,26 @@ export class UsersController {
|
||||
return await this.userService.findAllUsersByCustomerId(user.customer_id);
|
||||
}
|
||||
|
||||
@Get('/download')
|
||||
@RequireSomePermission(PERMISSIONS_GROUPS.USERS.permissions.ADMIN)
|
||||
async downloadUsersInCsv(
|
||||
@User() user: RequestUser,
|
||||
@Language() language: LanguageEnum,
|
||||
@Res() res: Response
|
||||
) {
|
||||
this.logger.info('downloadUsersInCsv');
|
||||
this.userService.setLanguage(language);
|
||||
const {
|
||||
file,
|
||||
filename
|
||||
} = await this.userService.downloadUsersInCsv(user.customer_id);
|
||||
|
||||
res.setHeader('Content-Disposition', `attachment; filename="${filename}"`);
|
||||
res.setHeader('Content-Type', 'text/csv');
|
||||
|
||||
res.end(file);
|
||||
}
|
||||
|
||||
@Get('hierarchies')
|
||||
@RequireAllPermissions(PERMISSIONS_GROUPS.USERS.permissions.ADMIN)
|
||||
@ApiOkResponse({ type: GetAllHierarchiesRes })
|
||||
|
||||
Reference in New Issue
Block a user