From 6f294577209e217bfe5b6c2c7bcad3f0ac41ff45 Mon Sep 17 00:00:00 2001 From: ilham Date: Tue, 24 May 2022 00:42:58 +0700 Subject: [PATCH] fix: ppob callback --- src/transaction/entities/check-bill-history.entity.ts | 3 +++ src/transaction/transaction.controller.ts | 9 +++++++-- src/transaction/transaction.service.ts | 8 ++++++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/transaction/entities/check-bill-history.entity.ts b/src/transaction/entities/check-bill-history.entity.ts index 830c994..c51d435 100644 --- a/src/transaction/entities/check-bill-history.entity.ts +++ b/src/transaction/entities/check-bill-history.entity.ts @@ -43,6 +43,9 @@ export class CheckBillHistory extends BaseModel { @Column() product_code: string; + @Column() + status: string; + @ManyToOne(() => ProductHistoryPrice, (product) => product.id) product_price: ProductHistoryPrice; } diff --git a/src/transaction/transaction.controller.ts b/src/transaction/transaction.controller.ts index b8430e2..0ebaf40 100644 --- a/src/transaction/transaction.controller.ts +++ b/src/transaction/transaction.controller.ts @@ -158,14 +158,19 @@ export class TransactionController { @Get('check-bill-history') async getCheckBillHistory( @Param('id') id: string, + @Query('page') page: number, + @Query('pageSize') pageSize: number, @Request() req, ) { - const data = await this.transactionService.findAll( + const [data, count] = await this.transactionService.findAll( req.user.userId, + page, + pageSize, ); return { - ...data, + data, + count, statusCode: HttpStatus.OK, message: 'success', }; diff --git a/src/transaction/transaction.service.ts b/src/transaction/transaction.service.ts index 630e9eb..604762c 100644 --- a/src/transaction/transaction.service.ts +++ b/src/transaction/transaction.service.ts @@ -887,6 +887,7 @@ export class TransactionService { product_code: orderTransactionDto.productCode, partner_trx_id: orderTransactionDto.trx_id, product_price: product_price, + status: 'PENDING', }); } } catch (e) { @@ -1399,9 +1400,9 @@ export class TransactionService { } } - async findAll(user: string) { + async findAll(user: string, page, pageSize?) { try { - return this.checkBillHistoryRepository.find({ + return await this.checkBillHistoryRepository.findAndCount({ where: { user: user, }, @@ -1414,6 +1415,8 @@ export class TransactionService { 'partner_trx_id', 'createdAt', ], + skip: page * (pageSize || 10), + take: pageSize || 10, order: { createdAt: 'DESC', } @@ -1859,6 +1862,7 @@ export class TransactionService { { amount: amount + product_price.partner_fee + product_price.mark_up_price, admin_price: admin, + status: status ? 'SUCCESS' : 'FAILED', }, );