import { PayWithBankTransferService } from '../Services/PayWithBankTransferService'; import { CreateOrderRequestBuilder } from '../RequestDTOs/CreateOrderRequest'; import { QueryOrderResultBuilder } from '../RequestDTOs/QueryOrderResultRequest'; import { ErrorResponse } from '../ResponseDTOs/ErrorResponse'; import { BuildPayload } from '../RequestDTOs/PaymentRequest'; export class BankTransferServiceManager { private payWithBankTransferService: PayWithBankTransferService; constructor( private appId: string, private countryCode: string, privateKey: string, isTest: boolean ) { this.payWithBankTransferService = new PayWithBankTransferService( appId, countryCode, privateKey, isTest ); } async createOrder(createOrderRequestBuilder: CreateOrderRequestBuilder) { try { const createOrderResponse = await this.payWithBankTransferService.createOrder(createOrderRequestBuilder); console.log('Create Order Response:', createOrderResponse); return createOrderResponse; } catch (error) { console.error('Error creating order:', error); } } async fetchOrderStatus(builder: BuildPayload) { try { const fetchOrderStatusResponse = await this.payWithBankTransferService.fetchOrderStatus(builder); console.log('Create Order Response:', fetchOrderStatusResponse); return fetchOrderStatusResponse; } catch (error) { console.error('Error creating order:', error); } } }