SdkPaymentTransactionData.fromJson constructor
SdkPaymentTransactionData.fromJson(
- Map<String, dynamic> json
)
Implementation
factory SdkPaymentTransactionData.fromJson(Map<String, dynamic> json) {
Map<String, dynamic>? asMap(dynamic v) =>
v is Map<String, dynamic> ? v : (v is Map ? Map<String, dynamic>.from(v) : null);
final billing = asMap(json['billing_address']);
final shipping = asMap(json['shipping_address']);
final customer = asMap(json['customer_details']);
final pmd = asMap(json['payment_method_data']);
return SdkPaymentTransactionData(
raw: Map<String, dynamic>.from(json),
action: json['action']?.toString(),
status: json['status']?.toString(),
orderStatus: json['order_status']?.toString(),
mOrderId: json['m_order_id']?.toString(),
pOrderId: json['p_order_id']?.toString(),
pRequestId: json['p_request_id']?.toString(),
pspRefId: json['psp_ref_id']?.toString(),
transactionId: json['transaction_id']?.toString(),
isLive: _parseBool(json['is_live']),
terminalLabel: json['terminal_label']?.toString(),
remark: json['remark']?.toString(),
reason: json['reason']?.toString(),
currency: json['currency']?.toString(),
amount: json['amount']?.toString(),
channel: json['channel']?.toString(),
channelId: json['channel_id']?.toString(),
shippingFee: json['shipping_fee']?.toString(),
convenienceFee: json['convenience_fee']?.toString(),
customerDetails: customer != null
? SdkPaymentCustomerSnapshot.fromJson(customer)
: null,
billingAddress: billing != null
? SdkPaymentServiceAddress.fromJson(billing)
: null,
shippingAddress: shipping != null
? SdkPaymentServiceAddress.fromJson(shipping)
: null,
ipCountry: json['ip_country']?.toString(),
psp: json['psp']?.toString(),
paymentMethod: json['payment_method']?.toString(),
mPaymentToken: json['m_payment_token']?.toString(),
transactionTime: json['transaction_time']?.toString(),
paymentMethodData: pmd != null
? SdkPaymentMethodDataSlice.fromJson(pmd)
: null,
apmName: json['apm_name']?.toString(),
apmIdentifier: json['apm_identifier']?.toString(),
subMerchantIdentifier: json['sub_merchant_identifier']?.toString(),
parameters: _parseSlotList(json['parameters']),
customData: _parseSlotList(json['custom_data']),
fraud: _parseBool(json['fraud']),
type: json['type']?.toString(),
redirectUrl: json['redirect_url']?.toString(),
);
}