Merge branch 'development' into 'devops-staging'
fix: one way pembayaran See merge request empatnusabangsa/ppob/ppob-backend!109
This commit is contained in:
		| @@ -437,7 +437,7 @@ export class TransactionService { | |||||||
|     currentUser: any, |     currentUser: any, | ||||||
|   ) { |   ) { | ||||||
|     let status; |     let status; | ||||||
|     let amount = 0; |     const amount = 0; | ||||||
|     //GET USER DATA |     //GET USER DATA | ||||||
|     const userData = await this.userService.findByUsername( |     const userData = await this.userService.findByUsername( | ||||||
|       currentUser.username, |       currentUser.username, | ||||||
| @@ -591,6 +591,7 @@ export class TransactionService { | |||||||
|     } catch (e) { |     } catch (e) { | ||||||
|       throw e; |       throw e; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     return { |     return { | ||||||
|       trx_id: trxId, |       trx_id: trxId, | ||||||
|       client_trx_id: orderTransactionDto.trx_id, |       client_trx_id: orderTransactionDto.trx_id, | ||||||
| @@ -632,63 +633,67 @@ export class TransactionService { | |||||||
|   ) { |   ) { | ||||||
|     const transactionData = await this.findApprovalDepositReturn(id); |     const transactionData = await this.findApprovalDepositReturn(id); | ||||||
|  |  | ||||||
|     const coaSenderWallet = await this.coaService.findByUser( |     // const coaSenderWallet = await this.coaService.findByUser( | ||||||
|       transactionData.user, |     //   transactionData.user, | ||||||
|       coaType.WALLET, |     //   coaType.WALLET, | ||||||
|     ); |     // ); | ||||||
|  |     // | ||||||
|  |     // const coaAP = await this.coaService.findByUserWithRelated( | ||||||
|  |     //   transactionData.user, | ||||||
|  |     //   userData.userId, | ||||||
|  |     //   coaType.ACCOUNT_PAYABLE, | ||||||
|  |     // ); | ||||||
|  |     // | ||||||
|  |     // const coaReceiverWallet = await this.coaService.findByUser( | ||||||
|  |     //   transactionData.user, | ||||||
|  |     //   coaType.WALLET, | ||||||
|  |     // ); | ||||||
|  |     // | ||||||
|  |     // const coaAR = await this.coaService.findByUserWithRelated( | ||||||
|  |     //   transactionData.user, | ||||||
|  |     //   userData.userId, | ||||||
|  |     //   coaType.ACCOUNT_RECEIVABLE, | ||||||
|  |     // ); | ||||||
|  |  | ||||||
|     const coaAP = await this.coaService.findByUserWithRelated( |     const userFind = await this.userService.findByUsername(userData.username); | ||||||
|       transactionData.user, |  | ||||||
|       userData.userId, |  | ||||||
|       coaType.ACCOUNT_PAYABLE, |  | ||||||
|     ); |  | ||||||
|  |  | ||||||
|     const coaReceiverWallet = await this.coaService.findByUser( |  | ||||||
|       transactionData.user, |  | ||||||
|       coaType.WALLET, |  | ||||||
|     ); |  | ||||||
|  |  | ||||||
|     const coaAR = await this.coaService.findByUserWithRelated( |  | ||||||
|       transactionData.user, |  | ||||||
|       userData.userId, |  | ||||||
|       coaType.ACCOUNT_RECEIVABLE, |  | ||||||
|     ); |  | ||||||
|  |  | ||||||
|     try { |     try { | ||||||
|       await this.connection.transaction(async (manager) => { |       await this.connection.transaction(async (manager) => { | ||||||
|         transactionData.status = |         if (statusApproval === 'accept') { | ||||||
|           statusApproval === 'accept' |           if (userFind.roles.name != 'Admin') { | ||||||
|             ? statusTransaction.APPROVED |             transactionData.user_destination = userFind.superior.id; | ||||||
|             : statusTransaction.REJECTED; |           } else { | ||||||
|  |             transactionData.status = statusTransaction.APPROVED; | ||||||
|  |           } | ||||||
|  |           // await this.accountingTransaction({ | ||||||
|  |           //   createTransaction: false, | ||||||
|  |           //   transactionalEntityManager: manager, | ||||||
|  |           //   transaction: transactionData, | ||||||
|  |           //   amount: transactionData.amount, | ||||||
|  |           //   journals: [ | ||||||
|  |           //     { | ||||||
|  |           //       coa_id: coaSenderWallet.id, | ||||||
|  |           //       credit: transactionData.amount, | ||||||
|  |           //     }, | ||||||
|  |           //     { | ||||||
|  |           //       coa_id: coaReceiverWallet.id, | ||||||
|  |           //       debit: transactionData.amount, | ||||||
|  |           //     }, | ||||||
|  |           //     { | ||||||
|  |           //       coa_id: coaAR.id, | ||||||
|  |           //       credit: transactionData.amount, | ||||||
|  |           //     }, | ||||||
|  |           //     { | ||||||
|  |           //       coa_id: coaAP.id, | ||||||
|  |           //       debit: transactionData.amount, | ||||||
|  |           //     }, | ||||||
|  |           //   ], | ||||||
|  |           // }); | ||||||
|  |         } else { | ||||||
|  |           transactionData.status = statusTransaction.REJECTED; | ||||||
|  |         } | ||||||
|  |  | ||||||
|         await manager.save(transactionData); |         await manager.save(transactionData); | ||||||
|  |  | ||||||
|         if (statusApproval === 'accept') { |  | ||||||
|           await this.accountingTransaction({ |  | ||||||
|             createTransaction: false, |  | ||||||
|             transactionalEntityManager: manager, |  | ||||||
|             transaction: transactionData, |  | ||||||
|             amount: transactionData.amount, |  | ||||||
|             journals: [ |  | ||||||
|               { |  | ||||||
|                 coa_id: coaSenderWallet.id, |  | ||||||
|                 credit: transactionData.amount, |  | ||||||
|               }, |  | ||||||
|               { |  | ||||||
|                 coa_id: coaReceiverWallet.id, |  | ||||||
|                 debit: transactionData.amount, |  | ||||||
|               }, |  | ||||||
|               { |  | ||||||
|                 coa_id: coaAR.id, |  | ||||||
|                 credit: transactionData.amount, |  | ||||||
|               }, |  | ||||||
|               { |  | ||||||
|                 coa_id: coaAP.id, |  | ||||||
|                 debit: transactionData.amount, |  | ||||||
|               }, |  | ||||||
|             ], |  | ||||||
|           }); |  | ||||||
|         } |  | ||||||
|       }); |       }); | ||||||
|  |  | ||||||
|       return transactionData; |       return transactionData; | ||||||
| @@ -722,7 +727,6 @@ export class TransactionService { | |||||||
|           statusApproval === 'Accept' |           statusApproval === 'Accept' | ||||||
|             ? statusTransaction.APPROVED |             ? statusTransaction.APPROVED | ||||||
|             : statusTransaction.REJECTED; |             : statusTransaction.REJECTED; | ||||||
|  |  | ||||||
|         await manager.save(transactionData); |         await manager.save(transactionData); | ||||||
|  |  | ||||||
|         await this.accountingTransaction({ |         await this.accountingTransaction({ | ||||||
| @@ -764,7 +768,7 @@ export class TransactionService { | |||||||
|  |  | ||||||
|     dataTransaction.status = statusTransaction.FAILED; |     dataTransaction.status = statusTransaction.FAILED; | ||||||
|     dataTransaction.callback_json = callback; |     dataTransaction.callback_json = callback; | ||||||
|     dataTransaction.failed_reason = failedReason[0] + ', ' + failedReason[1]; |     dataTransaction.failed_reason = `${failedReason[0]}, ${failedReason[1]}`; | ||||||
|  |  | ||||||
|     const userData = await this.userService.findExist(dataTransaction.user); |     const userData = await this.userService.findExist(dataTransaction.user); | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user