palmpaywrappersdk
Version:
PalmPay Wrapper Sdk
52 lines (42 loc) • 1.66 kB
text/typescript
import { PayWithCodeService } from '../Services/PayWithCodeService';
import { CreateOrderRequestBuilder } from '../RequestDTOs/CreateOrderRequest';
import { QueryOrderResultBuilder } from '../RequestDTOs/QueryOrderResultRequest';
import { ErrorResponse } from '../ResponseDTOs/ErrorResponse';
import { PayInCreateOrderResponse } from '../ResponseDTOs/PayInCreateOrderResponseOld';
export class PayWithCodeServiceManager {
private payWithCodeService: PayWithCodeService;
constructor(
private appId: string,
private countryCode: string,
privateKey: string,
isTest: boolean
) {
this.payWithCodeService = new PayWithCodeService(
appId,
countryCode,
privateKey,
isTest
);
}
async createOrder(createOrderRequestBuilder: CreateOrderRequestBuilder) {
try {
// Create order status
const createOrderResponse = await this.payWithCodeService.createOrder(createOrderRequestBuilder);
console.log("OrderResponse Manager: ", createOrderResponse);
return createOrderResponse;
} catch (error) {
console.error('Error creating order:', error);
}
}
async fetchOrderStatus(builder: QueryOrderResultBuilder) {
try {
// Fetch order status
const fetchOrderStatusResponseCode = await this.payWithCodeService.fetchOrderStatus(builder);
console.log("fetchOrderStatusResponseCode: ", fetchOrderStatusResponseCode);
return fetchOrderStatusResponseCode; // Return the original response if needed
} catch (error) {
console.error('Error fetching order status:', error);
throw error; // Rethrow the error to propagate it
}
}
}