import PaymentAdapterInterface from './PaymentAdapterInterface'; import Payment from '../entity/Payment'; import CustomerAdapterInterface from '../../Customer/adapter/CustomerAdapterInterface'; import Customer from '../../Customer/entity/Customer'; import PaymentMethod from '../enums/PaymentMethods'; import PaymentStatus from '../enums/PaymentStatus'; import PromoCode from '../../PromoCode/entity/PromoCode'; export default class PaymentAdapter implements PaymentAdapterInterface { // private customerAdapter: CustomerAdapterInterface; // // constructor(customerAdapter: CustomerAdapterInterface) { // this.customerAdapter = customerAdapter; // } adapt(json: any, instance: Payment): Payment { instance.id = json.id; // instance.customer = json.customer; // instance.amount_paid = json.amount_paid; // instance.original_amount = json.original_amount; // instance.payment_method = json.payment_method; // instance.payment_status = json.payment_status; // instance.charge_id = json.charge_id; // instance.authorization_limit_date = json.authorization_limit_date; // instance.promo_code = json.promo_code; return instance; } prepare(instance: Payment): any { let object = { id: instance.id, }; return object; } transformToEntity(json: any): Payment { return this.adapt(json, new Payment()); } transformToPayload(instance: Payment): any { return this.prepare(instance); } }