ppob-backend/src/transaction/excel.controller.ts

59 lines
1.4 KiB
TypeScript

import {
Controller,
Get,
Res,
Header,
Post,
Body,
Request,
Param,
ParseUUIDPipe,
} from '@nestjs/common';
import { Response } from 'express';
import { TransactionService } from './transaction.service';
import { ExportTransactionDto } from './dto/export-transaction.dto';
@Controller({
path: 'excel',
version: '1',
})
export class ExcelController {
constructor(private transactionService: TransactionService) {}
@Post('history-user/export/:id')
@Header('Content-Type', 'text/xlsx')
async exportTransactionHistory(
@Param('id') id: string,
@Body() exportTransactionDto: ExportTransactionDto,
@Request() req,
@Res() res: Response,
) {
const result = await this.transactionService.exportDataExcel(
exportTransactionDto.dateStart,
exportTransactionDto.dateEnd,
id,
req.user,
);
res.download(`${result}`);
}
@Post('history-user/export-all')
@Header('Content-Type', 'text/xlsx')
async exportTransactionHistoryAll(
@Body() exportTransactionDto: ExportTransactionDto,
@Request() req,
@Res() res: Response,
) {
const result = await this.transactionService.exportDataExcelAll(
exportTransactionDto.dateStart,
exportTransactionDto.dateEnd,
exportTransactionDto.supplier,
exportTransactionDto.buyer,
req.user,
);
res.download(`${result}`);
}
}